Esempio n. 1
0
 def get_resource(self, path):
     domain = os.environ['SERVER_NAME']
     resource = Resource.find(path=path,
                              generation=self.settings.version,
                              domain=domain)
     if resource is None:
         content = self.fetch_resource_content(path)
         created_on = self.fetch_file_timestamp(path)
         resource = Resource(path=path,
                             content=content,
                             generation=self.settings.version)
         if created_on is not None:
             resource.created_on = created_on
         try:
             length = len(resource.content)
         except:
             length = 0
         if length > 0:
             log_event("Caching resource <code>%s</code> (%d bytes)" %
                       (path, length))
         logging.debug("VFS: caching resource %s (%d bytes) for %s", path,
                       length, domain)
         resource.domain = domain
         if content != None:
             resource.save()
     try:
         length = len(resource.content)
     except:
         length = 0
     logging.debug("VFS: serving resource %s (%d bytes) for %s", path,
                   length, domain)
     return resource