@Override public CMSContentSummary getDocument(String id) { Session session = getSession(); if (session != null) { Document document = null; if (id != null && !id.isEmpty()) { document = (Document) session.getObject(id); } if (document.getParents() != null && document.getParents().size() > 0) { return this.transform(document, document.getParents().get(0)); } else { return this.transform(document, null); } } return new DocumentSummary(); }
@Override public Collection<String> getDocumentPathsById( String id ) { CmisObject obj = session.getObject(id); // check that object exist if (obj instanceof Folder) { return Collections.singletonList(((Folder)obj).getPath()); } if (obj instanceof org.apache.chemistry.opencmis.client.api.Document) { org.apache.chemistry.opencmis.client.api.Document doc = (org.apache.chemistry.opencmis.client.api.Document)obj; List<Folder> parents = doc.getParents(); List<String> paths = new ArrayList<String>(parents.size()); for (Folder parent : doc.getParents()) { paths.add(parent.getPath() + "/" + doc.getName()); } return paths; } return Collections.emptyList(); }
public Object read(ObjectInputStream os) throws IOException, ClassNotFoundException { String objectId = os.readUTF(); String canonicalName = os.readUTF(); Session session = getRepositorySession(user, password, url, repository); try { org.apache.chemistry.opencmis.client.api.Document doc = (org.apache.chemistry.opencmis.client.api.Document) findObjectForId(session, objectId); Document document = (Document) Class.forName(canonicalName).newInstance(); document.setIdentifier(objectId); document.setName(doc.getName()); document.addAttribute("location", getFolderName(doc.getParents()) + getPathAsString(doc.getPaths())); if (doc.getContentStream() != null) { ContentStream stream = doc.getContentStream(); document.setContent(IOUtils.toByteArray(stream.getStream())); document.addAttribute("updated", "false"); document.addAttribute("type", stream.getMimeType()); } return document; } catch(Exception e) { throw new RuntimeException("Cannot read document from CMIS", e); } finally { session.clear(); } }
document.setLastModified(doc.getLastModificationDate().getTime()); document.setSize(doc.getContentStreamLength()); document.addAttribute("location", getFolderName(doc.getParents()) + getPathAsString(doc.getPaths())); if (doc.getContentStream() != null && contentUrl == null) { ContentStream stream = doc.getContentStream();
} else { doc = new DocumentSummary(object.getName(), object.getId(), null); Folder parent = ((Document) object).getParents().get(0); // for now,
List<Folder> parents = result.getParents(SELECT_ALL_NO_CACHE_OC); boolean found = false; for (Folder folder : parents) {
addResult(assertEquals(1, count, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should have one parent but has " + parents + " parents!"); addResult(assertEquals(1, parents, null, f)); addResult(assertEquals(0, count, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should not have no parents but has " + parents + " parents!"); addResult(assertEquals(0, parents, null, f)); addResult(assertEquals(1, count, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should have one parent but has " + parents + " parents!"); addResult(assertEquals(1, parents, null, f));
List<Folder> parents = doc.getParents(); ArrayList<String> parentIds = new ArrayList<String>(); for (Folder f : parents) {
addResult(assertEquals(0, count2, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should have one parent but has " + parents + " parents!"); addResult(assertEquals(1, parents, null, f)); addResult(assertEquals(1, count2, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should have two parents but has " + parents + " parents!"); addResult(assertEquals(2, parents, null, f)); addResult(assertEquals(0, count2, null, f)); parents = doc1.getParents().size(); f = createResult(FAILURE, "Document should have one parent but has " + parents + " parents!"); addResult(assertEquals(1, parents, null, f));
(org.apache.chemistry.opencmis.client.api.Document) findObjectForId(session, document.getIdentifier()); document.setName(doc.getName()); document.addAttribute("location", getFolderName(doc.getParents()) + getPathAsString(doc.getPaths())); if (doc.getContentStream() != null) { ContentStream stream = doc.getContentStream();