def api_store_thumbnail(self, logger=None): """ Store thumbnails using remote API """ _uuid = self.document_revision.uuid file_content = None thumbnail_path = None e = None try: # file_content = document_api_client.proxy.retrive_thumbnails( # _uuid, # self.number # ) thumbnail_path = document_api_client.proxy.get_thumbnail_path( _uuid, self.number ) except CommunicationError, e: document_api_client.connect() if logger: logger.error(e)
def api_process_document(self, logger=None): status = {} e = None try: if logger: logger.info("Start processing DocumentRevision: %s" % repr({ "uuid": self.uuid, "pk": self.pk, "size": self.get_size(), "name": unicode(self.file_data) })) status = document_api_client.proxy.upload_document( open(self.file_data.path, "r").read(), self.uuid ) if logger: logger.info("Upload DocumentRevision to Mayan done: %s" % repr(status)) pages_count = status.get("pages", 0) self._pages_count = pages_count pi = 0 for i in xrange(1, pages_count + 1): self.pages.create(number=i) pi += 1 ti = 0 for page in self.pages.iterator(): page.api_store_thumbnail(logger) ti += 1 if logger: logger.info("Processing DocumentRevision: %s" % repr({ "created_pages": pi, "thumbnails_retrived": ti })) except CommunicationError, e: connection_success = document_api_client.connect() if logger: logger.error(u"api_process_document: CommunicationError: %s" % (unicode(e))) if connection_success: raise e # it will retry task else: logger.error(u"Pyro connection fail")