org.apache.slide.content
Class ContentImpl

java.lang.Object
  |
  +--org.apache.slide.content.ContentImpl
All Implemented Interfaces:
Content

public final class ContentImpl
extends java.lang.Object
implements Content

Implementation of the content interface.

Version:
$Revision: 1.29 $
Author:
Remy Maucherat

Field Summary
protected static int POST_RETRIEVE
           
protected static int POST_STORE
           
protected static int PRE_STORE
           
 
Constructor Summary
ContentImpl(Namespace namespace, NamespaceConfig namespaceConfig, Security securityHelper, Structure structureHelper, Lock lockHelper)
          Constructor.
 
Method Summary
 void create(SlideToken token, java.lang.String strUri, boolean isVersioned)
          Create new revision descriptors.
 void create(SlideToken token, java.lang.String strUri, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent)
          Create new revision in main branch.
protected  void create(SlideToken token, java.lang.String strUri, NodeRevisionNumber basedOnRevisionNumber, NodeRevisionDescriptor newRevisionDescriptor, NodeRevisionContent revisionContent)
          Create new revision based on a previous revision.
 void create(SlideToken token, java.lang.String strUri, java.lang.String branch, NodeRevisionDescriptor newRevisionDescriptor, NodeRevisionContent revisionContent)
          Create new revision based on a previous revision.
 void fork(SlideToken token, java.lang.String strUri, java.lang.String branchName, NodeRevisionDescriptor basedOnRevisionDescriptor)
          Create a branch based on specified revision.
 void fork(SlideToken token, java.lang.String strUri, java.lang.String branchName, NodeRevisionNumber basedOnRevisionNumber)
          Create a branch based on specified revision.
protected  void invokeInterceptors(SlideToken token, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent, int type)
          Invoke content interceptors.
 void merge(SlideToken token, java.lang.String strUri, NodeRevisionDescriptor mainBranch, NodeRevisionDescriptor branch, NodeRevisionDescriptor newRevisionDescriptor, NodeRevisionContent revisionContent)
          Merge specified branches into a single branch.
 void merge(SlideToken token, java.lang.String strUri, java.lang.String mainBranch, java.lang.String branch, NodeRevisionDescriptor newRevisionDescriptor, NodeRevisionContent revisionContent)
          Merge specified branches into a single branch.
 void remove(SlideToken token, NodeRevisionDescriptors revisionDescriptors)
          Remove all revisions at this Uri.
 void remove(SlideToken token, java.lang.String strUri, NodeRevisionDescriptor revisionDescriptor)
          Remove specified revision.
 void remove(SlideToken token, java.lang.String strUri, NodeRevisionNumber revisionNumber)
          Remove specified revision.
 NodeRevisionDescriptor retrieve(SlideToken token, NodeRevisionDescriptors revisionDescriptors)
          Retrieve revision descriptor from the latest revision in the main branch.
 NodeRevisionContent retrieve(SlideToken token, NodeRevisionDescriptors revisionDescriptors, NodeRevisionDescriptor revisionDescriptor)
          Retrieve revision content.
 NodeRevisionDescriptor retrieve(SlideToken token, NodeRevisionDescriptors revisionDescriptors, NodeRevisionNumber revisionNumber)
          Retrieve revision descriptor.
 NodeRevisionDescriptor retrieve(SlideToken token, NodeRevisionDescriptors revisionDescriptors, java.lang.String branch)
          Retrieve revision descriptor.
 NodeRevisionDescriptors retrieve(SlideToken token, java.lang.String strUri)
          Retrieve revision descriptors.
 NodeRevisionContent retrieve(SlideToken token, java.lang.String strUri, NodeRevisionDescriptor revisionDescriptor)
          Retrieve revision content.
protected  void setDefaultProperties(ObjectNode associatedObject, NodeRevisionDescriptor revisionDescriptor)
          Set default properties for a revision descriptors.
 void store(SlideToken token, java.lang.String strUri, NodeRevisionDescriptor revisionDescriptor, NodeRevisionContent revisionContent)
          Update contents of an existing revision.
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

PRE_STORE

protected static final int PRE_STORE

POST_STORE

protected static final int POST_STORE

POST_RETRIEVE

protected static final int POST_RETRIEVE
Constructor Detail

ContentImpl

public ContentImpl(Namespace namespace,
                   NamespaceConfig namespaceConfig,
                   Security securityHelper,
                   Structure structureHelper,
                   Lock lockHelper)
Constructor.
Parameters:
namespace - Namespace
namespaceConfig - Namespace configuration
securityHelper - Security helper
dataHelper - Data helper
lockHelper - lockHelper
Method Detail

retrieve

public NodeRevisionDescriptors retrieve(SlideToken token,
                                        java.lang.String strUri)
                                 throws ObjectNotFoundException,
                                        AccessDeniedException,
                                        LinkedObjectNotFoundException,
                                        ServiceAccessException,
                                        ObjectLockedException
Retrieve revision descriptors.
Specified by:
retrieve in interface Content
Parameters:
strUri - Uri
Returns:
NodeRevisionDescriptors

retrieve

public NodeRevisionDescriptor retrieve(SlideToken token,
                                       NodeRevisionDescriptors revisionDescriptors,
                                       java.lang.String branch)
                                throws ObjectNotFoundException,
                                       AccessDeniedException,
                                       LinkedObjectNotFoundException,
                                       ServiceAccessException,
                                       RevisionDescriptorNotFoundException,
                                       ObjectLockedException,
                                       BranchNotFoundException,
                                       NodeNotVersionedException
Retrieve revision descriptor.
Specified by:
retrieve in interface Content
Parameters:
revisionDescriptors - Node revision descriptors
revisionNumber - Node revision number

retrieve

public NodeRevisionDescriptor retrieve(SlideToken token,
                                       NodeRevisionDescriptors revisionDescriptors,
                                       NodeRevisionNumber revisionNumber)
                                throws ObjectNotFoundException,
                                       AccessDeniedException,
                                       LinkedObjectNotFoundException,
                                       ServiceAccessException,
                                       RevisionDescriptorNotFoundException,
                                       ObjectLockedException
Retrieve revision descriptor.
Specified by:
retrieve in interface Content
Parameters:
revisionDescriptors - Node revision descriptors
revisionNumber - Node revision number

retrieve

public NodeRevisionDescriptor retrieve(SlideToken token,
                                       NodeRevisionDescriptors revisionDescriptors)
                                throws ObjectNotFoundException,
                                       AccessDeniedException,
                                       LinkedObjectNotFoundException,
                                       ServiceAccessException,
                                       RevisionDescriptorNotFoundException,
                                       ObjectLockedException
Retrieve revision descriptor from the latest revision in the main branch.
Specified by:
retrieve in interface Content
Parameters:
revisionDescriptors - Node revision descriptors

retrieve

public NodeRevisionContent retrieve(SlideToken token,
                                    NodeRevisionDescriptors revisionDescriptors,
                                    NodeRevisionDescriptor revisionDescriptor)
                             throws ObjectNotFoundException,
                                    AccessDeniedException,
                                    LinkedObjectNotFoundException,
                                    ServiceAccessException,
                                    RevisionNotFoundException,
                                    RevisionContentNotFoundException,
                                    ObjectLockedException
Retrieve revision content.
Specified by:
retrieve in interface Content
Parameters:
revisionDescriptors - Node revision descriptors
revisionDescriptor - Node revision descriptor

retrieve

public NodeRevisionContent retrieve(SlideToken token,
                                    java.lang.String strUri,
                                    NodeRevisionDescriptor revisionDescriptor)
                             throws ObjectNotFoundException,
                                    AccessDeniedException,
                                    LinkedObjectNotFoundException,
                                    ServiceAccessException,
                                    RevisionNotFoundException,
                                    RevisionContentNotFoundException,
                                    ObjectLockedException
Retrieve revision content.
Specified by:
retrieve in interface Content
Parameters:
strUri - Uri
revisionDescriptor - Node revision descriptor

create

public void create(SlideToken token,
                   java.lang.String strUri,
                   boolean isVersioned)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   ObjectLockedException
Create new revision descriptors.
Specified by:
create in interface Content
Parameters:
strUri - Uri
isVersioned - true is the resource is versioned

create

public void create(SlideToken token,
                   java.lang.String strUri,
                   NodeRevisionDescriptor revisionDescriptor,
                   NodeRevisionContent revisionContent)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   RevisionAlreadyExistException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   ObjectLockedException
Create new revision in main branch.
Specified by:
create in interface Content
Parameters:
strUri - Uri
revisionDescriptor - New Node revision descriptor
revisionContent - New Node revision content

create

public void create(SlideToken token,
                   java.lang.String strUri,
                   java.lang.String branch,
                   NodeRevisionDescriptor newRevisionDescriptor,
                   NodeRevisionContent revisionContent)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   RevisionAlreadyExistException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   RevisionDescriptorNotFoundException,
                   ObjectLockedException,
                   NodeNotVersionedException,
                   BranchNotFoundException
Create new revision based on a previous revision.
Specified by:
create in interface Content
Parameters:
strUri - Uri
branch - Branch in which to create the revision
newRevisionDescriptor - New revision descriptor
revisionContent - Node revision content

fork

public void fork(SlideToken token,
                 java.lang.String strUri,
                 java.lang.String branchName,
                 NodeRevisionDescriptor basedOnRevisionDescriptor)
          throws ObjectNotFoundException,
                 AccessDeniedException,
                 LinkedObjectNotFoundException,
                 ServiceAccessException,
                 RevisionDescriptorNotFoundException,
                 ObjectLockedException,
                 NodeNotVersionedException,
                 RevisionAlreadyExistException
Create a branch based on specified revision.
Specified by:
fork in interface Content
Parameters:
strUri - Uri
branchName - Name of the new branch
basedOnRevisionDescriptor - Node revision descriptor of the revision on which the new branch is based on

fork

public void fork(SlideToken token,
                 java.lang.String strUri,
                 java.lang.String branchName,
                 NodeRevisionNumber basedOnRevisionNumber)
          throws ObjectNotFoundException,
                 AccessDeniedException,
                 LinkedObjectNotFoundException,
                 ServiceAccessException,
                 RevisionDescriptorNotFoundException,
                 ObjectLockedException,
                 NodeNotVersionedException,
                 RevisionAlreadyExistException
Create a branch based on specified revision.
Specified by:
fork in interface Content
Parameters:
strUri - Uri
branchName - Name of the new branch
basedOnRevisionNumber - Node revision number of the revision on which the new branch is based on

merge

public void merge(SlideToken token,
                  java.lang.String strUri,
                  NodeRevisionDescriptor mainBranch,
                  NodeRevisionDescriptor branch,
                  NodeRevisionDescriptor newRevisionDescriptor,
                  NodeRevisionContent revisionContent)
           throws ObjectNotFoundException,
                  AccessDeniedException,
                  LinkedObjectNotFoundException,
                  ServiceAccessException,
                  RevisionDescriptorNotFoundException,
                  ObjectLockedException,
                  NodeNotVersionedException,
                  BranchNotFoundException,
                  RevisionAlreadyExistException
Merge specified branches into a single branch.
Specified by:
merge in interface Content
Parameters:
strUri - Uri
mainBranch - Branch into which the other branch will be merged
branch - Branch to merge into main branch
newRevisionDescriptor - New revision descriptor
revisionContent - Node revision content

merge

public void merge(SlideToken token,
                  java.lang.String strUri,
                  java.lang.String mainBranch,
                  java.lang.String branch,
                  NodeRevisionDescriptor newRevisionDescriptor,
                  NodeRevisionContent revisionContent)
           throws ObjectNotFoundException,
                  AccessDeniedException,
                  LinkedObjectNotFoundException,
                  ServiceAccessException,
                  RevisionDescriptorNotFoundException,
                  ObjectLockedException,
                  NodeNotVersionedException,
                  BranchNotFoundException,
                  RevisionAlreadyExistException
Merge specified branches into a single branch.
Specified by:
merge in interface Content
Parameters:
strUri - Uri
mainBranch - Branch into which the other branch will be merged
branch - Branch to merge into main branch
newRevisionDescriptor - New revision descriptor
revisionContent - Node revision content

store

public void store(SlideToken token,
                  java.lang.String strUri,
                  NodeRevisionDescriptor revisionDescriptor,
                  NodeRevisionContent revisionContent)
           throws ObjectNotFoundException,
                  AccessDeniedException,
                  LinkedObjectNotFoundException,
                  ServiceAccessException,
                  RevisionDescriptorNotFoundException,
                  ObjectLockedException,
                  RevisionNotFoundException
Update contents of an existing revision.
Specified by:
store in interface Content
Parameters:
strUri - Uri
revisionDescriptor - Revision descriptor
revisionContent - Revision content

remove

public void remove(SlideToken token,
                   NodeRevisionDescriptors revisionDescriptors)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   RevisionDescriptorNotFoundException,
                   ObjectLockedException
Remove all revisions at this Uri.
Specified by:
remove in interface Content
Parameters:
revisionDescriptors - Node revision descriptors

remove

public void remove(SlideToken token,
                   java.lang.String strUri,
                   NodeRevisionDescriptor revisionDescriptor)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   RevisionDescriptorNotFoundException,
                   ObjectLockedException
Remove specified revision.
Specified by:
remove in interface Content
Parameters:
strUri - Uri
revisionDescriptor - Node revision descriptor

remove

public void remove(SlideToken token,
                   java.lang.String strUri,
                   NodeRevisionNumber revisionNumber)
            throws ObjectNotFoundException,
                   AccessDeniedException,
                   LinkedObjectNotFoundException,
                   ServiceAccessException,
                   RevisionDescriptorNotFoundException,
                   ObjectLockedException
Remove specified revision.
Specified by:
remove in interface Content
Parameters:
strUri - Uri
revisionNumber - Revision number

create

protected void create(SlideToken token,
                      java.lang.String strUri,
                      NodeRevisionNumber basedOnRevisionNumber,
                      NodeRevisionDescriptor newRevisionDescriptor,
                      NodeRevisionContent revisionContent)
               throws ObjectNotFoundException,
                      AccessDeniedException,
                      RevisionAlreadyExistException,
                      LinkedObjectNotFoundException,
                      ServiceAccessException,
                      RevisionDescriptorNotFoundException,
                      ObjectLockedException,
                      NodeNotVersionedException
Create new revision based on a previous revision.
Parameters:
strUri - Uri
oldRevisionDescriptor - Node revision descriptor on which the new revision is based
newRevisionDescriptor - New revision descriptor
revisionContent - Node revision content

setDefaultProperties

protected void setDefaultProperties(ObjectNode associatedObject,
                                    NodeRevisionDescriptor revisionDescriptor)
Set default properties for a revision descriptors.

invokeInterceptors

protected void invokeInterceptors(SlideToken token,
                                  NodeRevisionDescriptors revisionDescriptors,
                                  NodeRevisionDescriptor revisionDescriptor,
                                  NodeRevisionContent revisionContent,
                                  int type)
Invoke content interceptors.