Esempio n. 1
0
 def upload_sample_documents(self):
     repo = CmisClient(self.settings["cmis_url"], self.settings["cmis_username"], self.settings["cmis_password"]).defaultRepository
     try:
         repo.getObjectByPath(self.settings["capture_folder"])
         self.LOGGER.debug("Capture folder available")
     except:
         self.LOGGER.debug("CMIS folder not present. Uploading demo files.")
         parent_folder_name = "/".join(self.settings["capture_folder"].split("/")[:-1])
         parent_folder = repo.getObjectByPath(parent_folder_name)
         demoFolder = repo.createFolder(parent_folder, self.settings["capture_folder"].split("/")[-1])
         demoFolder.createDocument('Invoice01.pdf', contentFile=open("test/data-barcode-skeleton/doc001/Invoice01.pdf"))
         demoFolder.createDocument('Invoice02.pdf', contentFile=open("test/data-barcode-skeleton/doc002/Invoice02.pdf"))
Esempio n. 2
0
 def download_from_cmis(self):
     if "cmis_url" not in self.settings:
         self.LOGGER.warn("No CMIS repo specified. Processing documents is datadir.")
         return
     repo = CmisClient(self.settings["cmis_url"], self.settings["cmis_username"], self.settings["cmis_password"]).defaultRepository
     for document in repo.getObjectByPath(self.settings["capture_folder"]).getChildren():
         document_name = document.getName()
         docid = document.getObjectId()
         docid = docid.replace("workspace://SpacesStore/", "")
         # remove version identifier ;1.0
         if ";" in docid:
             docid = docid.split(";")[0]
         document_workdir = os.path.join(self.settings["datadir"], docid)
         if not os.path.exists(document_workdir):
             os.makedirs(document_workdir)
         local_document_path = os.path.join(document_workdir, document_name)
         if os.path.exists(local_document_path):
             self.LOGGER.debug("{} exists. skipping download from CMIS".format(local_document_path))
         else:
             self.LOGGER.debug("downloading {}".format(document_name))
             with open(local_document_path, "w") as fh:
                 fh.write(document.getContentStream().read())