Interface VersionControlledResource
- All Superinterfaces:
DavResource,DeltaVResource,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 own version history.
RFC 3253 defines the following required properties for a version-controlled resource (vc-resource):
- DAV:auto-version
- DAV:version-history (version-history)
- DAV:workspace (workspace)
- DAV:version-controlled-configuration (baseline)
- all DeltaV-compliant resource properties.
- DAV:checked-in
- DAV:checked-out
- DAV:predecessor-set
- DAV:checkout-fork (in-place-checkout or working resource)
- DAV:checkin-fork (in-place-checkout or working resource)
- DAV:merge-set (merge)
- DAV:auto-merge-set (merge)
- DAV:unreserved (activity)
- DAV:activity-set (activity)
- DAV:eclipsed-set
- DAV:baseline-controlled-collection
- DAV:subbaseline-set (if the configuration resource is checked-out)
In addition a version-controlled resource must support the following METHODS:
- VERSION-CONTROL
- MERGE (merge)
- all DeltaV-compliant resource METHODS.
- CHECKOUT (checkout-in-place)
- UPDATE (update)
- all version-controlled resource METHODS.
- CHECKIN (checkout-in-place or working-resource)
- UNCHECKOUT (checkout-in-place)
- all DeltaV-compliant resource METHODS.
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final DavPropertyNameDAV:activity-set is a property for a checked-out resource, if the server supports the activity feature.
This property determines the DAV:activity-set property of the version that results from checking in this resource.static final DavPropertyNameThe DAV:auto-merge-set property identifies each version that the server has merged into this checked-out resource.static final DavPropertyNameThe DAV:auto-version property determines how it responds to a method that attempts to modify its content or dead properties.static final DavPropertyNameIf the 'Baseline' feature is supported, DAV:baseline-controlled-collection is a required property of any version-controlled resource, that represents a 'configuration'.static final DavPropertyNameThe DAV:checked-in property appears on a checked-in version-controlled resource, and identifies the base version of this version-controlled resource.static final DavPropertyNameThe DAV:checked-out property identifies the base version of this resource.static final DavPropertyNameThis property determines the DAV:checkin-fork property of the version that results from checking in this resource.static final DavPropertyNameThis property determines the DAV:checkout-fork property of the version that results from checking in this resource.static final DavPropertyNameIf the 'Version-Controlled-Collection Feature' is supported the DAV:eclipsed-set property present on a collection identifies all internal members that are not version-controlled and hide a vc internal member with the same name.static final DavPropertyNameThis property identifies each version that is to be merged into this checked-out resource.static final StringMethods defined for a checked-in version-controlled resource: CHECKOUT, UPDATE, MERGE, LABELstatic final StringMethods defined for a checked-out version-controlled resource: CHECKIN, MERGEstatic final DavPropertyNameThe 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 final DavPropertyNameThis property is mandatory for all checked-out version-controlled-configuration resources.static final DavPropertyNameDAV:unreserved is a property for a checked-out resource, if the server supports the activity feature.
It indicates whether the DAV:activity-set of another checked-out resource associated with the version history of this version-controlled resource can have an activity that is in the DAV:activity-set property of this checked-out resource.static final DavPropertyNameThe 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.DeltaVResource
METHODS_INCL_MKWORKSPACEFields inherited from interface org.apache.jackrabbit.webdav.version.VersionableResource
METHODS -
Method Summary
Modifier and TypeMethodDescriptioncheckin()Perform a checkin on the version controlled resource.voidcheckout()Perform a checkout on the version controlled resource.Returns theVersionHistoryResource, that is referenced in the 'version-history' property.voidModify the labels of the version referenced by the DAV:checked-in property of this checked-in version-controlled resource.Perform a merge on this resource using the specifiedMergeInfo.voidPerform an uncheckout on the version controlled resource.update(UpdateInfo updateInfo) Perform an update on this resource using the specifiedUpdateInfo.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, unlockMethods inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource
addWorkspace, getOptionResponse, getReferenceResources, getReportMethods inherited from interface org.apache.jackrabbit.webdav.version.VersionableResource
addVersionControl
-
Field Details
-
methods_checkedIn
Methods defined for a checked-in version-controlled resource: CHECKOUT, UPDATE, MERGE, LABEL- See Also:
-
methods_checkedOut
Methods defined for a checked-out version-controlled resource: CHECKIN, MERGE- See Also:
-
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 explicitly checked-out.
See RFC 3253 for a detailed description. -
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
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
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:
-
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_FORK
This property determines the DAV:checkin-fork property of the version that results from checking in this resource. -
CHECKOUT_FORK
This property determines the DAV:checkout-fork property of the version that results from checking in this resource. -
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:
-
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:
-
UNRESERVED
DAV:unreserved is a property for a checked-out resource, if the server supports the activity feature.
It indicates whether the DAV:activity-set of another checked-out resource associated with the version history of this version-controlled resource can have an activity that is in the DAV:activity-set property of this checked-out resource.
A result of the requirement that an activity must form a single line of descent through a given version history is that if multiple checked-out resources for a given version history are checked out unreserved into a single activity, only the first CHECKIN will succeed. Before another of these checked-out resources can be checked in, the user will first have to merge into that checked-out resource the latest version selected by that activity from that version history, and then modify the DAV:predecessor-set of that checked-out resource to identify that version.This property is defined to have the following format:
<!ELEMENT unreserved (#PCDATA)> PCDATA value: boolean
- See Also:
-
ACTIVITY_SET
DAV:activity-set is a property for a checked-out resource, if the server supports the activity feature.
This property determines the DAV:activity-set property of the version that results from checking in this resource.- See Also:
-
ECLIPSED_SET
If the 'Version-Controlled-Collection Feature' is supported the DAV:eclipsed-set property present on a collection identifies all internal members that are not version-controlled and hide a vc internal member with the same name.This property is defined to have the following format:
<!ELEMENT eclipsed-set (binding-name*)> <!ELEMENT binding-name (#PCDATA)> PCDATA value: URL segment
- See Also:
-
BASELINE_CONTROLLED_COLLECTION
If the 'Baseline' feature is supported, DAV:baseline-controlled-collection is a required property of any version-controlled resource, that represents a 'configuration'. It identifies the collection that contains the version-controlled resources whose versions are tracked by this configuration.This property is defined to have the following format:
<!ELEMENT baseline-controlled-collection (href)>
Note that the DAV:baseline-controlled-collection represents aHrefProperty- See Also:
-
SUBBASELINE_SET
This property is mandatory for all checked-out version-controlled-configuration resources. It determines the DAV:subbaseline-set property of the baseline that results from checking in this resource.This property is defined to have the following format:
<!ELEMENT subbaseline-set (href*)>
Note that the DAV:baseline-controlled-collection represents aHrefProperty- See Also:
-
-
Method Details
-
checkin
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
Perform a checkout on the version controlled resource.- Throws:
DavException
-
uncheckout
Perform an uncheckout on the version controlled resource.- Throws:
DavException
-
update
Perform an update on this resource using the specifiedUpdateInfo.- Parameters:
updateInfo-- Returns:
MultiStatuscontaining the list of resources that have been modified by this update call.- Throws:
DavException
-
merge
Perform a merge on this resource using the specifiedMergeInfo.- Parameters:
mergeInfo-- Returns:
MultiStatuscontaining the list of resources that have been modified.- Throws:
DavException
-
label
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:
-
getVersionHistory
Returns theVersionHistoryResource, that is referenced in the 'version-history' property.- Returns:
- Throws:
DavException
-