org.apache.jackrabbit.webdav.version
Interface VersionControlledResource

All Superinterfaces:
DavResource, DeltaVResource, VersionableResource

public interface VersionControlledResource
extends VersionableResource

The VersionControlledResource represents in contrast to the VersionableResource a resource, that has already been put under version-control. This resource can be checked-in, checked-out and has its on version history.

RFC 3253 defines the following required properties for a version-controlled resource (vc-resource):

checked-in vc-resource: checked-out vc-resource:

In addition a version-controlled resource must support the following METHODS:

checked-in vc-resource: checked-out vc-resource:

See Also:
DeltaVResource, VersionableResource

Field Summary
static DavPropertyName AUTO_MERGE_SET
          The DAV:auto-merge-set property identifies each version that the server has merged into this checked-out resource.
static DavPropertyName AUTO_VERSION
          The DAV:auto-version property determines how it responds to a method that attempts to modify its content or dead properties.
static DavPropertyName CHECKED_IN
          The DAV:checked-in property appears on a checked-in version-controlled resource, and identifies the base version of this version-controlled resource.
static DavPropertyName CHECKED_OUT
          The DAV:checked-out property identifies the base version of this resource.
static DavPropertyName CHECKIN_FORK
          This property determines the DAV:checkin-fork property of the version that results from checking in this resource.
static DavPropertyName CHECKOUT_FORK
          This property determines the DAV:checkout-fork property of the version that results from checking in this resource.
static DavPropertyName MERGE_SET
          This property identifies each version that is to be merged into this checked-out resource.
static String methods_checkedIn
          Methods defined for a checked-in version-controlled resource: CHECKOUT, UNCHECHKOUT, UPDATE, MERGE, LABEL
static String methods_checkedOut
          Methods defined for a checked-out version-controlled resource: CHECKIN, MERGE
static DavPropertyName PREDECESSOR_SET
          The DAV:predecessor-set property of a version-controlled resource points to those version resources, that are scheduled to become the predecessors of this resource when it is back checked-in.
static DavPropertyName VERSION_HISTORY
          The computed property DAV:version-history identifies the version history resource for the DAV:checked-in or DAV:checked-out version of this version-controlled resource.
The property is defined to have the following format:
 
Fields inherited from interface org.apache.jackrabbit.webdav.version.VersionableResource
COMPLIANCE_CLASS, METHODS
 
Fields inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource
METHODS_INCL_MKWORKSPACE
 
Method Summary
 String checkin()
          Perform a checkin on the version controlled resource.
 void checkout()
          Perform a checkout on the version controlled resource.
 VersionHistoryResource getVersionHistory()
          Returns the VersionHistoryResource, that is referenced in the 'version-history' property.
 void label(LabelInfo labelInfo)
          Modify the labels of the version referenced by the DAV:checked-in property of this checked-in version-controlled resource.
 MultiStatus merge(MergeInfo mergeInfo)
          Perform a merge on this resource using the specified MergeInfo.
 void uncheckout()
          Perform an uncheckout on the version controlled resource.
 MultiStatus update(UpdateInfo updateInfo)
          Perform an update on this resource using the specified UpdateInfo.
 
Methods inherited from interface org.apache.jackrabbit.webdav.version.VersionableResource
addVersionControl
 
Methods inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource
addWorkspace, getOptionResponse, getReferenceResources, getReport
 
Methods inherited from interface org.apache.jackrabbit.webdav.DavResource
addLockManager, addMember, alterProperties, copy, exists, getCollection, getComplianceClass, getDisplayName, getFactory, getHref, getLocator, getLock, getLocks, getMembers, getModificationTime, getProperties, getProperty, getPropertyNames, getResourcePath, getSession, getSupportedMethods, hasLock, isCollection, isLockable, lock, move, refreshLock, removeMember, removeProperty, setProperty, spool, unlock
 

Field Detail

methods_checkedIn

public static final String methods_checkedIn
Methods defined for a checked-in version-controlled resource: CHECKOUT, UNCHECHKOUT, UPDATE, MERGE, LABEL

See Also:
Constant Field Values

methods_checkedOut

public static final String methods_checkedOut
Methods defined for a checked-out version-controlled resource: CHECKIN, MERGE

See Also:
Constant Field Values

AUTO_VERSION

public static final DavPropertyName AUTO_VERSION
The DAV:auto-version property determines how it responds to a method that attempts to modify its content or dead properties. Possible responses include various combinations of automated checkout, write lock and checkin as well as failure until the resource is explicitely checked-out.
See RFC 3253 for a detailed description.


VERSION_HISTORY

public static final DavPropertyName VERSION_HISTORY
The computed property DAV:version-history identifies the version history resource for the DAV:checked-in or DAV:checked-out version of this version-controlled resource.
The property is defined to have the following format:
 <!ELEMENT version-history (href)>
 


CHECKED_IN

public static final DavPropertyName CHECKED_IN
The DAV:checked-in property appears on a checked-in version-controlled resource, and identifies the base version of this version-controlled resource. This property is removed when the resource is checked out, and then added back (identifying a new version) when the resource is checked back in.
This property is defined to have the following format:
 <!ELEMENT checked-in (href)>
 


CHECKED_OUT

public static final DavPropertyName CHECKED_OUT
The DAV:checked-out property identifies the base version of this resource. It is the same that was identified by the DAV:checked-in property at the time the resource was checked out. This property is removed when the resource is checked in.
This property is defined to have the following format:
 <!ELEMENT checked-out (href)>
 

See Also:
CHECKED_IN

PREDECESSOR_SET

public static final DavPropertyName PREDECESSOR_SET
The DAV:predecessor-set property of a version-controlled resource points to those version resources, that are scheduled to become the predecessors of this resource when it is back checked-in. This property is not protected, however a server may reject attempts to modify the DAV:predecessor-set of a version-controlled resource.
This property is defined to have the following format:
 <!ELEMENT predecessor-set (href+)>
 

See Also:
checkin(), VersionResource.PREDECESSOR_SET

CHECKIN_FORK

public static final DavPropertyName CHECKIN_FORK
This property determines the DAV:checkin-fork property of the version that results from checking in this resource.


CHECKOUT_FORK

public static final DavPropertyName CHECKOUT_FORK
This property determines the DAV:checkout-fork property of the version that results from checking in this resource.


MERGE_SET

public static final DavPropertyName MERGE_SET
This property identifies each version that is to be merged into this checked-out resource. This property is set, whenever a MERGE request with the DAV:no-auto-merge flag succeeded. The client then must confirm each single merge by removing the version from the DAV:merge-set or moving it the the versions DAV:predecessor-set.
This property is defined to have the following format:
 <!ELEMENT merge-set (href*)>
 

See Also:
merge(MergeInfo)

AUTO_MERGE_SET

public static final DavPropertyName AUTO_MERGE_SET
The DAV:auto-merge-set property identifies each version that the server has merged into this checked-out resource. The client should confirm that the merge has been performed correctly before moving a URL from the DAV:auto-merge-set to the DAV:predecessor-set of a checked-out resource.
This property is defined to have the following format:
 <!ELEMENT auto-merge-set (href*)>
 

See Also:
merge(MergeInfo)
Method Detail

checkin

public String checkin()
               throws DavException
Perform a checkin on the version controlled resource.

Returns:
String representing the location of the version created by the checkin.
Throws:
DavException - if an error occurs.

checkout

public void checkout()
              throws DavException
Perform a checkout on the version controlled resource.

Throws:
DavException

uncheckout

public void uncheckout()
                throws DavException
Perform an uncheckout on the version controlled resource.

Throws:
DavException

update

public MultiStatus update(UpdateInfo updateInfo)
                   throws DavException
Perform an update on this resource using the specified UpdateInfo.

Parameters:
updateInfo -
Returns:
MultiStatus containing the list of resources that have been modified by this update call.
Throws:
DavException

merge

public MultiStatus merge(MergeInfo mergeInfo)
                  throws DavException
Perform a merge on this resource using the specified MergeInfo.

Parameters:
mergeInfo -
Returns:
MultiStatus containing the list of resources that have been modified.
Throws:
DavException

label

public void label(LabelInfo labelInfo)
           throws DavException
Modify the labels of the version referenced by the DAV:checked-in property of this checked-in version-controlled resource. If the resource is not checked-in the request must fail.

Parameters:
labelInfo -
Throws:
DavException
See Also:
LabelInfo, for the pre- and postcondition of a successful LABEL request.

getVersionHistory

public VersionHistoryResource getVersionHistory()
                                         throws DavException
Returns the VersionHistoryResource, that is referenced in the 'version-history' property.

Returns:
Throws:
DavException


Copyright © 2005-2006 . All Rights Reserved.