protected static OperationContext createOperationContext(String filter, String orderBy) { OperationContext ctx = new OperationContextImpl(); ctx.setIncludeAcls(true); ctx.setIncludePolicies(true); ctx.setIncludeRelationships(IncludeRelationships.BOTH); if (StringUtils.isNotBlank(filter) || StringUtils.isNotBlank(orderBy)) { if (StringUtils.isNotBlank(filter)) { ctx.setFilterString(filter); } if (StringUtils.isNotBlank(orderBy)) { ctx.setOrderBy(orderBy); } } return ctx; }
/** * Copy constructor. */ public OperationContextImpl(OperationContext source) { setFilter(source.getFilter()); setLoadSecondaryTypeProperties(source.loadSecondaryTypeProperties()); setIncludeAcls(source.isIncludeAcls()); setIncludeAllowableActions(source.isIncludeAllowableActions()); setIncludePolicies(source.isIncludePolicies()); setIncludeRelationships(source.getIncludeRelationships()); setRenditionFilter(source.getRenditionFilter()); setIncludePathSegments(source.isIncludePathSegments()); setOrderBy(source.getOrderBy()); setCacheEnabled(source.isCacheEnabled()); generateCacheKey(); setMaxItemsPerPage(source.getMaxItemsPerPage()); }
@Override public List<Tree<FileableCmisObject>> getDescendants(int depth, OperationContext context) { String objectId = getObjectId(); // get the descendants List<ObjectInFolderContainer> providerContainerList = getBinding().getNavigationService().getDescendants( getRepositoryId(), objectId, BigInteger.valueOf(depth), context.getFilterString(), context.isIncludeAllowableActions(), context.getIncludeRelationships(), context.getRenditionFilterString(), context.isIncludePathSegments(), null); return convertBindingContainer(providerContainerList, context); }
@Override public CmisObject getObject(String objectId, OperationContext context) { checkObjectId(objectId); checkContext(context); CmisObject result = null; // ask the cache first if (context.isCacheEnabled()) { result = cache.getById(objectId, context.getCacheKey()); if (result != null) { return result; } } // get the object ObjectData objectData = binding.getObjectService().getObject(getRepositoryId(), objectId, context.getFilterString(), context.isIncludeAllowableActions(), context.getIncludeRelationships(), context.getRenditionFilterString(), context.isIncludePolicies(), context.isIncludeAcls(), null); result = getObjectFactory().convertObject(objectData, context); // put into cache if (context.isCacheEnabled()) { cache.put(result, context.getCacheKey()); } return result; }
public static final OperationContext SELECT_ALL_NO_CACHE_OC_ORDER_BY_NAME; static { SELECT_ALL_NO_CACHE_OC.setFilterString("*"); SELECT_ALL_NO_CACHE_OC.setCacheEnabled(false); SELECT_ALL_NO_CACHE_OC.setIncludeAllowableActions(true); SELECT_ALL_NO_CACHE_OC.setIncludeAcls(true); SELECT_ALL_NO_CACHE_OC.setIncludePathSegments(true); SELECT_ALL_NO_CACHE_OC.setIncludePolicies(true); SELECT_ALL_NO_CACHE_OC.setIncludeRelationships(IncludeRelationships.BOTH); SELECT_ALL_NO_CACHE_OC.setRenditionFilterString("*"); SELECT_ALL_NO_CACHE_OC.setOrderBy(null); SELECT_ALL_NO_CACHE_OC_ORDER_BY_NAME.setOrderBy("cmis:name");
allPropsContext.setFilterString("*"); allPropsContext.setIncludeAcls(false); allPropsContext.setIncludeAllowableActions(false); allPropsContext.setIncludePathSegments(false); allPropsContext.setIncludePolicies(false); allPropsContext.setIncludeRelationships(IncludeRelationships.NONE); allPropsContext.setRenditionFilterString("cmis:none");
context.setCacheEnabled(false); context.setFilter(properties); context.setIncludeAcls(false); context.setIncludeAllowableActions(false); context.setIncludePathSegments(false); context.setIncludePolicies(false); context.setIncludeRelationships(IncludeRelationships.NONE); context.setLoadSecondaryTypeProperties(false); context.setRenditionFilterString("cmis:none");
@Override public void refresh() { writeLock(); try { String objectId = getObjectId(); OperationContext oc = getCreationContext(); // get the latest data from the repository ObjectData objectData = getSession().getBinding().getObjectService().getObject(getRepositoryId(), objectId, oc.getFilterString(), oc.isIncludeAllowableActions(), oc.getIncludeRelationships(), oc.getRenditionFilterString(), oc.isIncludePolicies(), oc.isIncludeAcls(), null); // reset this object initialize(session, session.getTypeDefinition(objectType.getId()), objectData, creationContext); } finally { writeUnlock(); } }
@Override public ChangeEvents getContentChanges(String changeLogToken, boolean includeProperties, long maxNumItems, OperationContext context) { checkContext(context); Holder<String> changeLogTokenHolder = new Holder<String>(changeLogToken); ObjectList objectList = null; lock.readLock().lock(); try { objectList = getBinding().getDiscoveryService().getContentChanges(getRepositoryInfo().getId(), changeLogTokenHolder, includeProperties, context.getFilterString(), context.isIncludePolicies(), context.isIncludeAcls(), BigInteger.valueOf(maxNumItems), null); } finally { lock.readLock().unlock(); } return objectFactory.convertChangeEvents(changeLogTokenHolder.getValue(), objectList); }
@Override protected AbstractPageFetcher.Page<CmisObject> fetchPage(long skipCount) { // fetch the data ObjectList resultList = discoveryService.query(getRepositoryId(), statement.toString(), searchAllVersions, ctxt.isIncludeAllowableActions(), ctxt.getIncludeRelationships(), ctxt.getRenditionFilterString(), BigInteger.valueOf(this.maxNumItems), BigInteger.valueOf(skipCount), null); // convert query results List<CmisObject> page = new ArrayList<CmisObject>(); if (resultList.getObjects() != null) { for (ObjectData objectData : resultList.getObjects()) { if (objectData == null) { continue; } page.add(of.convertObject(objectData, ctxt)); } } return new AbstractPageFetcher.Page<CmisObject>(page, resultList.getNumItems(), resultList.hasMoreItems()); } });
@Override protected AbstractPageFetcher.Page<Relationship> fetchPage(long skipCount) { // fetch the relationships ObjectList relList = relationshipService.getObjectRelationships(getRepositoryId(), id, includeSubRelationshipTypes, relationshipDirection, typeId, ctxt.getFilterString(), ctxt.isIncludeAllowableActions(), BigInteger.valueOf(this.maxNumItems), BigInteger.valueOf(skipCount), null); // convert relationship objects List<Relationship> page = new ArrayList<Relationship>(); if (relList.getObjects() != null) { for (ObjectData rod : relList.getObjects()) { CmisObject relationship = getObject(rod.getId(), ctxt); if (!(relationship instanceof Relationship)) { throw new CmisRuntimeException("Repository returned an object that is not a relationship!"); } page.add((Relationship) relationship); } } return new AbstractPageFetcher.Page<Relationship>(page, relList.getNumItems(), relList.hasMoreItems()); } });
String select = ctxt.getFilterString(); if (select == null) { statement.append('*'); String orderBy = ctxt.getOrderBy(); if (orderBy != null && orderBy.trim().length() > 0) { statement.append(" ORDER BY "); return new CollectionIterable<CmisObject>(new AbstractPageFetcher<CmisObject>(ctxt.getMaxItemsPerPage()) {
operationContext.setIncludeRelationships(IncludeRelationships.BOTH);
@Override public void deleteFolder(String path, Session session) throws Exception { // Disable cache session.getDefaultContext().setCacheEnabled(false); if (path.endsWith("/")) path = path.substring(0, path.length()-1); Folder folder = (Folder)FileUtils.getObject(path, session); folder.deleteTree(true, UnfileObject.DELETE, true); // Enable cache session.getDefaultContext().setCacheEnabled(true); }
OperationContext context = session.createOperationContext(); context.setRenditionFilterString("cmis:thumbnail"); CmisObject doc = session.getObjectByPath("/Sites/ren/documentLibrary/Spring Surf and OpenCMIS Integration", context); List<Rendition> renditions = doc.getRenditions(); for (Rendition rendition : renditions) { System.out.println("kind: " + rendition.getKind()); System.out.println("mimetype: " + rendition.getMimeType()); System.out.println("width: " + rendition.getWidth()); System.out.println("height: " + rendition.getHeight()); System.out.println("stream id: " + rendition.getStreamId()); }
public CmisConnector() { super(); ctx.setIncludeAcls(true); }
@Override public Set<String> getFilter() { return Collections.unmodifiableSet(context.getFilter()); }
@Override public String getFilterString() { return context.getFilterString(); }
@Override public boolean isIncludeAllowableActions() { return context.isIncludeAllowableActions(); }
Set<String> testfilter1 = new HashSet<String>(testContext1.getFilter()); testfilter1.add(PropertyIds.CONTENT_STREAM_MIME_TYPE); testContext1.setFilter(testfilter1); Set<String> testfilter2 = new HashSet<String>(testContext2.getFilter()); testfilter2.add(PropertyIds.PATH); testContext2.setFilter(testfilter2); Set<String> testfilter3 = new HashSet<String>(testContext3.getFilter()); testfilter3.add(INVALID_PROPERTY); testContext3.setFilter(testfilter3);