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/04/25 03:15:32 UTC
svn commit: r937731 - in /incubator/chemistry/opencmis/trunk:
chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/
chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/
...
Author: fmui
Date: Sun Apr 25 01:15:31 2010
New Revision: 937731
URL: http://svn.apache.org/viewvc?rev=937731&view=rev
Log:
more JavaDoc and documentation clean up
Added:
incubator/chemistry/opencmis/trunk/src/site/apt/client-binding.apt
- copied, changed from r937527, incubator/chemistry/opencmis/trunk/src/site/apt/client-provider.apt
Removed:
incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-bindings/src/main/java/org/apache/chemistry/opencmis/server/impl/ObjectInfoHolderImpl.java
incubator/chemistry/opencmis/trunk/src/site/apt/client-provider.apt
Modified:
incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/index.apt
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/AclService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/DiscoveryService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/MultiFilingService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/NavigationService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/ObjectService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/PolicyService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RelationshipService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RepositoryService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/VersioningService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisService.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisServiceFactory.java
incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-support/src/main/java/org/apache/chemistry/opencmis/server/support/CmisServiceWrapper.java
incubator/chemistry/opencmis/trunk/src/site/apt/browser.apt
incubator/chemistry/opencmis/trunk/src/site/apt/client-api.apt
incubator/chemistry/opencmis/trunk/src/site/apt/index.apt
incubator/chemistry/opencmis/trunk/src/site/apt/server-fileshare.apt
incubator/chemistry/opencmis/trunk/src/site/apt/server-inmemory.apt
incubator/chemistry/opencmis/trunk/src/site/apt/server.apt
incubator/chemistry/opencmis/trunk/src/site/site.xml
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/index.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/index.apt (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-client/chemistry-opencmis-client-bindings/src/site/apt/index.apt Sun Apr 25 01:15:31 2010
@@ -1,5 +1,5 @@
-----
- OpenCMIS Provider Layer
+ OpenCMIS Client Binding Layer
-----
JUnit Test Parameters
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/AclService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/AclService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/AclService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/AclService.java Sun Apr 25 01:15:31 2010
@@ -21,18 +21,45 @@ package org.apache.chemistry.opencmis.co
import org.apache.chemistry.opencmis.commons.enums.AclPropagation;
/**
- * ACL Service interface. See CMIS 1.0 domain model for details.
+ * ACL Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface AclService {
+ /**
+ * Get the ACL currently applied to the specified object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
+ * @param onlyBasicPermissions
+ * <em>(optional)</em> an indicator if only basic permissions
+ * should be returned (default is <code>true</code>)
+ */
Acl getAcl(String repositoryId, String objectId, Boolean onlyBasicPermissions, ExtensionsData extension);
+ /**
+ * Adds or removes the given ACEs to or from the ACL of the object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
+ * @param addAces
+ * <em>(optional)</em> the ACEs to be added
+ * @param removeAces
+ * <em>(optional)</em> the ACEs to be removed
+ * @param aclPropagation
+ * <em>(optional)</em> specifies how ACEs should be handled
+ * (default is {@link AclPropagation#REPOSITORYDETERMINED})
+ */
Acl applyAcl(String repositoryId, String objectId, Acl addAces, Acl removeAces, AclPropagation aclPropagation,
ExtensionsData extension);
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/DiscoveryService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/DiscoveryService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/DiscoveryService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/DiscoveryService.java Sun Apr 25 01:15:31 2010
@@ -23,20 +23,27 @@ import java.math.BigInteger;
import org.apache.chemistry.opencmis.commons.enums.IncludeRelationships;
/**
- * Discovery Service interface. See CMIS 1.0 domain model for details.
+ * Discovery Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface DiscoveryService {
+ /**
+ * Executes a CMIS query statement against the contents of the repository.
+ */
public ObjectList query(String repositoryId, String statement, Boolean searchAllVersions,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
+ /**
+ * Gets a list of content changes.
+ */
public ObjectList getContentChanges(String repositoryId, Holder<String> changeLogToken, Boolean includeProperties,
String filter, Boolean includePolicyIds, Boolean includeAcl, BigInteger maxItems, ExtensionsData extension);
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/MultiFilingService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/MultiFilingService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/MultiFilingService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/MultiFilingService.java Sun Apr 25 01:15:31 2010
@@ -19,19 +19,25 @@
package org.apache.chemistry.opencmis.commons.api;
/**
- * MultiFiling Service interface. See CMIS 1.0 domain model for details.
+ * MultiFiling Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface MultiFilingService {
+ /**
+ * Adds an existing fileable non-folder object to a folder.
+ */
void addObjectToFolder(String repositoryId, String objectId, String folderId, Boolean allVersions,
ExtensionsData extension);
+ /**
+ * Removes an existing fileable non-folder object from a folder.
+ */
void removeObjectFromFolder(String repositoryId, String objectId, String folderId, ExtensionsData extension);
-
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/NavigationService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/NavigationService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/NavigationService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/NavigationService.java Sun Apr 25 01:15:31 2010
@@ -24,28 +24,88 @@ import java.util.List;
import org.apache.chemistry.opencmis.commons.enums.IncludeRelationships;
/**
- * Navigation Service interface. See CMIS 1.0 domain model for details.
+ * Navigation Service interface.
+ *
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface NavigationService {
+ /**
+ * Gets the list of child objects contained in the specified folder.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param maxItems
+ * <em>(optional)</em> the maximum number of items to return in a
+ * response (default is repository specific)
+ * @param skipCount
+ * <em>(optional)</em> number of potential results that the
+ * repository MUST skip/page over before returning any results
+ * (default is 0)
+ */
ObjectInFolderList getChildren(String repositoryId, String folderId, String filter, String orderBy,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
Boolean includePathSegment, BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
+ /**
+ * Gets the set of descendant objects contained in the specified folder or
+ * any of its child folders.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
List<ObjectInFolderContainer> getDescendants(String repositoryId, String folderId, BigInteger depth, String filter,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
Boolean includePathSegment, ExtensionsData extension);
+ /**
+ * Gets the set of descendant folder objects contained in the specified
+ * folder.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
List<ObjectInFolderContainer> getFolderTree(String repositoryId, String folderId, BigInteger depth, String filter,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
Boolean includePathSegment, ExtensionsData extension);
+ /**
+ * Gets the parent folder(s) for the specified non-folder, fileable object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
List<ObjectParentData> getObjectParents(String repositoryId, String objectId, String filter,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
Boolean includeRelativePathSegment, ExtensionsData extension);
+ /**
+ * Gets the parent folder object for the specified folder object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
ObjectData getFolderParent(String repositoryId, String folderId, String filter, ExtensionsData extension);
+ /**
+ * Gets the list of documents that are checked out that the user has access
+ * to.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param maxItems
+ * <em>(optional)</em> the maximum number of items to return in a
+ * response (default is repository specific)
+ * @param skipCount
+ * <em>(optional)</em> number of potential results that the
+ * repository MUST skip/page over before returning any results
+ * (default is 0)
+ */
ObjectList getCheckedOutDocs(String repositoryId, String folderId, String filter, String orderBy,
Boolean includeAllowableActions, IncludeRelationships includeRelationships, String renditionFilter,
BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/ObjectService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/ObjectService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/ObjectService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/ObjectService.java Sun Apr 25 01:15:31 2010
@@ -26,65 +26,210 @@ import org.apache.chemistry.opencmis.com
import org.apache.chemistry.opencmis.commons.enums.VersioningState;
/**
- * Object Service interface. See CMIS 1.0 domain model for details.
+ * Object Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface ObjectService {
+ /**
+ * Creates a document object of the specified type (given by the
+ * cmis:objectTypeId property) in the (optionally) specified location.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param properties
+ * the property values that MUST be applied to the newly created
+ * document object
+ * @param folderId
+ * <em>(optional)</em> if specified, the identifier for the
+ * folder that MUST be the parent folder for the newly created
+ * document object
+ * @param contentStream
+ * <em>(optional)</em> the content stream that MUST be stored for
+ * the newly created document object
+ * @param versioningState
+ * <em>(optional)</em> specifies what the versioning state of the
+ * newly created object MUST be (default is
+ * {@link VersioningState#MAJOR})
+ * @param policies
+ * <em>(optional)</em> a list of policy IDs that MUST be applied
+ * to the newly created document object
+ * @param addAces
+ * <em>(optional)</em> a list of ACEs that MUST be added to the
+ * newly created document object, either using the ACL from
+ * <code>folderId</code> if specified, or being applied if no
+ * <code>folderId</code> is specified
+ * @param removeAces
+ * <em>(optional)</em> a list of ACEs that MUST be removed from
+ * the newly created document object, either using the ACL from
+ * <code>folderId</code> if specified, or being ignored if no
+ * <code>folderId</code> is specified
+ */
String createDocument(String repositoryId, Properties properties, String folderId, ContentStream contentStream,
VersioningState versioningState, List<String> policies, Acl addAces, Acl removeAces,
ExtensionsData extension);
+ /**
+ * Creates a document object as a copy of the given source document in the
+ * (optionally) specified location.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
String createDocumentFromSource(String repositoryId, String sourceId, Properties properties, String folderId,
VersioningState versioningState, List<String> policies, Acl addAces, Acl removeAces,
ExtensionsData extension);
+ /**
+ * Creates a folder object of the specified type (given by the
+ * cmis:objectTypeId property) in the specified location.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
String createFolder(String repositoryId, Properties properties, String folderId, List<String> policies,
Acl addAces, Acl removeAces, ExtensionsData extension);
+ /**
+ * Creates a relationship object of the specified type (given by the
+ * cmis:objectTypeId property).
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
String createRelationship(String repositoryId, Properties properties, List<String> policies, Acl addAces,
Acl removeAces, ExtensionsData extension);
+ /**
+ * Creates a policy object of the specified type (given by the
+ * cmis:objectTypeId property).
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
String createPolicy(String repositoryId, Properties properties, String folderId, List<String> policies,
Acl addAces, Acl removeAces, ExtensionsData extension);
+ /**
+ * Gets the list of allowable actions for an object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
AllowableActions getAllowableActions(String repositoryId, String objectId, ExtensionsData extension);
+ /**
+ * Gets the specified information for the object specified by id.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
ObjectData getObject(String repositoryId, String objectId, String filter, Boolean includeAllowableActions,
IncludeRelationships includeRelationships, String renditionFilter, Boolean includePolicyIds,
Boolean includeAcl, ExtensionsData extension);
+ /**
+ * Gets the list of properties for an object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
Properties getProperties(String repositoryId, String objectId, String filter, ExtensionsData extension);
+ /**
+ * Gets the list of associated renditions for the specified object. Only
+ * rendition attributes are returned, not rendition stream.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
List<RenditionData> getRenditions(String repositoryId, String objectId, String renditionFilter,
BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
+ /**
+ * Gets the specified information for the object specified by path.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
ObjectData getObjectByPath(String repositoryId, String path, String filter, Boolean includeAllowableActions,
IncludeRelationships includeRelationships, String renditionFilter, Boolean includePolicyIds,
Boolean includeAcl, ExtensionsData extension);
+ /**
+ * Gets the content stream for the specified document object, or gets a
+ * rendition stream for a specified rendition of a document or folder
+ * object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
ContentStream getContentStream(String repositoryId, String objectId, String streamId, BigInteger offset,
BigInteger length, ExtensionsData extension);
+ /**
+ * Updates properties of the specified object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
void updateProperties(String repositoryId, Holder<String> objectId, Holder<String> changeToken,
Properties properties, ExtensionsData extension);
+ /**
+ * Moves the specified file-able object from one folder to another.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
void moveObject(String repositoryId, Holder<String> objectId, String targetFolderId, String sourceFolderId,
ExtensionsData extension);
+ /**
+ * Deletes the specified object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
+ * @param allVersions
+ * <em>(optional)</em> If <code>true</code> then delete all
+ * versions of the document, otherwise delete only the document
+ * object specified (default is <code>true</code>)
+ */
void deleteObject(String repositoryId, String objectId, Boolean allVersions, ExtensionsData extension);
+ /**
+ * Deletes the specified folder object and all of its child- and
+ * descendant-objects.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
FailedToDeleteData deleteTree(String repositoryId, String folderId, Boolean allVersions,
UnfileObject unfileObjects, Boolean continueOnFailure, ExtensionsData extension);
+ /**
+ * Sets the content stream for the specified document object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
void setContentStream(String repositoryId, Holder<String> objectId, Boolean overwriteFlag,
Holder<String> changeToken, ContentStream contentStream, ExtensionsData extension);
+ /**
+ * Deletes the content stream for the specified document object.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ */
void deleteContentStream(String repositoryId, Holder<String> objectId, Holder<String> changeToken,
ExtensionsData extension);
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/PolicyService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/PolicyService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/PolicyService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/PolicyService.java Sun Apr 25 01:15:31 2010
@@ -21,21 +21,30 @@ package org.apache.chemistry.opencmis.co
import java.util.List;
/**
- * Policy Service interface. See CMIS 1.0 domain model for details.
+ * Policy Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface PolicyService {
+ /**
+ * Applies a specified policy to an object.
+ */
public void applyPolicy(String repositoryId, String policyId, String objectId, ExtensionsData extension);
+ /**
+ * Removes a specified policy from an object.
+ */
public void removePolicy(String repositoryId, String policyId, String objectId, ExtensionsData extension);
+ /**
+ * Gets the list of policies currently applied to the specified object.
+ */
public List<ObjectData> getAppliedPolicies(String repositoryId, String objectId, String filter,
ExtensionsData extension);
-
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RelationshipService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RelationshipService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RelationshipService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RelationshipService.java Sun Apr 25 01:15:31 2010
@@ -23,18 +23,22 @@ import java.math.BigInteger;
import org.apache.chemistry.opencmis.commons.enums.RelationshipDirection;
/**
- * Relationship Service interface. See CMIS 1.0 domain model for details.
+ * Relationship Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface RelationshipService {
+ /**
+ * Gets all or a subset of relationships associated with an independent
+ * object.
+ */
public ObjectList getObjectRelationships(String repositoryId, String objectId, Boolean includeSubRelationshipTypes,
RelationshipDirection relationshipDirection, String typeId, String filter, Boolean includeAllowableActions,
BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
-
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RepositoryService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RepositoryService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RepositoryService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/RepositoryService.java Sun Apr 25 01:15:31 2010
@@ -22,19 +22,29 @@ import java.math.BigInteger;
import java.util.List;
/**
- * Repository Service interface. See CMIS 1.0 domain model for details.
+ * Repository Service interface.
+ *
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface RepositoryService {
/**
- * Returns a list of CMIS repositories available from this CMIS service
- * endpoint.
+ * Returns a list of CMIS repository information available from this CMIS
+ * service endpoint.
+ *
+ * In contrast to the CMIS specification this method returns repository
+ * infos not only repository ids.
*/
List<RepositoryInfo> getRepositoryInfos(ExtensionsData extension);
/**
* Returns information about the CMIS repository, the optional capabilities
- * it supports and its Access Control information if applicable.
+ * it supports and its access control information if applicable.
*
* @param repositoryId
* the identifier for the repository
@@ -42,17 +52,26 @@ public interface RepositoryService {
RepositoryInfo getRepositoryInfo(String repositoryId, ExtensionsData extension);
/**
- * Returns the list of Object-Types defined for the Repository that are
- * children of the specified Type.
+ * Returns the list of object types defined for the repository that are
+ * children of the specified type.
*
* @param repositoryId
* the identifier for the repository
* @param typeId
- * optional) the typeId of an Object-Type specified in the
- * repository
+ * <em>(optional)</em> the typeId of an object type specified in
+ * the repository (if not specified the repository MUST return
+ * all base object types)
* @param includePropertyDefinitions
- * (optional) if <code>true</code>, then the Repository MUST
+ * <em>(optional)</em> if <code>true</code> the repository MUST
* return the property definitions for each object type returned
+ * (default is <code>false</code>)
+ * @param maxItems
+ * <em>(optional)</em> the maximum number of items to return in a
+ * response (default is repository specific)
+ * @param skipCount
+ * <em>(optional)</em> number of potential results that the
+ * repository MUST skip/page over before returning any results
+ * (default is 0)
*/
TypeDefinitionList getTypeChildren(String repositoryId, String typeId, Boolean includePropertyDefinitions,
BigInteger maxItems, BigInteger skipCount, ExtensionsData extension);
@@ -60,12 +79,32 @@ public interface RepositoryService {
/**
* Returns the set of descendant object type defined for the repository
* under the specified type.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param typeId
+ * <em>(optional)</em> the typeId of an object type specified in
+ * the repository (if not specified the repository MUST return
+ * all types and MUST ignore the value of the depth parameter)
+ * @param depth
+ * <em>(optional)</em> the number of levels of depth in the type
+ * hierarchy from which to return results (default is repository
+ * specific)
+ * @param includePropertyDefinitions
+ * <em>(optional)</em> if <code>true</code> the repository MUST
+ * return the property definitions for each object type returned
+ * (default is <code>false</code>)
*/
List<TypeDefinitionContainer> getTypeDescendants(String repositoryId, String typeId, BigInteger depth,
Boolean includePropertyDefinitions, ExtensionsData extension);
/**
* Gets the definition of the specified object type.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param typeId
+ * typeId of an object type specified in the repository
*/
TypeDefinition getTypeDefinition(String repositoryId, String typeId, ExtensionsData extension);
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/VersioningService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/VersioningService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/VersioningService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/VersioningService.java Sun Apr 25 01:15:31 2010
@@ -23,31 +23,52 @@ import java.util.List;
import org.apache.chemistry.opencmis.commons.enums.IncludeRelationships;
/**
- * Versioning Service interface. See CMIS 1.0 domain model for details.
+ * Versioning Service interface.
*
- * @author <a href="mailto:fmueller@opentext.com">Florian Müller</a>
- *
- * @see <a
- * href="http://www.oasis-open.org/committees/tc_home.php?wg_abbrev=cmis">OASIS
- * CMIS Technical Committee</a>
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
*/
public interface VersioningService {
+ /**
+ * Create a private working copy of the document.
+ */
public void checkOut(String repositoryId, Holder<String> objectId, ExtensionsData extension,
Holder<Boolean> contentCopied);
+ /**
+ * Reverses the effect of a check-out.
+ */
public void cancelCheckOut(String repositoryId, String objectId, ExtensionsData extension);
+ /**
+ * Checks-in the private working copy (PWC) document.
+ */
public void checkIn(String repositoryId, Holder<String> objectId, Boolean major, Properties properties,
ContentStream contentStream, String checkinComment, List<String> policies, Acl addAces, Acl removeAces,
ExtensionsData extension);
+ /**
+ * Get the latest document object in the version series.
+ */
public ObjectData getObjectOfLatestVersion(String repositoryId, String objectId, String versionSeriesId,
Boolean major, String filter, Boolean includeAllowableActions, IncludeRelationships includeRelationships,
String renditionFilter, Boolean includePolicyIds, Boolean includeAcl, ExtensionsData extension);
+ /**
+ * Get a subset of the properties for the latest document object in the
+ * version series.
+ */
public Properties getPropertiesOfLatestVersion(String repositoryId, String objectId, String versionSeriesId,
Boolean major, String filter, ExtensionsData extension);
+ /**
+ * Returns the list of all document objects in the specified version series,
+ * sorted by the property "cmis:creationDate" descending.
+ */
public List<ObjectData> getAllVersions(String repositoryId, String objectId, String versionSeriesId, String filter,
Boolean includeAllowableActions, ExtensionsData extension);
}
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisService.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisService.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisService.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisService.java Sun Apr 25 01:15:31 2010
@@ -20,6 +20,18 @@ import org.apache.chemistry.opencmis.com
/**
* OpenCMIS server interface.
+ *
+ * <p>
+ * <em>
+ * See CMIS 1.0 specification for details on the operations, parameters,
+ * exceptions and the domain model.
+ * </em>
+ * </p>
+ *
+ * <p>
+ * This interface adds a few more operations to the operation set defined by
+ * CMIS to address binding specific requirements.
+ * </p>
*/
public interface CmisService extends RepositoryService, NavigationService, ObjectService, VersioningService,
DiscoveryService, MultiFilingService, RelationshipService, AclService, PolicyService {
@@ -29,6 +41,38 @@ public interface CmisService extends Rep
*
* The property "cmis:objectTypeId" defines the type and implicitly the base
* type.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param properties
+ * the property values that MUST be applied to the newly created
+ * object
+ * @param folderId
+ * <em>(optional)</em> if specified, the identifier for the
+ * folder that MUST be the parent folder for the newly created
+ * object
+ * @param contentStream
+ * <em>(optional)</em> if the object to create is a document
+ * object, the content stream that MUST be stored for the newly
+ * created document object
+ * @param versioningState
+ * <em>(optional)</em> if the object to create is a document
+ * object, it specifies what the versioning state of the newly
+ * created object MUST be (default is
+ * {@link VersioningState#MAJOR})
+ * @param policies
+ * <em>(optional)</em> a list of policy IDs that MUST be applied
+ * to the newly created object
+ * @param addAces
+ * <em>(optional)</em> a list of ACEs that MUST be added to the
+ * newly created object, either using the ACL from
+ * <code>folderId</code> if specified, or being applied if no
+ * <code>folderId</code> is specified
+ * @param removeAces
+ * <em>(optional)</em> a list of ACEs that MUST be removed from
+ * the newly created object, either using the ACL from
+ * <code>folderId</code> if specified, or being ignored if no
+ * <code>folderId</code> is specified
*/
String create(String repositoryId, Properties properties, String folderId, ContentStream contentStream,
VersioningState versioningState, List<String> policies, ExtensionsData extension);
@@ -40,6 +84,15 @@ public interface CmisService extends Rep
* 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.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
+ * @param allVersions
+ * <em>(optional)</em> If <code>true</code> then delete all
+ * versions of the document, otherwise delete only the document
+ * object specified (default is <code>true</code>)
*/
void deleteObjectOrCancelCheckOut(String repositoryId, String objectId, Boolean allVersions,
ExtensionsData extension);
@@ -50,6 +103,16 @@ public interface CmisService extends Rep
* 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.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
+ * @param aces
+ * the ACEs that should replace the current ACL of the object
+ * @param aclPropagation
+ * <em>(optional)</em> specifies how ACEs should be handled
+ * (default is {@link AclPropagation#REPOSITORYDETERMINED})
*/
Acl applyAcl(String repositoryId, String objectId, Acl aces, AclPropagation aclPropagation);
@@ -58,6 +121,11 @@ public interface CmisService extends Rep
* <code>null</code> if no object info exists.
*
* Only AtomPub requests will require object infos.
+ *
+ * @param repositoryId
+ * the identifier for the repository
+ * @param objectId
+ * the identifier for the object
*/
ObjectInfo getObjectInfo(String repositoryId, String objectId);
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisServiceFactory.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisServiceFactory.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisServiceFactory.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-commons/chemistry-opencmis-commons-api/src/main/java/org/apache/chemistry/opencmis/commons/api/server/CmisServiceFactory.java Sun Apr 25 01:15:31 2010
@@ -2,6 +2,9 @@ package org.apache.chemistry.opencmis.co
import java.util.Map;
+/**
+ * Factory for {@link CmisService} objects.
+ */
public interface CmisServiceFactory {
/**
Modified: incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-support/src/main/java/org/apache/chemistry/opencmis/server/support/CmisServiceWrapper.java
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-support/src/main/java/org/apache/chemistry/opencmis/server/support/CmisServiceWrapper.java?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-support/src/main/java/org/apache/chemistry/opencmis/server/support/CmisServiceWrapper.java (original)
+++ incubator/chemistry/opencmis/trunk/chemistry-opencmis-server/chemistry-opencmis-server-support/src/main/java/org/apache/chemistry/opencmis/server/support/CmisServiceWrapper.java Sun Apr 25 01:15:31 2010
@@ -283,7 +283,7 @@ public class CmisServiceWrapper<T extend
}
/**
- * Returns the <code>"cmis:none"<code> if <code>value</code> is
+ * Returns the <code>"cmis:none"</code> if <code>value</code> is
* <code>null</code>.
*/
protected String getDefaultRenditionFilter(String value) {
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/browser.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/browser.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/browser.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/browser.apt Sun Apr 25 01:15:31 2010
@@ -2,24 +2,4 @@
OpenCMIS Browser
-----
-OpenCMIS Browser
-
- The CMIS Browser is a simple web based tool to browse CMIS enabled
- repositories that support the AtomPub binding. It sits between the web
- browser of the end-user and the CMIS repository. It applies stylesheets
- to the Atom entries and feeds that repository returns and creates HTML
- pages that enable the end-user to navigate through the repository.
-
- The CMIS Browser consists of a small WAR file that doesn't require any
- configuration. Deploy it to a servlet engine and type
- <<<http://<host>/<context>/browse>>> in your web browser. Enter the URL
- of the AtomPub service document into the input box and start browsing.
-
-
-* Build and Deploy the CMIS Browser
-
- [[1]] {{{./how-to-build.html}Build OpenCMIS}}.
-
- [[2]] A ready-to-use WAR file should now exist in <<</opencmis-test/opencmis-test-browser/target>>>.
-
- [[3]] Deploy the WAR file to your favorite servlet engine.
\ No newline at end of file
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
\ No newline at end of file
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/client-api.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/client-api.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/client-api.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/client-api.apt Sun Apr 25 01:15:31 2010
@@ -2,18 +2,5 @@
OpenCMIS Client API
-----
-OpenCMIS Client API
-
- The OpenCMIS Client API is under development and not working yet.
-
- You can check the
- {{{./opencmis-commons-api/apidocs/index.html}OpenCMIS Commons JavaDoc}}
- and
- {{{./opencmis-client-api/apidocs/index.html}OpenCMIS Client API JavaDoc}}
- for a first impression.
-
-
- For the time being, you might want to use the
- {{{./client-provider.html}client provider layer}}. The interface is not
- as nice as the client API but it is feature complete and working.
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
\ No newline at end of file
Copied: incubator/chemistry/opencmis/trunk/src/site/apt/client-binding.apt (from r937527, incubator/chemistry/opencmis/trunk/src/site/apt/client-provider.apt)
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/client-binding.apt?p2=incubator/chemistry/opencmis/trunk/src/site/apt/client-binding.apt&p1=incubator/chemistry/opencmis/trunk/src/site/apt/client-provider.apt&r1=937527&r2=937731&rev=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/client-provider.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/client-binding.apt Sun Apr 25 01:15:31 2010
@@ -1,113 +1,5 @@
-----
- OpenCMIS Provider Layer
+ OpenCMIS Client Binding Layer
-----
-OpenCMIS Provider Layer
-
- The OpenCMIS provider layer hides the CMIS AtomPub and Web Services bindings
- and provides an interface that is very similar to the
- {{{http://docs.oasis-open.org/cmis/CMIS/v1.0/cd06/cmis-spec-v1.0.html#_Toc243905428}CMIS domain model}}.
- The services, operations, parameters, and structures are named after the
- CMIS domain model and behave as described in the CMIS specification.
-
- The primary objective of the provider layer is to be complete, covering all
- CMIS operations and extension points. The result is a somewhat bulky
- interface. The {{{./client-api.html}OpenCMIS Client API}} sits on top of the
- provider layer and exposes a nicer and simpler to use interface. It is the
- better choice for most applications.
-
- A connection to a CMIS repository is represented by a
- <<<{{{./opencmis-commons-api/apidocs/org/apache/chemistry/opencmis/commons/provider/CmisProvider.html}CmisProvider}}>>>
- object. Such an object can be created by the
- <<<{{{./opencmis-provider-impl/apidocs/org/apache/chemistry/opencmis/client/provider/factory/CmisProviderFactory.html}CmisProviderFactory}}>>>.
- The factory provides two main methods, one for each binding, that require
- binding specific connection information. The created <<<CmisProvider>>>
- object exposes a binding agnostic interface.
-
- <<<CmisProvider>>> is the entry point to the CMIS services and a few utility
- operations. It contains a transparent cache for repository infos and type
- definitions. The object is serializable, although dehydrating can be
- expensive.
-
- The <<<get*Service()>>> methods provide access to the CMIS services.
- Some service operations take provider layer specific objects. These objects
- should be created with the <<<ProviderObjectFactory>>>. This factory can be
- obtained through the <<<getObjectFactory()>>> method of the
- <<<CmisProvider>>> object.
-
- Please refer to the
- {{{./opencmis-commons-api/apidocs/index.html}OpenCMIS Commons JavaDoc}}
- and
- {{{./opencmis-client-api/apidocs/index.html}OpenCMIS Provider JavaDoc}}
- for more details on the interfaces.
-
-
-* Sample Code
-
-** Creating an AtomPub Provider
-
- The AtomPub provider requires the URL of the CMIS service document.
- HTTP basic authentication is enabled by default and a username and a
- password have to be provided.
-
-+---
-Map<String, String> parameters = new HashMap<String, String>();
-
-parameters.put(SessionParameter.USER, user);
-parameters.put(SessionParameter.PASSWORD, password);
-
-parameters.put(SessionParameter.ATOMPUB_URL, url); // service document URL
-
-CmisProviderFactory factory = CmisProviderFactory.newInstance();
-CmisProvider provider = factory.createCmisAtomPubProvider(parameters);
-+---
-
-
-** Creating a Web Services Provider
-
- The Web Services provider requires a WSDL URL for each CMIS service.
- This might the same the URL for all services. WS-Security (UsernameToken)
- is enabled by default and a username and a password have to be provided.
-
-+---
-Map<String, String> parameters = new HashMap<String, String>();
-
-parameters.put(SessionParameter.USER, username);
-parameters.put(SessionParameter.PASSWORD, password);
-
-parameters.put(SessionParameter.WEBSERVICES_REPOSITORY_SERVICE, repositoryServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_NAVIGATION_SERVICE, navigationServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_OBJECT_SERVICE, objectServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_VERSIONING_SERVICE, versioningServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_DISCOVERY_SERVICE, discoveryServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_RELATIONSHIP_SERVICE, relationshipServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_MULTIFILING_SERVICE, multiFilingServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_POLICY_SERVICE, policyServiceWsdlUrl);
-parameters.put(SessionParameter.WEBSERVICES_ACL_SERVICE, aclServiceWsdlUrl);
-
-CmisProviderFactory factory = CmisProviderFactory.newInstance();
-CmisProvider provider = factory.createCmisWebServicesProvider(parameters);
-+---
-
-
-** Getting an Object
-
- The following snippet gets the name of the object "myObject" in repository
- "myRepository". The parameters of <<<getObject()>>> can be found in the
- CMIS specification.
-
-+---
-CmisProvider provider = ...
-
-ObjectData myObject = provider.getObjectService().getObject("myRepository", "myObject",
- "*", true, IncludeRelationships.BOTH, "cmis:none", true, true, null);
-
-PropertiesData properties = myObject.getProperties();
-PropertyData<String> nameProperty = properties.getProperties().get(PropertyIds.CMIS_NAME);
-String name = nameProperty.getFirstValue();
-+---
-
-
-* Custom Authentication Provider
-
- tbw.
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/index.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/index.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/index.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/index.apt Sun Apr 25 01:15:31 2010
@@ -14,7 +14,7 @@ OpenCMIS
* {{{./client-api.html}Client API}}
- * {{{./client-provider.html}Provider Layer}}
+ * {{{./client-binding.html}Client Binding Layer}}
* <<CMIS Server>>
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/server-fileshare.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/server-fileshare.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/server-fileshare.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/server-fileshare.apt Sun Apr 25 01:15:31 2010
@@ -2,59 +2,4 @@
OpenCMIS FileShare Repository
-----
-OpenCMIS FileShare Repository
-
- <<This repository is not indented for productive use!>>
-
- The FileShare repository uses the file system as its back-end store and
- provides read/write access to content and metadata. In other words, it puts
- a CMIS interface on top of your file system.
-
- The repository is restricted by the capabilities of the file system and
- therefore does not support relationships, policies, document versions,
- multi-filing, un-filing and query.
-
- By default it provides a repository "test" that uses your home directory
- as the repository root. It requires authentication. A user "test" with the
- password "test" is pre-configured.
-
-
-* Build and Deploy the Test Repository
-
- [[1]] {{{./how-to-build.html}Build OpenCMIS}}.
-
- [[2]] A ready-to-use WAR file should now exist in <<</opencmis-server/opencmis-server-fileshare/target>>>.
-
- [[3]] Deploy the WAR file to your favorite servlet engine.
-
-
-* Configure the Repository
-
- The configuration file in the WAR file is
- <<</WEB-INF/classes/repository.properties>>>.
-
-+----+
-# Don't touch this line
-class=org.opencmis.fileshare.ServicesFactory
-
-# Login configuration
-# login.<no> = <user>:<password>
-login.1 = test:test
-login.2 = cmisuser:password
-login.3 = reader:reader
-
-# Type defintions (see example-type.xml)
-# type.<no> = <absolute path to type definition XML file>
-type.1 = /home/cmistest/type1.xml
-type.2 = /home/cmistest/type2.xml
-
-# Repository configuration
-# repository.<repositoryId> = <absolute path to repository root folder>
-# repository.<repositoryId>.readwrite = <comma separated list of login names>
-# repository.<repositoryId>.readonly = <comma separated list of login names>
-repository.test = /home/cmistest/myreproot
-repository.test.readwrite = test, cmisuser
-repository.test.readonly = reader
-+----+
-
-
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
\ No newline at end of file
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/server-inmemory.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/server-inmemory.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/server-inmemory.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/server-inmemory.apt Sun Apr 25 01:15:31 2010
@@ -2,109 +2,4 @@
OpenCMIS In-Memory Repository
-----
-OpenCMIS In-Memory Repository
-
- The OpenCMIS In-Memory is an implementation of a CMIS repository that holds content and
- all metadata in memory. After each restart therefore any data stored in the repository is
- lost. This implementation has two main purposes:
-
- [[1]] Provide a fast backend for testing purposes without any additional dependencies or
- configuration.
-
- [[2]] Provide a sample implementation for the server interface of OpenCMIS.
-
-
-* Status
-
- The code is unstable and under development. Expect any interface to change at any time.
- The following features are implemented:
-
- * Type System and Repository Service
-
- * Navigation
-
- * Object Service
-
- * Versioning
-
- Not supported are currently:
-
- * Query
-
- * Relationships
-
- * ACLs
-
- * Policies
-
- * Renditions
-
- * Unfiling
-
-
-* Build and Deploy the Repository
-
- [[1]] {{{./how-to-build.html}Build OpenCMIS}}.
-
- [[2]] A ready-to-use WAR file should now exist in <<</opencmis-server/opencmis-server-inmemory/target>>>.
-
- [[3]] Deploy the WAR file to your favorite servlet engine.
-
-
-* Configure the Repository
-
- The in-memory server has a couple of parameters that can be set in the repository.properties file
- ( <<</WEB-INF/classes/repository.properties>>> ).
- The CMIS specification does currently not allow to put a repository in a usable state in a
- bootstrap process. There is no administrative functionality available to create repositories
- or types. The in-memory repository implementation therefore provides a couple of settings that
- put the server in a usable state after startup. So, an initial repository is created and an initial
- set of type definitions is loaded. The id of the created repository can be configured. The types
- to be made available must be provided in a Java class as code. By default there is one such class
- in file <<<org.apache.chemistry.opencmis.inmemory.types.DefaultTypeSystemCreator.java>>> available. You can take
- this as an example if you want to provide your own custom types. Such a class must implement the
- <<<org.apache.chemistry.opencmis.inmemory.TypeCreator>>> interface which consists of a single method that returns
- a list of <<<TypeDefinition>>> objects. This method will be called once during startup.
-
- Some clients just support read-only access. The in-memory repository supports such clients
- by providing the possibility to fill a repository on start-up with data (folders and documents).
- The folder and document types to be used can be configured and also the number of documents
- and folders that are created. Those configuration parameters start with the prefix
- <<<RepositoryFiller.>>>
-
-
-+-----------------------------------------------------------------------------------------------------------------
-
-# In Memory Settings
- # The class that enables the in-memory repository as server implementation
-class=org.apache.chemistry.opencmis.inmemory.server.ServiceFactory
-
- # A repository that is created on start-up
-InMemoryServer.RepositoryId=A1
-
- # The class that used to initialize the type system (creates all types that are available)
-InMemoryServer.TypesCreatorClass=org.apache.chemistry.opencmis.inmemory.types.DefaultTypeSystemCreator
-
-# settings to initialize a repository with data on start-up
- # enable or disable
-RepositoryFiller.Enable=true
- # Type id of documents that are created
-RepositoryFiller.DocumentTypeId=ComplexType
- # Type id of folders that are created
-RepositoryFiller.FolderTypeId=cmis:folder
- # Number of documents created per folder
-RepositoryFiller.DocsPerFolder=3
- # Number of folders created per folder
-RepositoryFiller.FolderPerFolder=2
- # number of folder levels created (depth of hierarchy)
-RepositoryFiller.Depth=3
- # Size of content for documents (0=do not create content), default=0
-RepositoryFiller.ContentSizeInKB=32
- # properties to set for a document
-RepositoryFiller.DocumentProperty.0=StringProp
-#RepositoryFiller.DocumentProperty.1=StringPropMV
- # properties to set for a folder
-#RepositoryFiller.FolderProperty.0=StringFolderProp
-
-+-----------------------------------------------------------------------------------------------------------------
-
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
\ No newline at end of file
Modified: incubator/chemistry/opencmis/trunk/src/site/apt/server.apt
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/apt/server.apt?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/apt/server.apt (original)
+++ incubator/chemistry/opencmis/trunk/src/site/apt/server.apt Sun Apr 25 01:15:31 2010
@@ -2,81 +2,4 @@
OpenCMIS Server Framework
-----
-OpenCMIS Server Framework
-
- The OpenCMIS Server Framework provides a server implementation of both
- CMIS bindings, AtomPub and Web Services, and maps them to Java interfaces.
- Requests and data from CMIS clients are converted and pushed to a repository
- connector. The connector translates the CMIS calls into native repository
- calls.
-
-
-* Repository Connector Development
-
- This is a brief description of the interfaces and classes a repository
- connector has to extend and implement. For interface details see the
- {{{./opencmis-server-spi/apidocs/index.html}OpenCMIS Server Framework SPI JavaDoc}}.
-
-
-** Framework Entry Point
-
- A repository connector has to extend the
- <<<{{{./opencmis-server-spi/apidocs/org/apache/chemistry/opencmis/server/spi/AbstractServicesFactory.html}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. The class name has to be set in the
- configuration file <<</WEB-INF/classes/repository.properties>>>.
-
-+----+
-# set fully qualified class name
-class=org.repository.ServicesFactory
-+----+
-
- The configuration file can contain more key-value pairs. They are passed
- to the <<<init()>>> method of the <<<AbstractServicesFactory>>> object
- when the servlet context starts up.
-
-
-** Service Interfaces
-
- There is an interface for each service in the
- {{{http://docs.oasis-open.org/cmis/CMIS/v1.0/cd06/cmis-spec-v1.0.html}CMIS specification}}.
- Most methods are named after the operations described in the CMIS
- specification document. There are a few exceptions to that rule because the
- AtomPub binding doesn't always allow a one-to-one mapping. Those divergences
- are explained in the JavaDoc.
-
- The methods take the same parameters as described in the CMIS specification.
- There are also a few exceptions that are explained in the JavaDoc.
-
- The first parameter of all methods is the
- <<<{{{./opencmis-server-spi/apidocs/org/apache/chemistry/opencmis/server/spi/CallContext.html}CallContext}}>>>.
- It is used to
- transport authentication data to the connector.
- (See section "Authentictaion Framework".)
-
- Some methods have an additional
- <<<{{{./opencmis-server-spi/apidocs/org/apache/chemistry/opencmis/server/spi/ObjectInfoHolder.html}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 <<<getChildren()>>> call, for example, data about
- the children AND folder itself would be required.
- <<<ObjectInfoHolder>>> collects <<<ObjectInfo>>> objects.
-
-
-** Authentictaion Framework
-
- tbw.
-
-* Repository Connector Deployment
-
- The OpenCMIS build procress creates a WAR file in
- <<</opencmis-server/opencmis-server/target>>>. This WAR file should be used
- as a template. It can be deployed as it is but doesn't do anything.
-
- In order to use your connector, copy your compiled connector code into this
- WAR file and overwrite <<</WEB-INF/classes/repository.properties>>>.
-
- Have a look at the {{{./server-fileshare.html}OpenCMIS FileShare test repository}}
- code and <<<pom.xml>>>. It's a simple example of a repository connector.
+ Please see the {{{http://cwiki.apache.org/CMIS/opencmis.html}OpenCMIS Wiki}}.
\ No newline at end of file
Modified: incubator/chemistry/opencmis/trunk/src/site/site.xml
URL: http://svn.apache.org/viewvc/incubator/chemistry/opencmis/trunk/src/site/site.xml?rev=937731&r1=937730&r2=937731&view=diff
==============================================================================
--- incubator/chemistry/opencmis/trunk/src/site/site.xml (original)
+++ incubator/chemistry/opencmis/trunk/src/site/site.xml Sun Apr 25 01:15:31 2010
@@ -44,7 +44,7 @@
</menu>
<menu name="CMIS Client">
<item name="Client API" href="client-api.html" />
- <item name="Provider Layer" href="client-provider.html" />
+ <item name="Client Binding Layer" href="client-binding.html" />
</menu>
<menu name="CMIS Server">
<item name="Server Framework" href="server.html" />