Mercurial > hg > purlService
view restService/restService.py @ 13:a1577a498c85
metadata redirector added
author | dwinter |
---|---|
date | Tue, 06 Nov 2012 08:50:24 +0100 |
parents | 0287aed01f2b |
children | a2bcca6539fd |
line wrap: on
line source
''' Created on 31.10.2012 @author: dwinter ''' import web import managePurls.manageIndexMetaPURLs as manageIndexMetaPURLs from redirector import redirector import logging from searcher import searcher urls = ( '/purl/(.+)','purl', '/docuview/(.+)','redirector', '/search','searcher', '/indexMeta/(.+)','indexMeta', ) app = web.application(urls, globals()) TEXTER_URL="http://digilib.mpiwg-berlin.mpg.de/digitallibrary/servlet/Texter?fn=%s" class indexMeta: def __init__(self): self.md=manageIndexMetaPURLs.IndexMetaPURLManager() def GET(self,purl): path,validity=self.md.getPathValidity(purl) if path is None: raise web.notfound("Cannnot find a URL to this path") if validity is manageIndexMetaPURLs.PERM_NON_VALID: raise web.notfound("PURL NON VALID ANYMORE!") if validity is manageIndexMetaPURLs.TEMP_NON_VALID: return web.notfound("PURL currently not VALID try later!") raise web.redirect(TEXTER_URL%path) def __init__(self): self.md=manageIndexMetaPURLs.IndexMetaPURLManager() class purl: def __init__(self): self.md=manageIndexMetaPURLs.IndexMetaPURLManager() def GET(self,purl): path,validity=self.md.getPathValidity(purl) if path is None: raise web.notfound("Cannnot find a URL to this path") if validity is manageIndexMetaPURLs.PERM_NON_VALID: raise web.notfound("PURL NON VALID ANYMORE!") if validity is manageIndexMetaPURLs.TEMP_NON_VALID: return web.notfound("PURL currently not VALID try later!") return path def __init__(self): self.md=manageIndexMetaPURLs.IndexMetaPURLManager() if __name__ == "__main__": app.run()