Return-Path: X-Original-To: apmail-chemistry-commits-archive@www.apache.org Delivered-To: apmail-chemistry-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id 0D46717809 for ; Mon, 6 Apr 2015 17:09:27 +0000 (UTC) Received: (qmail 14560 invoked by uid 500); 6 Apr 2015 17:09:27 -0000 Delivered-To: apmail-chemistry-commits-archive@chemistry.apache.org Received: (qmail 14458 invoked by uid 500); 6 Apr 2015 17:09:26 -0000 Mailing-List: contact commits-help@chemistry.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@chemistry.apache.org Delivered-To: mailing list commits@chemistry.apache.org Received: (qmail 13852 invoked by uid 99); 6 Apr 2015 17:09:26 -0000 Received: from eris.apache.org (HELO hades.apache.org) (140.211.11.105) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 06 Apr 2015 17:09:26 +0000 Received: from hades.apache.org (localhost [127.0.0.1]) by hades.apache.org (ASF Mail Server at hades.apache.org) with ESMTP id 580B7AC0163 for ; Mon, 6 Apr 2015 17:09:26 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1671595 [13/14] - in /chemistry/site/trunk/content/java/0.13.0/maven/chemistry-opencmis-client: ./ chemistry-opencmis-client-api/ chemistry-opencmis-client-api/css/ chemistry-opencmis-client-api/images/ chemistry-opencmis-client-api/images... Date: Mon, 06 Apr 2015 17:09:24 -0000 To: commits@chemistry.apache.org From: gabriele@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20150406170926.580B7AC0163@hades.apache.org> Added: chemistry/site/trunk/content/java/0.13.0/maven/chemistry-opencmis-client/chemistry-opencmis-client-api/xref/org/apache/chemistry/opencmis/client/api/Session.html URL: http://svn.apache.org/viewvc/chemistry/site/trunk/content/java/0.13.0/maven/chemistry-opencmis-client/chemistry-opencmis-client-api/xref/org/apache/chemistry/opencmis/client/api/Session.html?rev=1671595&view=auto ============================================================================== --- chemistry/site/trunk/content/java/0.13.0/maven/chemistry-opencmis-client/chemistry-opencmis-client-api/xref/org/apache/chemistry/opencmis/client/api/Session.html (added) +++ chemistry/site/trunk/content/java/0.13.0/maven/chemistry-opencmis-client/chemistry-opencmis-client-api/xref/org/apache/chemistry/opencmis/client/api/Session.html Mon Apr 6 17:09:22 2015 @@ -0,0 +1,1180 @@ + + + + +Session xref + + + +
+
+1   /*
+2    * Licensed to the Apache Software Foundation (ASF) under one
+3    * or more contributor license agreements.  See the NOTICE file
+4    * distributed with this work for additional information
+5    * regarding copyright ownership.  The ASF licenses this file
+6    * to you under the Apache License, Version 2.0 (the
+7    * "License"); you may not use this file except in compliance
+8    * with the License.  You may obtain a copy of the License at
+9    *
+10   * http://www.apache.org/licenses/LICENSE-2.0
+11   *
+12   * Unless required by applicable law or agreed to in writing,
+13   * software distributed under the License is distributed on an
+14   * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+15   * KIND, either express or implied.  See the License for the
+16   * specific language governing permissions and limitations
+17   * under the License.
+18   */
+19  package org.apache.chemistry.opencmis.client.api;
+20  
+21  import java.io.Serializable;
+22  import java.math.BigInteger;
+23  import java.util.Collection;
+24  import java.util.List;
+25  import java.util.Locale;
+26  import java.util.Map;
+27  import java.util.Set;
+28  
+29  import org.apache.chemistry.opencmis.commons.data.Ace;
+30  import org.apache.chemistry.opencmis.commons.data.Acl;
+31  import org.apache.chemistry.opencmis.commons.data.BulkUpdateObjectIdAndChangeToken;
+32  import org.apache.chemistry.opencmis.commons.data.ContentStream;
+33  import org.apache.chemistry.opencmis.commons.data.RepositoryInfo;
+34  import org.apache.chemistry.opencmis.commons.definitions.TypeDefinition;
+35  import org.apache.chemistry.opencmis.commons.enums.AclPropagation;
+36  import org.apache.chemistry.opencmis.commons.enums.IncludeRelationships;
+37  import org.apache.chemistry.opencmis.commons.enums.RelationshipDirection;
+38  import org.apache.chemistry.opencmis.commons.enums.VersioningState;
+39  import org.apache.chemistry.opencmis.commons.exceptions.CmisBaseException;
+40  import org.apache.chemistry.opencmis.commons.exceptions.CmisObjectNotFoundException;
+41  import org.apache.chemistry.opencmis.commons.spi.CmisBinding;
+42  
+43  /**
+44   * A session is a connection to a CMIS repository with a specific user.
+45   * <p>
+46   * CMIS itself is stateless. OpenCMIS uses the concept of a session to cache
+47   * data across calls and to deal with user authentication. The session object is
+48   * also used as entry point to all CMIS operations and objects. Because a
+49   * session is only a client side concept, the session object needs not to be
+50   * closed or released when it's not needed anymore.
+51   * <p>
+52   * Not all operations provided by this API might be supported by the connected
+53   * repository. Either OpenCMIS or the repository will throw an exception if an
+54   * unsupported operation is called. The capabilities of the repository can be
+55   * discovered by evaluating the repository info (see
+56   * {@link #getRepositoryInfo()}).
+57   * <p>
+58   * Almost all methods might throw exceptions derived from
+59   * {@link CmisBaseException} which is a runtime exception. See the CMIS
+60   * specification for a list of all operations and their exceptions. Note that
+61   * some incompliant repositories might throw other exception than you expect.
+62   * <p>
+63   * Refer to the <a href="http://docs.oasis-open.org/cmis/CMIS/v1.0/os/">CMIS 1.0
+64   * specification</a> or the <a
+65   * href="http://docs.oasis-open.org/cmis/CMIS/v1.0/os/">CMIS 1.1
+66   * specification</a> for details about the domain model, terms, concepts, base
+67   * types, properties, IDs and query names, query language, etc.
+68   * </p>
+69   */
+70  public interface Session extends Serializable {
+71  
+72      /**
+73       * Clears all cached data.
+74       */
+75      void clear();
+76  
+77      // session context
+78  
+79      /**
+80       * Returns the underlying binding object.
+81       * 
+82       * @return the binding object, not {@code null}
+83       */
+84      CmisBinding getBinding();
+85  
+86      /**
+87       * Returns the current default operation parameters for filtering, paging
+88       * and caching.
+89       * 
+90       * <p>
+91       * <em>Please note:</em> The returned object is not thread-safe and should
+92       * only be modified right after the session has been created and before the
+93       * session object has been used. In order to change the default context in
+94       * thread-safe manner, create a new {@link OperationContext} object and use
+95       * {@link #setDefaultContext(OperationContext)} to apply it.
+96       * </p>
+97       * 
+98       * @return the default operation context, not {@code null}
+99       */
+100     OperationContext getDefaultContext();
+101 
+102     /**
+103      * Sets the current session parameters for filtering, paging and caching.
+104      * 
+105      * @param context
+106      *            the {@code OperationContext} to be used for the session; if
+107      *            {@code null}, a default context is used
+108      */
+109     void setDefaultContext(OperationContext context);
+110 
+111     /**
+112      * Creates a new operation context object.
+113      * 
+114      * @return the newly created operation context object
+115      */
+116     OperationContext createOperationContext();
+117 
+118     /**
+119      * Creates a new operation context object with the given properties.
+120      * 
+121      * @param filter
+122      *            the property filter, a comma separated string of
+123      *            <em>query names</em> or "*" for all properties or {@code null}
+124      *            to let the repository determine a set of properties
+125      * @param includeAcls
+126      *            indicates whether ACLs should be included or not
+127      * @param includeAllowableActions
+128      *            indicates whether Allowable Actions should be included or not
+129      * @param includePolicies
+130      *            indicates whether policies should be included or not
+131      * @param includeRelationships
+132      *            enum that indicates if and which relationships should be
+133      *            includes
+134      * @param renditionFilter
+135      *            the rendition filter or {@code null} for no renditions
+136      * @param includePathSegments
+137      *            indicates whether path segment or the relative path segment
+138      *            should be included or not
+139      * @param orderBy
+140      *            the object order, a comma-separated list of
+141      *            <em>query names</em> and the ascending modifier "ASC" or the
+142      *            descending modifier "DESC" for each query name
+143      * @param cacheEnabled
+144      *            flag that indicates if the object cache should be used
+145      * @param maxItemsPerPage
+146      *            the max items per batch
+147      * 
+148      * @return the newly created operation context object
+149      * 
+150      * @see OperationContext
+151      */
+152     OperationContext createOperationContext(Set<String> filter, boolean includeAcls, boolean includeAllowableActions,
+153             boolean includePolicies, IncludeRelationships includeRelationships, Set<String> renditionFilter,
+154             boolean includePathSegments, String orderBy, boolean cacheEnabled, int maxItemsPerPage);
+155 
+156     /**
+157      * Creates an object ID from a String.
+158      * 
+159      * @return the object ID object
+160      */
+161     ObjectId createObjectId(String id);
+162 
+163     // localization
+164 
+165     /**
+166      * Get the current locale to be used for this session.
+167      * 
+168      * @return the current locale, may be {@code null}
+169      */
+170     Locale getLocale();
+171 
+172     // services
+173 
+174     /**
+175      * Returns the repository info of the repository associated with this
+176      * session.
+177      * 
+178      * @return the repository info, not {@code null}
+179      * 
+180      * @cmis 1.0
+181      */
+182     RepositoryInfo getRepositoryInfo();
+183 
+184     /**
+185      * Gets a factory object that provides methods to create the objects used by
+186      * this API.
+187      * 
+188      * @return the repository info, not {@code null}
+189      */
+190     ObjectFactory getObjectFactory();
+191 
+192     // types
+193 
+194     /**
+195      * Gets the definition of a type.
+196      * 
+197      * @param typeId
+198      *            the ID of the type
+199      * 
+200      * @return the type definition
+201      * 
+202      * @throws CmisObjectNotFoundException
+203      *             if a type with the given type ID doesn't exist
+204      * 
+205      * @cmis 1.0
+206      */
+207     ObjectType getTypeDefinition(String typeId);
+208 
+209     /**
+210      * Gets the definition of a type.
+211      * 
+212      * @param typeId
+213      *            the ID of the type
+214      * @param useCache
+215      *            specifies if the type definition should be first looked up in
+216      *            the type definition cache, if it is set to {@code false} or
+217      *            the type definition is not in the cache, the type definition
+218      *            is loaded from the repository
+219      * 
+220      * @return the type definition
+221      * 
+222      * @throws CmisObjectNotFoundException
+223      *             if a type with the given type ID doesn't exist
+224      * 
+225      * @cmis 1.0
+226      */
+227     ObjectType getTypeDefinition(String typeId, boolean useCache);
+228 
+229     /**
+230      * Gets the type children of a type.
+231      * 
+232      * @param typeId
+233      *            the type ID or {@code null} to request the base types
+234      * @param includePropertyDefinitions
+235      *            indicates whether the property definitions should be included
+236      *            or not
+237      * @return the type iterator, not {@code null}
+238      * 
+239      * @throws CmisObjectNotFoundException
+240      *             if a type with the given type ID doesn't exist
+241      * 
+242      * @cmis 1.0
+243      */
+244     ItemIterable<ObjectType> getTypeChildren(String typeId, boolean includePropertyDefinitions);
+245 
+246     /**
+247      * Gets the type descendants of a type.
+248      * 
+249      * @param typeId
+250      *            the type ID or {@code null} to request the base types
+251      * @param includePropertyDefinitions
+252      *            indicates whether the property definitions should be included
+253      *            or not
+254      * @param depth
+255      *            the tree depth, must be greater than 0 or -1 for infinite
+256      *            depth
+257      * 
+258      * @throws CmisObjectNotFoundException
+259      *             if a type with the given type ID doesn't exist
+260      * 
+261      * @cmis 1.0
+262      */
+263     List<Tree<ObjectType>> getTypeDescendants(String typeId, int depth, boolean includePropertyDefinitions);
+264 
+265     /**
+266      * Creates a new type.
+267      * 
+268      * @param type
+269      *            the type definition
+270      * 
+271      * @return the new type definition
+272      * 
+273      * @cmis 1.1
+274      */
+275     ObjectType createType(TypeDefinition type);
+276 
+277     /**
+278      * Updates an existing type.
+279      * 
+280      * @param type
+281      *            the type definition updates
+282      * 
+283      * @return the updated type definition
+284      * 
+285      * @cmis 1.1
+286      */
+287     ObjectType updateType(TypeDefinition type);
+288 
+289     /**
+290      * Deletes a type.
+291      * 
+292      * @param typeId
+293      *            the ID of the type to delete
+294      * 
+295      * @cmis 1.1
+296      */
+297     void deleteType(String typeId);
+298 
+299     // navigation
+300 
+301     /**
+302      * Gets the root folder of the repository.
+303      * 
+304      * @return the root folder object, not {@code null}
+305      * 
+306      * @cmis 1.0
+307      */
+308     Folder getRootFolder();
+309 
+310     /**
+311      * Gets the root folder of the repository with the given
+312      * {@link OperationContext}.
+313      * 
+314      * @return the root folder object, not {@code null}
+315      * 
+316      * @cmis 1.0
+317      */
+318     Folder getRootFolder(OperationContext context);
+319 
+320     /**
+321      * Returns all checked out documents.
+322      * 
+323      * @see Folder#getCheckedOutDocs()
+324      * 
+325      * @cmis 1.0
+326      */
+327     ItemIterable<Document> getCheckedOutDocs();
+328 
+329     /**
+330      * Returns all checked out documents with the given {@link OperationContext}
+331      * .
+332      * 
+333      * @see Folder#getCheckedOutDocs(OperationContext)
+334      * 
+335      * @cmis 1.0
+336      */
+337     ItemIterable<Document> getCheckedOutDocs(OperationContext context);
+338 
+339     /**
+340      * Returns a CMIS object from the session cache. If the object is not in the
+341      * cache or the cache is turned off per default {@link OperationContext}, it
+342      * will load the object from the repository and puts it into the cache.
+343      * <p>
+344      * This method might return a stale object if the object has been found in
+345      * the cache and has been changed in or removed from the repository. Use
+346      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+347      * update the object if necessary.
+348      * 
+349      * @param objectId
+350      *            the object ID
+351      * 
+352      * @return the requested object
+353      * 
+354      * @throws CmisObjectNotFoundException
+355      *             if an object with the given ID doesn't exist
+356      * 
+357      * @see #getObject(String)
+358      * 
+359      * @cmis 1.0
+360      */
+361     CmisObject getObject(ObjectId objectId);
+362 
+363     /**
+364      * Returns a CMIS object from the session cache. If the object is not in the
+365      * cache or the given {@link OperationContext} has caching turned off, it
+366      * will load the object from the repository and puts it into the cache.
+367      * <p>
+368      * This method might return a stale object if the object has been found in
+369      * the cache and has been changed in or removed from the repository. Use
+370      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+371      * update the object if necessary.
+372      * 
+373      * @param objectId
+374      *            the object ID
+375      * @param context
+376      *            the {@link OperationContext} to use
+377      * 
+378      * @return the requested object
+379      * 
+380      * @throws CmisObjectNotFoundException
+381      *             if an object with the given ID doesn't exist
+382      * 
+383      * @see #getObject(String, OperationContext)
+384      * 
+385      * @cmis 1.0
+386      */
+387     CmisObject getObject(ObjectId objectId, OperationContext context);
+388 
+389     /**
+390      * Returns a CMIS object from the session cache. If the object is not in the
+391      * cache or the cache is turned off per default {@link OperationContext}, it
+392      * will load the object from the repository and puts it into the cache.
+393      * <p>
+394      * This method might return a stale object if the object has been found in
+395      * the cache and has been changed in or removed from the repository. Use
+396      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+397      * update the object if necessary.
+398      * 
+399      * @param objectId
+400      *            the object ID
+401      * 
+402      * @return the requested object
+403      * 
+404      * @throws CmisObjectNotFoundException
+405      *             if an object with the given ID doesn't exist
+406      * 
+407      * @see #getObject(ObjectId)
+408      * 
+409      * @cmis 1.0
+410      */
+411     CmisObject getObject(String objectId);
+412 
+413     /**
+414      * Returns a CMIS object from the session cache. If the object is not in the
+415      * cache or the given {@link OperationContext} has caching turned off, it
+416      * will load the object from the repository and puts it into the cache.
+417      * <p>
+418      * This method might return a stale object if the object has been found in
+419      * the cache and has been changed in or removed from the repository. Use
+420      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+421      * update the object if necessary.
+422      * 
+423      * @param objectId
+424      *            the object ID
+425      * @param context
+426      *            the {@link OperationContext} to use
+427      * 
+428      * @return the requested object
+429      * 
+430      * @throws CmisObjectNotFoundException
+431      *             if an object with the given ID doesn't exist
+432      * 
+433      * @see #getObject(ObjectId, OperationContext)
+434      * 
+435      * @cmis 1.0
+436      */
+437     CmisObject getObject(String objectId, OperationContext context);
+438 
+439     /**
+440      * Returns a CMIS object from the session cache. If the object is not in the
+441      * cache or the cache is turned off per default {@link OperationContext}, it
+442      * will load the object from the repository and puts it into the cache.
+443      * <p>
+444      * This method might return a stale object if the object has been found in
+445      * the cache and has been changed in or removed from the repository. Use
+446      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+447      * update the object if necessary.
+448      * 
+449      * @param path
+450      *            the object path
+451      * 
+452      * @return the requested object
+453      * 
+454      * @throws CmisObjectNotFoundException
+455      *             if an object with the given ID doesn't exist
+456      * 
+457      * @cmis 1.0
+458      */
+459     CmisObject getObjectByPath(String path);
+460 
+461     /**
+462      * Returns a CMIS object from the session cache. If the object is not in the
+463      * cache or the given {@link OperationContext} has caching turned off, it
+464      * will load the object from the repository and puts it into the cache.
+465      * <p>
+466      * This method might return a stale object if the object has been found in
+467      * the cache and has been changed in or removed from the repository. Use
+468      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+469      * update the object if necessary.
+470      * 
+471      * @param path
+472      *            the object path
+473      * @param context
+474      *            the {@link OperationContext} to use
+475      * 
+476      * @return the requested object
+477      * 
+478      * @throws CmisObjectNotFoundException
+479      *             if an object with the given ID doesn't exist
+480      * 
+481      * @cmis 1.0
+482      */
+483     CmisObject getObjectByPath(String path, OperationContext context);
+484 
+485     /**
+486      * Returns a CMIS object from the session cache. If the object is not in the
+487      * cache or the cache is turned off per default {@link OperationContext}, it
+488      * will load the object from the repository and puts it into the cache.
+489      * <p>
+490      * This method might return a stale object if the object has been found in
+491      * the cache and has been changed in or removed from the repository. Use
+492      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+493      * update the object if necessary.
+494      * 
+495      * @param parentPath
+496      *            the path of the parent folder
+497      * @param name
+498      *            the (path segment) name of the object in the folder
+499      * 
+500      * @return the requested object
+501      * 
+502      * @throws CmisObjectNotFoundException
+503      *             if an object with the given ID doesn't exist
+504      * 
+505      * @cmis 1.0
+506      */
+507     CmisObject getObjectByPath(String parentPath, String name);
+508 
+509     /**
+510      * Returns a CMIS object from the session cache. If the object is not in the
+511      * cache or the given {@link OperationContext} has caching turned off, it
+512      * will load the object from the repository and puts it into the cache.
+513      * <p>
+514      * This method might return a stale object if the object has been found in
+515      * the cache and has been changed in or removed from the repository. Use
+516      * {@link CmisObject#refresh()} and {@link CmisObject#refreshIfOld(long)} to
+517      * update the object if necessary.
+518      * 
+519      * @param parentPath
+520      *            the path of the parent folder
+521      * @param name
+522      *            the (path segment) name of the object in the folder
+523      * @param context
+524      *            the {@link OperationContext} to use
+525      * 
+526      * @return the requested object
+527      * 
+528      * @throws CmisObjectNotFoundException
+529      *             if an object with the given ID doesn't exist
+530      * 
+531      * @cmis 1.0
+532      */
+533     CmisObject getObjectByPath(String parentPath, String name, OperationContext context);
+534 
+535     /**
+536      * Returns the latest version in a version series.
+537      * 
+538      * @param objectId
+539      *            the document ID of an arbitrary version in the version series
+540      * 
+541      * @return the latest document version
+542      * 
+543      * @cmis 1.0
+544      */
+545     Document getLatestDocumentVersion(ObjectId objectId);
+546 
+547     /**
+548      * Returns the latest version in a version series.
+549      * 
+550      * @param objectId
+551      *            the document ID of an arbitrary version in the version series
+552      * @param context
+553      *            the {@link OperationContext} to use
+554      * 
+555      * @return the latest document version
+556      * 
+557      * @cmis 1.0
+558      */
+559     Document getLatestDocumentVersion(ObjectId objectId, OperationContext context);
+560 
+561     /**
+562      * Returns the latest version in a version series.
+563      * 
+564      * @param objectId
+565      *            the document ID of an arbitrary version in the version series
+566      * @param major
+567      *            if {@code true} the latest major version will be returned,
+568      *            otherwise the very last version will be returned
+569      * @param context
+570      *            the {@link OperationContext} to use
+571      * 
+572      * @return the latest document version
+573      * 
+574      * @cmis 1.0
+575      */
+576     Document getLatestDocumentVersion(ObjectId objectId, boolean major, OperationContext context);
+577 
+578     /**
+579      * /** Returns the latest version in a version series.
+580      * 
+581      * @param objectId
+582      *            the document ID of an arbitrary version in the version series
+583      * 
+584      * @return the latest document version
+585      * 
+586      * @cmis 1.0
+587      */
+588     Document getLatestDocumentVersion(String objectId);
+589 
+590     /**
+591      * Returns the latest version in a version series.
+592      * 
+593      * @param objectId
+594      *            the document ID of an arbitrary version in the version series
+595      * @param context
+596      *            the {@link OperationContext} to use
+597      * 
+598      * @return the latest document version
+599      * 
+600      * @cmis 1.0
+601      */
+602     Document getLatestDocumentVersion(String objectId, OperationContext context);
+603 
+604     /**
+605      * Returns the latest version in a version series.
+606      * 
+607      * @param objectId
+608      *            the document ID of an arbitrary version in the version series
+609      * @param major
+610      *            if {@code true} the latest major version will be returned,
+611      *            otherwise the very last version will be returned
+612      * @param context
+613      *            the {@link OperationContext} to use
+614      * 
+615      * @return the latest document version
+616      * 
+617      * @cmis 1.0
+618      */
+619     Document getLatestDocumentVersion(String objectId, boolean major, OperationContext context);
+620 
+621     /**
+622      * Removes the given object from the cache.
+623      * 
+624      * @param objectId
+625      *            object ID
+626      * 
+627      * @see #removeObjectFromCache(String)
+628      */
+629     void removeObjectFromCache(ObjectId objectId);
+630 
+631     /**
+632      * Removes the given object from the cache.
+633      * 
+634      * @param objectId
+635      *            object ID
+636      */
+637     void removeObjectFromCache(String objectId);
+638 
+639     // discovery
+640 
+641     /**
+642      * Sends a query to the repository. Refer to the CMIS specification for the
+643      * CMIS query language syntax.
+644      * 
+645      * @param statement
+646      *            the query statement (CMIS query language)
+647      * @param searchAllVersions
+648      *            specifies whether non-latest document versions should be
+649      *            included or not, {@code true} searches all document versions,
+650      *            {@code false} only searches latest document versions
+651      * 
+652      * @cmis 1.0
+653      */
+654     ItemIterable<QueryResult> query(String statement, boolean searchAllVersions);
+655 
+656     /**
+657      * Sends a query to the repository using the given {@link OperationContext}.
+658      * (See CMIS spec "2.1.10 Query".)
+659      * 
+660      * @param statement
+661      *            the query statement (CMIS query language)
+662      * @param searchAllVersions
+663      *            specifies whether non-latest document versions should be
+664      *            included or not, {@code true} searches all document versions,
+665      *            {@code false} only searches latest document versions
+666      * @param context
+667      *            the operation context to use
+668      * 
+669      * @cmis 1.0
+670      */
+671     ItemIterable<QueryResult> query(String statement, boolean searchAllVersions, OperationContext context);
+672 
+673     /**
+674      * Builds a CMIS query and returns the query results as an iterator of
+675      * {@link CmisObject} objects.
+676      * 
+677      * @param type

[... 494 lines stripped ...]