org.apache.jackrabbit.webdav.simple
Class VersionHistoryResourceImpl

java.lang.Object
  extended by org.apache.jackrabbit.webdav.simple.DavResourceImpl
      extended by org.apache.jackrabbit.webdav.simple.DeltaVResourceImpl
          extended by org.apache.jackrabbit.webdav.simple.VersionHistoryResourceImpl
All Implemented Interfaces:
JcrConstants, BindableResource, DavResource, DeltaVResource, VersionHistoryResource

public class VersionHistoryResourceImpl
extends DeltaVResourceImpl
implements VersionHistoryResource

VersionHistoryResourceImpl represents a JCR version history.

See Also:
VersionHistory

Field Summary
 
Fields inherited from class org.apache.jackrabbit.webdav.simple.DeltaVResourceImpl
supportedReports
 
Fields inherited from class org.apache.jackrabbit.webdav.simple.DavResourceImpl
COMPLIANCE_CLASSES, METHODS, properties, propsInitialized
 
Fields inherited from interface org.apache.jackrabbit.webdav.version.VersionHistoryResource
METHODS, ROOT_VERSION, VERSION_SET
 
Fields inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource
METHODS_INCL_MKWORKSPACE
 
Fields inherited from interface org.apache.jackrabbit.JcrConstants
JCR_AUTOCREATED, JCR_BASEVERSION, JCR_CHILD, JCR_CHILDNODEDEFINITION, JCR_CONTENT, JCR_CREATED, JCR_DATA, JCR_DEFAULTPRIMARYTYPE, JCR_DEFAULTVALUES, JCR_ENCODING, JCR_FROZENMIXINTYPES, JCR_FROZENNODE, JCR_FROZENPRIMARYTYPE, JCR_FROZENUUID, JCR_HASORDERABLECHILDNODES, JCR_ISCHECKEDOUT, JCR_ISMIXIN, JCR_LANGUAGE, JCR_LASTMODIFIED, JCR_LOCKISDEEP, JCR_LOCKOWNER, JCR_MANDATORY, JCR_MERGEFAILED, JCR_MIMETYPE, JCR_MIXINTYPES, JCR_MULTIPLE, JCR_NAME, JCR_NODETYPENAME, JCR_ONPARENTVERSION, JCR_PATH, JCR_PREDECESSORS, JCR_PRIMARYITEMNAME, JCR_PRIMARYTYPE, JCR_PROPERTYDEFINITION, JCR_PROTECTED, JCR_REQUIREDPRIMARYTYPES, JCR_REQUIREDTYPE, JCR_ROOTVERSION, JCR_SAMENAMESIBLINGS, JCR_SCORE, JCR_STATEMENT, JCR_SUCCESSORS, JCR_SUPERTYPES, JCR_SYSTEM, JCR_UUID, JCR_VALUECONSTRAINTS, JCR_VERSIONABLEUUID, JCR_VERSIONHISTORY, JCR_VERSIONLABELS, JCR_VERSIONSTORAGE, MIX_LOCKABLE, MIX_REFERENCEABLE, MIX_SHAREABLE, MIX_VERSIONABLE, NT_BASE, NT_CHILDNODEDEFINITION, NT_FILE, NT_FOLDER, NT_FROZENNODE, NT_HIERARCHYNODE, NT_LINKEDFILE, NT_NODETYPE, NT_PROPERTYDEFINITION, NT_QUERY, NT_RESOURCE, NT_UNSTRUCTURED, NT_VERSION, NT_VERSIONEDCHILD, NT_VERSIONHISTORY, NT_VERSIONLABELS
 
Constructor Summary
VersionHistoryResourceImpl(DavResourceLocator locator, DavResourceFactory factory, DavSession session, ResourceConfig config, Item item)
           
 
Method Summary
 void addMember(DavResource member, InputContext inputContext)
          The version storage is read-only -> fails with 403.
 MultiStatusResponse alterProperties(List<? extends PropEntry> changeList)
          Version storage is read-only -> fails with 403.
 DavResourceIterator getMembers()
          Show all versions of this history as members.
 VersionResource[] getVersions()
          Return an array of VersionResources representing all versions present in the underlying JCR version history.
protected  void initProperties()
          Fill the property set for this resource.
 void removeMember(DavResource member)
          Removing a version resource is achieved by calling removeVersion on the versionhistory item this version belongs to.
 void removeProperty(DavPropertyName propertyName)
          Version storage is read-only -> fails with 403.
 void setProperty(DavProperty<?> property)
          Version storage is read-only -> fails with 403.
 
Methods inherited from class org.apache.jackrabbit.webdav.simple.DeltaVResourceImpl
addWorkspace, createResourceFromLocator, getComplianceClass, getHrefProperty, getLocatorFromNode, getLocatorFromNodePath, getOptionResponse, getReferenceResources, getReport, initSupportedReports
 
Methods inherited from class org.apache.jackrabbit.webdav.simple.DavResourceImpl
addLockManager, bind, copy, exists, getCollection, getDisplayName, getExportContext, getFactory, getHref, getImportContext, getLocator, getLock, getLocks, getModificationTime, getNode, getParentElements, getProperties, getProperty, getPropertyExportContext, getPropertyImportContext, getPropertyNames, getResourcePath, getSession, getSupportedMethods, hasLock, isCollection, isLockable, lock, move, rebind, refreshLock, spool, unlock
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource
addWorkspace, getOptionResponse, getReferenceResources, getReport
 
Methods inherited from interface org.apache.jackrabbit.webdav.DavResource
addLockManager, copy, exists, getCollection, getComplianceClass, getDisplayName, getFactory, getHref, getLocator, getLock, getLocks, getModificationTime, getProperties, getProperty, getPropertyNames, getResourcePath, getSession, getSupportedMethods, hasLock, isCollection, isLockable, lock, move, refreshLock, spool, unlock
 

Constructor Detail

VersionHistoryResourceImpl

public VersionHistoryResourceImpl(DavResourceLocator locator,
                                  DavResourceFactory factory,
                                  DavSession session,
                                  ResourceConfig config,
                                  Item item)
                           throws DavException
Throws:
DavException
Method Detail

getMembers

public DavResourceIterator getMembers()
Show all versions of this history as members.

Specified by:
getMembers in interface DavResource
Overrides:
getMembers in class DavResourceImpl
Returns:
See Also:
DavResource.getMembers()

addMember

public void addMember(DavResource member,
                      InputContext inputContext)
               throws DavException
The version storage is read-only -> fails with 403.

Specified by:
addMember in interface DavResource
Overrides:
addMember in class DavResourceImpl
Parameters:
member - DavResource to be added as internal member.
inputContext - Context providing the properties and content for the internal member to be created or replaced.
Throws:
DavException
See Also:
DavResource.addMember(DavResource, InputContext)

removeMember

public void removeMember(DavResource member)
                  throws DavException
Removing a version resource is achieved by calling removeVersion on the versionhistory item this version belongs to.

Specified by:
removeMember in interface DavResource
Overrides:
removeMember in class DavResourceImpl
Throws:
DavException - if the version does not exist or if an error occurs while deleting.
See Also:
DavResource.removeMember(org.apache.jackrabbit.webdav.DavResource)

setProperty

public void setProperty(DavProperty<?> property)
                 throws DavException
Version storage is read-only -> fails with 403.

Specified by:
setProperty in interface DavResource
Overrides:
setProperty in class DavResourceImpl
Throws:
DavException - if an error occurs
See Also:
DavResource.setProperty(DavProperty)

removeProperty

public void removeProperty(DavPropertyName propertyName)
                    throws DavException
Version storage is read-only -> fails with 403.

Specified by:
removeProperty in interface DavResource
Overrides:
removeProperty in class DavResourceImpl
Throws:
DavException - if an error occurs
See Also:
DavResource.removeProperty(DavPropertyName)

alterProperties

public MultiStatusResponse alterProperties(List<? extends PropEntry> changeList)
                                    throws DavException
Version storage is read-only -> fails with 403.

Specified by:
alterProperties in interface DavResource
Overrides:
alterProperties in class DavResourceImpl
Parameters:
changeList - list containing DavPropertyName objects (for properties to be removed) and DavProperty objects (for properties to be added/set).
Returns:
multistatus response listing the status resulting from setting and/or removing the specified properties, in order to allow a detailed multistatus response.
Throws:
DavException - if an error occurred. This may be the case if the general state of the resource prevents any properties to be set or removed (e.g. due to a lock).
See Also:
DavResource.alterProperties(List)

getVersions

public VersionResource[] getVersions()
                              throws DavException
Return an array of VersionResources representing all versions present in the underlying JCR version history.

Specified by:
getVersions in interface VersionHistoryResource
Returns:
array of VersionResources representing all versions present in the underlying JCR version history.
Throws:
DavException
See Also:
VersionHistoryResource.getVersions()

initProperties

protected void initProperties()
Fill the property set for this resource.

Overrides:
initProperties in class DeltaVResourceImpl


Copyright © 2004-2010 The Apache Software Foundation. All Rights Reserved.