You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@chemistry.apache.org by fm...@apache.org on 2010/02/22 13:40:49 UTC

svn commit: r912548 - /incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/

Author: fmui
Date: Mon Feb 22 12:40:48 2010
New Revision: 912548

URL: http://svn.apache.org/viewvc?rev=912548&view=rev
Log:
improved server framework SPI JavaDoc

Added:
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html   (with props)
Modified:
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/AbstractServicesFactory.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CallContext.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisAclService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisDiscoveryService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisMultiFilingService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisNavigationService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisObjectService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisPolicyService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRelationshipService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRepositoryService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisVersioningService.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfo.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfoHolder.java
    incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/RenditionInfo.java

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/AbstractServicesFactory.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/AbstractServicesFactory.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/AbstractServicesFactory.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/AbstractServicesFactory.java Mon Feb 22 12:40:48 2010
@@ -23,7 +23,7 @@
 import org.apache.opencmis.commons.exceptions.CmisNotSupportedException;
 
 /**
- * The aim of this class is provide CMIS service instances.
+ * This class provides the CMIS service instances.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CallContext.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CallContext.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CallContext.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CallContext.java Mon Feb 22 12:40:48 2010
@@ -36,7 +36,8 @@
   String LENGTH = "length";
 
   /**
-   * Returns the binding. Usually it returns {@link BINDING_ATOMPUB} or {@link BINDING_WEBSERVICES}.
+   * Returns the binding. Usually it returns {@link CallContext#BINDING_ATOMPUB} or
+   * {@link CallContext#BINDING_WEBSERVICES}.
    */
   String getBinding();
 

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisAclService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisAclService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisAclService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisAclService.java Mon Feb 22 12:40:48 2010
@@ -23,7 +23,8 @@
 import org.apache.opencmis.commons.provider.AccessControlList;
 
 /**
- * CMIS ACL Service interface.
+ * CMIS ACL Service interface. Please refer to the CMIS specification and the OpenCMIS documentation
+ * for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
@@ -31,20 +32,34 @@
 public interface CmisAclService {
 
   /**
+   * Returns the ACL of an object.
+   * 
+   * <p>
    * Bindings: AtomPub, Web Services
+   * </p>
    */
   AccessControlList getAcl(CallContext context, String repositoryId, String objectId,
       Boolean onlyBasicPermissions, ExtensionsData extension);
 
   /**
+   * Adds ACEs to and removes ACEs from the ACL of an object.
+   * 
+   * <p>
    * Bindings: Web Services
+   * </p>
    */
   AccessControlList applyAcl(CallContext context, String repositoryId, String objectId,
       AccessControlList addAces, AccessControlList removeAces, AclPropagation aclPropagation,
       ExtensionsData extension);
 
   /**
+   * Applies a new ACL to an object. Since it is not possible to transmit an "add ACL" and a
+   * "remove ACL" via AtomPub, the merging has to be done the client side. The ACEs provided here is
+   * supposed to the new complete ACL.
+   * 
+   * <p>
    * Bindings: AtomPub
+   * </p>
    */
   AccessControlList applyAcl(CallContext context, String repositoryId, String objectId,
       AccessControlList aces, AclPropagation aclPropagation);

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisDiscoveryService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisDiscoveryService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisDiscoveryService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisDiscoveryService.java Mon Feb 22 12:40:48 2010
@@ -26,18 +26,33 @@
 import org.apache.opencmis.commons.provider.ObjectList;
 
 /**
- * CMIS Discovery Service interface.
+ * CMIS Discovery Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisDiscoveryService {
 
+  /**
+   * Queries the repository.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public ObjectList query(CallContext context, String repositoryId, String statement,
       Boolean searchAllVersions, Boolean includeAllowableActions,
       IncludeRelationships includeRelationships, String renditionFilter, BigInteger maxItems,
       BigInteger skipCount, ExtensionsData extension);
 
+  /**
+   * Retrieves the content changes.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public ObjectList getContentChanges(CallContext context, String repositoryId,
       Holder<String> changeLogToken, Boolean includeProperties, String filter,
       Boolean includePolicyIds, Boolean includeAcl, BigInteger maxItems, ExtensionsData extension,

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisMultiFilingService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisMultiFilingService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisMultiFilingService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisMultiFilingService.java Mon Feb 22 12:40:48 2010
@@ -22,17 +22,31 @@
 import org.apache.opencmis.commons.provider.ObjectData;
 
 /**
- * CMIS MultiFiling Service interface.
+ * CMIS MultiFiling Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisMultiFilingService {
 
+  /**
+   * Adds an object to a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData addObjectToFolder(CallContext context, String repositoryId, String objectId,
       String folderId, Boolean allVersions, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Removes an object to a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData removeObjectFromFolder(CallContext context, String repositoryId, String objectId,
       String folderId, ExtensionsData extension, ObjectInfoHolder objectInfos);
-
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisNavigationService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisNavigationService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisNavigationService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisNavigationService.java Mon Feb 22 12:40:48 2010
@@ -30,37 +30,80 @@
 import org.apache.opencmis.commons.provider.ObjectParentData;
 
 /**
- * CMIS Navigation Service interface.
+ * CMIS Navigation Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisNavigationService {
 
+  /**
+   * Get the descendants on a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   List<ObjectInFolderContainer> getDescendants(CallContext context, String repositoryId,
       String folderId, BigInteger depth, String filter, Boolean includeAllowableActions,
       IncludeRelationships includeRelationships, String renditionFilter,
       Boolean includePathSegment, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Get the folder tree on a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
+  List<ObjectInFolderContainer> getFolderTree(CallContext context, String repositoryId,
+      String folderId, BigInteger depth, String filter, Boolean includeAllowableActions,
+      IncludeRelationships includeRelationships, String renditionFilter,
+      Boolean includePathSegment, ExtensionsData extension, ObjectInfoHolder objectInfos);
+
+  /**
+   * Get the children on a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectInFolderList getChildren(CallContext context, String repositoryId, String folderId,
       String filter, String orderBy, Boolean includeAllowableActions,
       IncludeRelationships includeRelationships, String renditionFilter,
       Boolean includePathSegment, BigInteger maxItems, BigInteger skipCount,
       ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Gets the parent on a folder.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData getFolderParent(CallContext context, String repositoryId, String folderId,
       String filter, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
-  List<ObjectInFolderContainer> getFolderTree(CallContext context, String repositoryId,
-      String folderId, BigInteger depth, String filter, Boolean includeAllowableActions,
-      IncludeRelationships includeRelationships, String renditionFilter,
-      Boolean includePathSegment, ExtensionsData extension, ObjectInfoHolder objectInfos);
-
+  /**
+   * Gets the parents on an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   List<ObjectParentData> getObjectParents(CallContext context, String repositoryId,
       String objectId, String filter, Boolean includeAllowableActions,
       IncludeRelationships includeRelationships, String renditionFilter,
       Boolean includeRelativePathSegment, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Gets the the list of checked out documents.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectList getCheckedOutDocs(CallContext context, String repositoryId, String folderId,
       String filter, String orderBy, Boolean includeAllowableActions,
       IncludeRelationships includeRelationships, String renditionFilter, BigInteger maxItems,

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisObjectService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisObjectService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisObjectService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisObjectService.java Mon Feb 22 12:40:48 2010
@@ -35,7 +35,8 @@
 import org.apache.opencmis.commons.provider.RenditionData;
 
 /**
- * CMIS Object Service interface.
+ * CMIS Object Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
@@ -43,7 +44,7 @@
 public interface CmisObjectService {
 
   /**
-   * createDocument.
+   * Creates new document.
    * 
    * <p>
    * Bindings: Web Services
@@ -55,7 +56,7 @@
       ExtensionsData extension);
 
   /**
-   * createDocumentFromSource.
+   * Copies a document.
    * 
    * <p>
    * Bindings: Web Services
@@ -67,7 +68,7 @@
       ExtensionsData extension);
 
   /**
-   * createFolder.
+   * Creates a new folder.
    * 
    * <p>
    * Bindings: Web Services
@@ -78,7 +79,7 @@
       AccessControlList removeAces, ExtensionsData extension);
 
   /**
-   * createRelationship.
+   * Create a new relationship.
    * 
    * <p>
    * Bindings: AtomPub, Web Services
@@ -89,7 +90,7 @@
       ExtensionsData extension);
 
   /**
-   * createPolicy.
+   * Creates a new policy.
    * 
    * <p>
    * Bindings: Web Services
@@ -100,7 +101,8 @@
       AccessControlList removeAces, ExtensionsData extension);
 
   /**
-   * create.
+   * Creates a new document, folder or policy. The property "cmis:objectTypeId" defines the type and
+   * implicitly the base type.
    * 
    * <p>
    * Bindings: AtomPub
@@ -110,11 +112,18 @@
       String folderId, ContentStreamData contentStream, VersioningState versioningState,
       List<String> policies, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Gets the allowable actions.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   AllowableActionsData getAllowableActions(CallContext context, String repositoryId,
       String objectId, ExtensionsData extension);
 
   /**
-   * getObject.
+   * Gets an object by id.
    * 
    * <p>
    * Bindings: AtomPub, Web Services
@@ -126,7 +135,7 @@
       ExtensionsData extension, ObjectInfoHolder objectInfos);
 
   /**
-   * getProperties.
+   * Gets the properties of an object.
    * 
    * <p>
    * Bindings: Web Services
@@ -135,36 +144,102 @@
   PropertiesData getProperties(CallContext context, String repositoryId, String objectId,
       String filter, ExtensionsData extension);
 
+  /**
+   * Gets the renditions of an object.
+   * 
+   * <p>
+   * Bindings: Web Services
+   * </p>
+   */
   List<RenditionData> getRenditions(CallContext context, String repositoryId, String objectId,
       String renditionFilter, BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
 
+  /**
+   * Gets an object by path.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData getObjectByPath(CallContext context, String repositoryId, String path, String filter,
       Boolean includeAllowableActions, IncludeRelationships includeRelationships,
       String renditionFilter, Boolean includePolicyIds, Boolean includeAcl,
       ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Gets the content of a document.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ContentStreamData getContentStream(CallContext context, String repositoryId, String objectId,
       String streamId, BigInteger offset, BigInteger length, ExtensionsData extension);
 
+  /**
+   * Updates the properties of an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData updateProperties(CallContext context, String repositoryId, Holder<String> objectId,
       Holder<String> changeToken, PropertiesData properties, AccessControlList acl,
       ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Moves an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   ObjectData moveObject(CallContext context, String repositoryId, Holder<String> objectId,
       String targetFolderId, String sourceFolderId, ExtensionsData extension,
       ObjectInfoHolder objectInfos);
 
+  /**
+   * Deletes an object or cancels a check out. For the Web Services binding this is always an object
+   * deletion. For the AtomPub it depends on the referenced object. If it is a checked out document
+   * then the check out must be canceled. If the object is not a checked out document then the
+   * object must be deleted.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   void deleteObjectOrCancelCheckOut(CallContext context, String repositoryId, String objectId,
       Boolean allVersions, ExtensionsData extension);
 
+  /**
+   * Deletes a folder tree.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   FailedToDeleteData deleteTree(CallContext context, String repositoryId, String folderId,
       Boolean allVersions, UnfileObjects unfileObjects, Boolean continueOnFailure,
       ExtensionsData extension);
 
+  /**
+   * Sets a new content.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   void setContentStream(CallContext context, String repositoryId, Holder<String> objectId,
       Boolean overwriteFlag, Holder<String> changeToken, ContentStreamData contentStream,
       ExtensionsData extension);
 
+  /**
+   * Deletes a content.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   void deleteContentStream(CallContext context, String repositoryId, Holder<String> objectId,
       Holder<String> changeToken, ExtensionsData extension);
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisPolicyService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisPolicyService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisPolicyService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisPolicyService.java Mon Feb 22 12:40:48 2010
@@ -24,19 +24,41 @@
 import org.apache.opencmis.commons.provider.ObjectData;
 
 /**
- * CMIS Policy Service interface.
+ * CMIS Policy Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisPolicyService {
 
+  /**
+   * Applies a policy to an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public ObjectData applyPolicy(CallContext context, String repositoryId, String policyId,
       String objectId, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
+  /**
+   * Removes a policy to an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public void removePolicy(CallContext context, String repositoryId, String policyId,
       String objectId, ExtensionsData extension);
 
+  /**
+   * Get all applied policies of an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public List<ObjectData> getAppliedPolicies(CallContext context, String repositoryId,
       String objectId, String filter, ExtensionsData extension, ObjectInfoHolder objectInfos);
 

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRelationshipService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRelationshipService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRelationshipService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRelationshipService.java Mon Feb 22 12:40:48 2010
@@ -25,13 +25,21 @@
 import org.apache.opencmis.commons.provider.ObjectList;
 
 /**
- * CMIS Relationship Service interface.
+ * CMIS Relationship Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisRelationshipService {
 
+  /**
+   * Gets the relationships of an object.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public ObjectList getObjectRelationships(CallContext context, String repositoryId,
       String objectId, Boolean includeSubRelationshipTypes,
       RelationshipDirection relationshipDirection, String typeId, String filter,

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRepositoryService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRepositoryService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRepositoryService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisRepositoryService.java Mon Feb 22 12:40:48 2010
@@ -28,29 +28,56 @@
 import org.apache.opencmis.commons.provider.RepositoryInfoData;
 
 /**
- * CMIS Repository Service interface.
+ * CMIS Repository Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 
  */
 public interface CmisRepositoryService {
 
+  /**
+   * Gets all repository infos.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   List<RepositoryInfoData> getRepositoryInfos(CallContext context, ExtensionsData extension);
 
+  /**
+   * Gets the repository info of the specified repository.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   RepositoryInfoData getRepositoryInfo(CallContext context, String repositoryId,
       ExtensionsData extension);
 
+  /**
+   * Gets the children of the given type.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   TypeDefinitionList getTypeChildren(CallContext context, String repositoryId, String typeId,
       Boolean includePropertyDefinitions, BigInteger maxItems, BigInteger skipCount,
       ExtensionsData extension);
 
+  /**
+   * Gets the descendants of the given type.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   List<TypeDefinitionContainer> getTypeDescendants(CallContext context, String repositoryId,
       String typeId, BigInteger depth, Boolean includePropertyDefinitions, ExtensionsData extension);
 
   /**
-   * getTypeDefinition.
-   * 
-   * Must return a valid type or throw an exception.
+   * Gets the type definition of the given type. It must return a valid type or throw an exception.
    * 
    * <p>
    * Bindings: AtomPub, Web Services

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisVersioningService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisVersioningService.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisVersioningService.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/CmisVersioningService.java Mon Feb 22 12:40:48 2010
@@ -28,11 +28,35 @@
 import org.apache.opencmis.commons.provider.ObjectData;
 import org.apache.opencmis.commons.provider.PropertiesData;
 
+/**
+ * CMIS Versioning Service interface. Please refer to the CMIS specification and the OpenCMIS
+ * documentation for details.
+ * 
+ * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
+ * 
+ */
 public interface CmisVersioningService {
 
+  /**
+   * Checks out a document.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public ObjectData checkOut(CallContext context, String repositoryId, Holder<String> objectId,
       ExtensionsData extension, Holder<Boolean> contentCopied, ObjectInfoHolder objectInfos);
 
+  /**
+   * Cancels a check out.
+   * 
+   * <p>
+   * Bindings: Web Services
+   * </p>
+   * 
+   * @see CmisObjectService#deleteObjectOrCancelCheckOut(CallContext, String, String, Boolean,
+   *      ExtensionsData)
+   */
   public void cancelCheckOut(CallContext context, String repositoryId, String objectId,
       ExtensionsData extension);
 
@@ -42,9 +66,11 @@
       AccessControlList removeAces, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
   /**
-   * getObjectOfLatestVersion.
+   * Gets the latest version an object.
    * 
-   * <p>Bindings: AtomPub, Web Services</p>
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
    */
   public ObjectData getObjectOfLatestVersion(CallContext context, String repositoryId,
       String versionSeriesId, Boolean major, String filter, Boolean includeAllowableActions,
@@ -52,13 +78,22 @@
       Boolean includeAcl, ExtensionsData extension, ObjectInfoHolder objectInfos);
 
   /**
-   * getPropertiesOfLatestVersion.
+   * Gets the properties of latest version an object.
    * 
-   * <p>Bindings: Web Services</p>
+   * <p>
+   * Bindings: Web Services
+   * </p>
    */
   public PropertiesData getPropertiesOfLatestVersion(CallContext context, String repositoryId,
       String versionSeriesId, Boolean major, String filter, ExtensionsData extension);
 
+  /**
+   * Gets the list of all versions of a document.
+   * 
+   * <p>
+   * Bindings: AtomPub, Web Services
+   * </p>
+   */
   public List<ObjectData> getAllVersions(CallContext context, String repositoryId,
       String versionSeriesId, String filter, Boolean includeAllowableActions,
       ExtensionsData extension, ObjectInfoHolder objectInfos);

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfo.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfo.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfo.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfo.java Mon Feb 22 12:40:48 2010
@@ -32,49 +32,131 @@
  */
 public interface ObjectInfo {
 
+  /**
+   * Returns the object id.
+   */
   String getId();
 
+  /**
+   * Returns the object name.
+   */
   String getName();
 
+  /**
+   * Returns the creator.
+   */
   String getCreatedBy();
 
+  /**
+   * Returns the creation date.
+   */
   GregorianCalendar getCreationDate();
 
+  /**
+   * Returns the last modification date.
+   */
   GregorianCalendar getLastModificationDate();
 
+  /**
+   * Returns the type id.
+   */
   String getTypeId();
 
+  /**
+   * Returns the base type.
+   */
   BaseObjectTypeIds getBaseType();
 
+  /**
+   * Returns <code>true</code> if the object is a document and if it is the current version or it is
+   * not versionable, <code>false</code> otherwise.
+   */
   boolean isCurrentVersion();
 
+  /**
+   * Returns <code>true</code> if the object is a document and it is versionable, <code>false</code>
+   * otherwise.
+   */
   boolean hasVersionHistory();
 
+  /**
+   * Returns the working copy id if the object is a document and a working copy exists,
+   * <code>null</code> otherwise.
+   */
   String getWorkingCopyId();
 
+  /**
+   * Returns the original id of the working copy if the object is a document and a working copy,
+   * <code>null</code> otherwise.
+   */
   String getWorkingCopyOriginalId();
 
+  /**
+   * Returns <code>true</code> if the object is a document and has content, <code>false</code>
+   * otherwise.
+   */
   boolean hasContent();
 
+  /**
+   * Returns the content type of the content if the object is a document and has content,
+   * <code>null</code> otherwise.
+   */
   String getContentType();
 
+  /**
+   * Returns the file name of the content if the object is a document and has content,
+   * <code>null</code> otherwise.
+   */
   String getFileName();
 
+  /**
+   * Returns rendition information if the object has renditions, <code>null</code> otherwise.
+   */
   List<RenditionInfo> getRenditionInfos();
 
+  /**
+   * Returns <code>true</code> if the object supports relationships even if no relationships exist,
+   * <code>false</code> otherwise.
+   */
   boolean supportsRelationships();
 
+  /**
+   * Returns <code>true</code> if the object supports policies even if no policies are applied,
+   * <code>false</code> otherwise.
+   */
   boolean supportsPolicies();
 
+  /**
+   * Returns <code>true</code> if the object has an ACL, <code>false</code> otherwise.
+   */
   boolean hasAcl();
 
+  /**
+   * Returns <code>true</code> if the object has at least one parent, <code>false</code> otherwise.
+   */
   boolean hasParent();
 
+  /**
+   * Returns <code>true</code> if the object is a folder and supports <code>getDescendants</code>,
+   * <code>false</code> otherwise.
+   */
   boolean supportsDescendants();
 
+  /**
+   * Returns <code>true</code> if the object is a folder and supports <code>getFolderTree</code>,
+   * <code>false</code> otherwise.
+   */
   boolean supportsFolderTree();
 
+  /**
+   * Returns the list of ids of the relationships that originate from this object, <code>null</code>
+   * is no such relationships exist.
+   */
   List<String> getRelationshipSourceIds();
 
+  /**
+   * Returns the list of ids of the relationships that point to this object, <code>null</code> is no
+   * such relationships exist.
+   */
   List<String> getRelationshipTargetIds();
 }

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfoHolder.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfoHolder.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfoHolder.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/ObjectInfoHolder.java Mon Feb 22 12:40:48 2010
@@ -19,8 +19,8 @@
 package org.apache.opencmis.server.spi;
 
 /**
- * This class contains information about an object. This data is used to generate the appropriate
- * links in AtomPub entries and feeds.
+ * This class contains information about a set of objects. This data is used to generate the
+ * appropriate links in AtomPub entries and feeds.
  * 
  * @author <a href="mailto:fmueller@opentext.com">Florian M&uuml;ller</a>
  * 

Modified: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/RenditionInfo.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/RenditionInfo.java?rev=912548&r1=912547&r2=912548&view=diff
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/RenditionInfo.java (original)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/RenditionInfo.java Mon Feb 22 12:40:48 2010
@@ -29,13 +29,28 @@
  */
 public interface RenditionInfo {
 
+  /**
+   * Return the id of the rendition.
+   */
   String getId();
 
+  /**
+   * Return the content type of the rendition.
+   */
   String getContenType();
 
+  /**
+   * Return the kind of the rendition.
+   */
   String getKind();
 
+  /**
+   * Return the title of the rendition.
+   */
   String getTitle();
 
+  /**
+   * Return the size of the rendition in bytes.
+   */
   BigInteger getLength();
 }

Added: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html
URL: http://svn.apache.org/viewvc/incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html?rev=912548&view=auto
==============================================================================
--- incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html (added)
+++ incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html Mon Feb 22 12:40:48 2010
@@ -0,0 +1,61 @@
+<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
+<!--
+   Licensed under the Apache License, Version 2.0 (the "License");
+   you may not use this file except in compliance with the License.
+   You may obtain a copy of the License at
+
+       http://www.apache.org/licenses/LICENSE-2.0
+
+   Unless required by applicable law or agreed to in writing, software
+   distributed under the License is distributed on an "AS IS" BASIS,
+   WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+   See the License for the specific language governing permissions and
+   limitations under the License.
+  -->
+<html>
+<head>
+</head>
+<body bgcolor="white">
+
+Provides interfaces and classes for CMIS repository connectors.
+
+<h2>Entry point</h2>
+
+<p>A repository connector has to extend the {@link
+org.apache.opencmis.server.spi.AbstractServicesFactory
+AbstractServicesFactory} class. This class manages the objects that
+implement the interfaces of the different CMIS services. There is only
+one active instance of this class per servlet context.</p>
+<p>The class name has to be set in the configuration file <code>/WEB-INF/classes/repository.properties</code>
+(<code>class=...</code>). The configuration file can contain more
+key-value pairs. They are passed to the {@link
+org.apache.opencmis.server.spi.AbstractServicesFactory#init init()}
+method when the servlet context starts up.</p>
+
+<h2>Common operation patterns</h2>
+
+<ul>
+	<li>The operations take the same parameters as described in the
+	CMIS specification. There are a few exceptions that are explained in
+	this JavaDoc.</li>
+
+	<li>The first parameter for all operations is a {@link
+	org.apache.opencmis.server.spi.CallContext CallContext} object. It is
+	used to transport authentication information to the connector.</li>
+
+	<li>Some operations have an additional {@link
+	org.apache.opencmis.server.spi.ObjectInfoHolder ObjectInfoHolder}
+	parameter. This object is only set if the call is an AtomPub call.
+	AtomPub entries and feeds require additional data about the objects
+	that should be returned AND the object that has been passed. In case of
+	a {@link
+	org.apache.opencmis.server.spi.CmisNavigationService#getChildren
+	getChildren()} call, for example, data about the children AND the
+	folder itself would be required. {@link
+	org.apache.opencmis.server.spi.ObjectInfoHolder ObjectInfoHolder}
+	collects {@link org.apache.opencmis.server.spi.ObjectInfo ObjectInfo}
+	objects.</li>
+</ul>
+
+</body>
+</html>

Propchange: incubator/chemistry/trunk/opencmis/opencmis-server/opencmis-server-spi/src/main/java/org/apache/opencmis/server/spi/package.html
------------------------------------------------------------------------------
    svn:eol-style = native