Map<String, String> parameters = new HashMap<String, String>();
parameters.put(SessionParameter.ATOMPUB_URL, "http:);
parameters.put(SessionParameter.USER, "test");
parameters.put(SessionParameter.PASSWORD, "test");
CmisBinding binding = CmisBindingFactory.newInstance().createCmisAtomPubBinding(parameters);
String repositoryId = "A1";
RepositoryInfo repInfo = binding.getRepositoryService().getRepositoryInfo(repositoryId, null);
System.out.println("Repository name: " + repInfo.getName());
ObjectData rootFolder = binding.getObjectService().getObject(repositoryId, repInfo.getRootFolderId(), "*",
true, IncludeRelationships.NONE, null, false, false, null);
PropertyString pathProperty = (PropertyString) rootFolder.getProperties().getProperties().get(PropertyIds.PATH);
String path = pathProperty.getFirstValue();
System.out.println("Root folder path: " + path);
ObjectInFolderList childrenList = binding.getNavigationService().getChildren(repositoryId,
repInfo.getRootFolderId(), "*", null, true, IncludeRelationships.NONE, null, false,
BigInteger.valueOf(10000), BigInteger.ZERO, null);
for (ObjectInFolderData object : childrenList.getObjects()) {
System.out.println("---------------------------------");
PropertyString nameProperty = (PropertyString) object.getObject().getProperties().getProperties().get(
PropertyIds.NAME);
PropertyString blaProperty = (PropertyString) object.getObject().getProperties().getProperties().get("bla");
PropertyId typeProperty = (PropertyId) object.getObject().getProperties().getProperties().get(
PropertyIds.OBJECT_TYPE_ID);
System.out.println(" Id: " + object.getObject().getId());
System.out.println(" Name: " + nameProperty.getFirstValue());
System.out.println(" Base Type: " + object.getObject().getBaseTypeId());
System.out.println(" Property 'bla': " + (blaProperty == null ? null : blaProperty.getFirstValue()));
TypeDefinition type = binding.getRepositoryService().getTypeDefinition(repositoryId,
typeProperty.getFirstValue(), null);
System.out.println(" Type Id: " + type.getId());
System.out.println(" Type Name: " + type.getDisplayName());
System.out.println(" Type Query Name: " + type.getQueryName());
AllowableActions actions = object.getObject().getAllowableActions();
System.out.println(" canGetProperties: "
+ actions.getAllowableActions().contains(Action.CAN_GET_PROPERTIES));
System.out.println(" canDeleteObject: "
+ actions.getAllowableActions().contains(Action.CAN_DELETE_OBJECT));
}
String objectId = "100";
ObjectData object = binding.getObjectService().getObject(repositoryId, objectId, "*", false,
IncludeRelationships.NONE, null, false, false, null);
if (object.getBaseTypeId() == BaseTypeId.CMIS_FOLDER) {
System.out.println("Is root folder: " + (repInfo.getRootFolderId().equals(object.getId())));
}
if (object.getBaseTypeId() == BaseTypeId.CMIS_DOCUMENT) {
ContentStream content = binding.getObjectService().getContentStream(repositoryId, objectId, null, null,
null, null);
System.out.println("Document MIME type: " + content.getMimeType());
}