Getting Repository Capabilities

CMIS 1.0 CMIS 1.1 Spec 2.1.1.1

Query Capability

Check whether the repository supports queries or not.

OpenCMIS (Java)

RepositoryInfo info = session.getRepositoryInfo();

CapabilityQuery capabilityQuery = info.getCapabilities().getQueryCapability(); 
boolean supportsQuery = capabilityQuery != null && capabilityQuery != CapabilityQuery.NONE;

ACL Capability

Check whether the repository supports ACLs or not.

OpenCMIS (Java)

RepositoryInfo info = session.getRepositoryInfo();

CapabilityAcl capabilityAcl = info.getCapabilities().getAclCapability();
boolean supportsAcls = capabilityAcl != null && capabilityAcl != CapabilityAcl.NONE;
boolean manageAcls = capabilityAcl == CapabilityAcl.MANAGE; // supports applyACL()

Multi-Filing Capability

Check whether the repository supports multi-filing or not.

OpenCMIS (Java)

RepositoryInfo info = session.getRepositoryInfo();

boolean supportsMultiFiling = Boolean.TRUE.equals(info.getCapabilities().isMultifilingSupported());

Unfiling Capability

Check whether the repository supports unfiling or not.

OpenCMIS (Java)

RepositoryInfo info = session.getRepositoryInfo();

boolean supportsUnfiling = Boolean.TRUE.equals(info.getCapabilities().isUnfilingSupported());