|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.apache.jackrabbit.webdav.jcr.WorkspaceResourceImpl
public class WorkspaceResourceImpl
WorkspaceResourceImpl...
| Field Summary | |
|---|---|
protected boolean |
initedProps
|
protected DavPropertySet |
properties
|
protected SupportedLock |
supportedLock
|
protected SupportedReportSetProperty |
supportedReports
|
| Fields inherited from interface org.apache.jackrabbit.webdav.version.WorkspaceResource |
|---|
BASELINE_CONTROLLED_COLLECTION_SET, CUURENT_ACTIVITY_SET, WORKSPACE_CHECKOUT_SET |
| Fields inherited from interface org.apache.jackrabbit.webdav.version.VersionControlledResource |
|---|
ACTIVITY_SET, AUTO_MERGE_SET, AUTO_VERSION, BASELINE_CONTROLLED_COLLECTION, CHECKED_IN, CHECKED_OUT, CHECKIN_FORK, CHECKOUT_FORK, ECLIPSED_SET, MERGE_SET, methods_checkedIn, methods_checkedOut, PREDECESSOR_SET, SUBBASELINE_SET, UNRESERVED, VERSION_HISTORY |
| Fields inherited from interface org.apache.jackrabbit.webdav.version.VersionableResource |
|---|
METHODS |
| Fields inherited from interface org.apache.jackrabbit.webdav.version.DeltaVResource |
|---|
METHODS_INCL_MKWORKSPACE |
| Fields inherited from interface org.apache.jackrabbit.webdav.transaction.TransactionResource |
|---|
METHODS |
| Fields inherited from interface org.apache.jackrabbit.webdav.search.SearchResource |
|---|
METHODS |
| Method Summary | |
|---|---|
void |
addLockManager(LockManager lockMgr)
Add an external LockManager to this resource. |
void |
addMember(DavResource resource,
InputContext inputContext)
Throws 403 exception (Forbidden) |
void |
addVersionControl()
Converts this versionable resource into a version-controlled resource. |
void |
addWorkspace(DavResource workspace)
The JCR api does not provide methods to create new workspaces. |
MultiStatusResponse |
alterProperties(DavPropertySet setProperties,
DavPropertyNameSet removePropertyNames)
Builds a single List from the properties to set and the properties to remove and delegates the list to AbstractResource.alterProperties(List); |
MultiStatusResponse |
alterProperties(java.util.List changeList)
Handles an attempt to set ItemResourceConstants.JCR_NAMESPACES
and forwards any other set or remove requests to the super class. |
java.lang.String |
checkin()
Perform a checkin on the version controlled resource. |
void |
checkout()
Perform a checkout on the version controlled resource. |
void |
copy(DavResource destination,
boolean shallow)
Throws HttpServletResponse.SC_METHOD_NOT_ALLOWED |
protected DavResource |
createResourceFromLocator(DavResourceLocator loc)
Create a new DavResource from the given locator. |
boolean |
exists()
Returns true if this webdav resource represents an existing repository item. |
DavResource |
getCollection()
Retrieve the collection that has all workspace collections as internal members. |
java.lang.String |
getComplianceClass()
Returns a string listing the compliance classes for this resource as it is required for the DAV response header. |
java.lang.String |
getDisplayName()
Returns the name of the workspace. |
DavResourceFactory |
getFactory()
Return the DavResourceFactory that created this resource. |
java.lang.String |
getHref()
Returns the absolute href of this resource as returned in the multistatus response body. |
DavResourceLocator |
getLocator()
Returns the locator object for this webdav resource,
which encapsulates the information for building the complete 'href'. |
protected DavResourceLocator |
getLocatorFromItem(javax.jcr.Item repositoryItem)
Build a new DavResourceLocator from the given repository item. |
protected DavResourceLocator |
getLocatorFromItemPath(java.lang.String itemPath)
Build a DavResourceLocator from the given itemPath path. |
ActiveLock |
getLock(Type type,
Scope scope)
Return the lock present on this webdav resource or null
if the resource is either not locked or not lockable at all. |
ActiveLock[] |
getLocks()
Returns an array of all locks applied to the given resource. |
DavResourceIterator |
getMembers()
Returns the resource representing the JCR root node. |
long |
getModificationTime()
Always returns 'now' |
OptionsResponse |
getOptionResponse(OptionsInfo optionsInfo)
Retrieves the information requested in the OPTIONS request body and returns the corresponding values. |
DavPropertySet |
getProperties()
Returns all webdav properties present on this resource. |
DavProperty |
getProperty(DavPropertyName name)
Return the webdav property with the specified name. |
DavPropertyName[] |
getPropertyNames()
Returns an array of all property names available
on this resource. |
QueryGrammerSet |
getQueryGrammerSet()
Returns the protected DAV:supported-method-set property which is defined mandatory by RTF 3253. |
DavResource[] |
getReferenceResources(DavPropertyName hrefPropertyName)
Return an array of DavResource objects that are referenced
by the property with the specified name. |
Report |
getReport(ReportInfo reportInfo)
Runs the report specified by the given ReportInfo. |
protected javax.jcr.Session |
getRepositorySession()
Shortcut for getSession().getRepositorySession() |
java.lang.String |
getResourcePath()
Returns the path of the underlying repository item or the item to be created (PUT/MKCOL). |
DavSession |
getSession()
Retrieve the DavSession associated with this resource. |
java.lang.String |
getSupportedMethods()
Returns a comma separated list of all METHODS supported by the given resource. |
java.lang.String |
getTransactionId()
The TransactionId or null according to the value of the
corresponding request header
field. |
VersionHistoryResource |
getVersionHistory()
Returns the VersionHistoryResource, that is referenced in the
'version-history' property. |
protected java.lang.String |
getWorkspaceHref()
Retrieve the href of the workspace the current session belongs to. |
boolean |
hasLock(Type type,
Scope scope)
Returns true if this resource has a lock applied with the given type and scope. |
void |
init(TxLockManager txMgr,
java.lang.String transactionId)
Initializes the TransactionResource. |
protected void |
initLockSupport()
Define the set of locks supported by this resource. |
protected void |
initProperties()
Fill the set of default properties |
protected void |
initSupportedReports()
Define the set of reports supported by this resource. |
boolean |
isCollection()
Returns true if this webdav resource has the resourcetype 'collection'. |
boolean |
isLockable(Type type,
Scope scope)
Returns true, if the SupportedLock property contains an entry
with the given type and scope. |
void |
label(LabelInfo labelInfo)
Modify the labels of the version referenced by the DAV:checked-in property of this checked-in version-controlled resource. |
ActiveLock |
lock(LockInfo reqLockInfo)
Lock this webdav resource with the information retrieve from the request and return the resulting lockdiscovery object. |
MultiStatus |
merge(MergeInfo mergeInfo)
Perform a merge on this resource using the specified MergeInfo. |
void |
move(DavResource destination)
Throws HttpServletResponse.SC_METHOD_NOT_ALLOWED |
ActiveLock |
refreshLock(LockInfo info,
java.lang.String lockToken)
Only transaction lock may be available on this resource. |
void |
removeMember(DavResource member)
Throws 403 exception (Forbidden) |
void |
removeProperty(DavPropertyName propertyName)
Throws HttpServletResponse.SC_METHOD_NOT_ALLOWED |
MultiStatus |
search(SearchInfo sInfo)
Runs a search with the language and query defined in the SearchInfo
object specified and returns a MultiStatus object listing the
results. |
void |
setProperty(DavProperty property)
Allows to alter the registered namespaces ( ItemResourceConstants.JCR_NAMESPACES) and
forwards any other property to the super class.
Note that again no property status is set. |
void |
spool(OutputContext outputContext)
Sets content lengths to '0' and retrieves the modification time. |
void |
uncheckout()
Perform an uncheckout on the version controlled resource. |
void |
unlock(java.lang.String lockToken)
Throws HttpServletResponse.SC_METHOD_NOT_ALLOWED since only transaction
locks may be present on this resource, that need to be released by calling
TransactionResource.unlock(String, org.apache.jackrabbit.webdav.transaction.TransactionInfo). |
void |
unlock(java.lang.String lockToken,
TransactionInfo tInfo)
Overloads the unlock method of the DavResource
interface. |
MultiStatus |
update(UpdateInfo updateInfo)
While RFC 3253 does not define any version-related operations for the workspace resource, this implementation uses VersionControlledResource.update(UpdateInfo)
to map Workspace.restore(javax.jcr.version.Version[], boolean) to
a WebDAV call. |
| 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, alterProperties, copy, getComplianceClass, getFactory, getHref, getLocator, getLock, getLocks, getProperties, getProperty, getPropertyNames, getResourcePath, getSession, hasLock, isLockable, lock, move, refreshLock, removeProperty, unlock |
| Field Detail |
|---|
protected boolean initedProps
protected DavPropertySet properties
protected SupportedLock supportedLock
protected SupportedReportSetProperty supportedReports
| Method Detail |
|---|
public java.lang.String getSupportedMethods()
DavResource
getSupportedMethods in interface DavResourcepublic boolean exists()
DavResource
exists in interface DavResourcepublic boolean isCollection()
DavResource
isCollection in interface DavResourcepublic java.lang.String getDisplayName()
getDisplayName in interface DavResourceDavResource.getDisplayName(),
Workspace.getName()public long getModificationTime()
getModificationTime in interface DavResource
public void spool(OutputContext outputContext)
throws java.io.IOException
spool in interface DavResourceoutputContext -
java.io.IOExceptionpublic DavResource getCollection()
getCollection in interface DavResourcenull is returned.DavResource.getCollection()
public void addMember(DavResource resource,
InputContext inputContext)
throws DavException
addMember in interface DavResourceresource - inputContext -
DavExceptionpublic DavResourceIterator getMembers()
getMembers in interface DavResource
public void removeMember(DavResource member)
throws DavException
removeMember in interface DavResourcemember -
DavException
public void setProperty(DavProperty property)
throws DavException
ItemResourceConstants.JCR_NAMESPACES) and
forwards any other property to the super class.
Note that again no property status is set. Any failure while setting
a property results in an exception (violating RFC 2518).
setProperty in interface DavResourceproperty -
DavExceptionDavResource.setProperty(org.apache.jackrabbit.webdav.property.DavProperty)
public MultiStatusResponse alterProperties(java.util.List changeList)
throws DavException
ItemResourceConstants.JCR_NAMESPACES
and forwards any other set or remove requests to the super class.
alterProperties in interface DavResourcechangeList - list containing DavPropertyName objects (for
properties to be removed) and DavProperty objects (for
properties to be added/set).
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).setProperty(DavProperty),
AbstractResource.alterProperties(org.apache.jackrabbit.webdav.property.DavPropertySet, org.apache.jackrabbit.webdav.property.DavPropertyNameSet)
public void addVersionControl()
throws DavException
VersionableResourceDavException
(error code: HttpServletResponse.SC_METHOD_NOT_ALLOWED
is thrown. The same applies, if this resource is versionable but its
current state does not allow to made it a version-controlled one or
if any other error occurs.
addVersionControl in interface VersionableResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.
public java.lang.String checkin()
throws DavException
VersionControlledResource
checkin in interface VersionControlledResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.
public void checkout()
throws DavException
VersionControlledResource
checkout in interface VersionControlledResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.
public void uncheckout()
throws DavException
VersionControlledResource
uncheckout in interface VersionControlledResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.
public MultiStatus update(UpdateInfo updateInfo)
throws DavException
VersionControlledResource.update(UpdateInfo)
to map Workspace.restore(javax.jcr.version.Version[], boolean) to
a WebDAV call.
Limitation: note that the MultiStatus returned by this method
will not list any nodes that have been removed due to an Uuid conflict.
update in interface VersionControlledResourceupdateInfo -
DavExceptionVersionControlledResource.update(org.apache.jackrabbit.webdav.version.UpdateInfo)
public MultiStatus merge(MergeInfo mergeInfo)
throws DavException
VersionControlledResourceMergeInfo.
merge in interface VersionControlledResourceMultiStatus containing the list of resources that
have been modified.
DavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.
public void label(LabelInfo labelInfo)
throws DavException
VersionControlledResource
label in interface VersionControlledResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.LabelInfo,
for the pre- and postcondition of
a successful LABEL request.
public VersionHistoryResource getVersionHistory()
throws DavException
VersionControlledResourceVersionHistoryResource, that is referenced in the
'version-history' property.
getVersionHistory in interface VersionControlledResourceDavException - (403) since workspace is not versionable. implementing
VersionControlledResource only for 'update'.protected void initLockSupport()
SupportedLockprotected void initSupportedReports()
SupportedReportSetProperty,
AbstractResource.initSupportedReports()protected java.lang.String getWorkspaceHref()
protected void initProperties()
public java.lang.String getComplianceClass()
getComplianceClass in interface DavResourceDavResource.getComplianceClass()public DavResourceLocator getLocator()
DavResourcelocator object for this webdav resource,
which encapsulates the information for building the complete 'href'.
getLocator in interface DavResourceDavResource.getLocator()public java.lang.String getResourcePath()
null is returned.
getResourcePath in interface DavResourceDavResource.getResourcePath(),
DavResourceLocator.getResourcePath()public java.lang.String getHref()
DavResource
getHref in interface DavResourceDavResource.getHref(),
DavResourceLocator.getHref(boolean)public DavPropertyName[] getPropertyNames()
DavResourceproperty names available
on this resource.
getPropertyNames in interface DavResourceDavResource.getPropertyNames()public DavProperty getProperty(DavPropertyName name)
DavResource
getProperty in interface DavResourcename - name of the webdav property
DavProperty with the given name or null
if the property does not exist.DavResource.getProperty(org.apache.jackrabbit.webdav.property.DavPropertyName)public DavPropertySet getProperties()
DavResource
getProperties in interface DavResourceDavPropertySet containing all webdav property
of this resource.DavResource.getProperties()
public void removeProperty(DavPropertyName propertyName)
throws DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWED
removeProperty in interface DavResourcepropertyName -
DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.removeProperty(org.apache.jackrabbit.webdav.property.DavPropertyName)
public MultiStatusResponse alterProperties(DavPropertySet setProperties,
DavPropertyNameSet removePropertyNames)
throws DavException
AbstractResource.alterProperties(List);
alterProperties in interface DavResourcesetProperties - Set of properties to be added or modifiedremovePropertyNames - Set of property names to be removed
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).DavResource.alterProperties(org.apache.jackrabbit.webdav.property.DavPropertySet, org.apache.jackrabbit.webdav.property.DavPropertyNameSet)
public void move(DavResource destination)
throws DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWED
move in interface DavResourcedestination -
DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.move(org.apache.jackrabbit.webdav.DavResource)
public void copy(DavResource destination,
boolean shallow)
throws DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWED
copy in interface DavResourcedestination - shallow -
DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.copy(org.apache.jackrabbit.webdav.DavResource, boolean)
public boolean isLockable(Type type,
Scope scope)
SupportedLock property contains an entry
with the given type and scope. By default resources allow for transaction lock only.
isLockable in interface DavResourcetype - scope -
DavResource.isLockable(org.apache.jackrabbit.webdav.lock.Type, org.apache.jackrabbit.webdav.lock.Scope)
public boolean hasLock(Type type,
Scope scope)
hasLock in interface DavResourcetype - scope -
DavResource.hasLock(Type, Scope)
public ActiveLock getLock(Type type,
Scope scope)
DavResourcenull
if the resource is either not locked or not lockable at all. Note, that
a resource may have a lock that is inherited by a deep lock enforced on
one of its 'parent' resources.
getLock in interface DavResourcenull if this
resource has no lock applying it. If an error occurs while retrieving the
lock information null is returned as well.DavResource.getLock(Type, Scope)public ActiveLock[] getLocks()
DavResource
getLocks in interface DavResourcetodo improve....
public ActiveLock lock(LockInfo reqLockInfo)
throws DavException
DavResource
lock in interface DavResourcereqLockInfo - lock info as retrieved from the request.
DavException is thrown.
DavException - if the lock could not be obtained.DavResource.lock(org.apache.jackrabbit.webdav.lock.LockInfo)
public ActiveLock refreshLock(LockInfo info,
java.lang.String lockToken)
throws DavException
refreshLock in interface DavResourceinfo - lockToken -
DavException is thrown.
DavExceptionDavResource.refreshLock(org.apache.jackrabbit.webdav.lock.LockInfo, String)
public void unlock(java.lang.String lockToken)
throws DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWED since only transaction
locks may be present on this resource, that need to be released by calling
TransactionResource.unlock(String, org.apache.jackrabbit.webdav.transaction.TransactionInfo).
unlock in interface DavResourcelockToken -
DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDpublic void addLockManager(LockManager lockMgr)
DavResourceLockManager to this resource. This method may
throw UnsupportedOperationException if the resource does handle
locking itself.
addLockManager in interface DavResourceDavResource.addLockManager(org.apache.jackrabbit.webdav.lock.LockManager)public DavResourceFactory getFactory()
DavResourceDavResourceFactory that created this resource.
getFactory in interface DavResourceDavResource.getFactory()public DavSession getSession()
DavResourceDavSession associated with this resource.
getSession in interface DavResourceDavResource.getSession(),
DavResource.getSession()
public void init(TxLockManager txMgr,
java.lang.String transactionId)
TransactionResourceTransactionResource.
init in interface TransactionResourceTransactionResource.init(TxLockManager, String)
public void unlock(java.lang.String lockToken,
TransactionInfo tInfo)
throws DavException
TransactionResourceunlock method of the DavResource
interface.
unlock in interface TransactionResourcelockToken - lock token as present in the request header.tInfo - transaction info object as present in the UNLOCK request body.
DavException - if an error occursTransactionResource.unlock(String, org.apache.jackrabbit.webdav.transaction.TransactionInfo)public java.lang.String getTransactionId()
TransactionResourcenull according to the value of the
corresponding request header
field.
getTransactionId in interface TransactionResourcenullTransactionResource.getTransactionId()public OptionsResponse getOptionResponse(OptionsInfo optionsInfo)
DeltaVResource
getOptionResponse in interface DeltaVResourceoptionsInfo -
nullDeltaVResource.getOptionResponse(org.apache.jackrabbit.webdav.version.OptionsInfo)
public Report getReport(ReportInfo reportInfo)
throws DavException
DeltaVResourceReportInfo.
getReport in interface DeltaVResourcereportInfo -
DavExceptionDeltaVResource.getReport(org.apache.jackrabbit.webdav.version.report.ReportInfo)
public void addWorkspace(DavResource workspace)
throws DavException
addWorkspace on this resource will always fail.
addWorkspace in interface DeltaVResourceworkspace -
DavException - Always throws.DeltaVResource.addWorkspace(org.apache.jackrabbit.webdav.DavResource)
public DavResource[] getReferenceResources(DavPropertyName hrefPropertyName)
throws DavException
DavResource objects that are referenced
by the property with the specified name.
getReferenceResources in interface DeltaVResourcehrefPropertyName -
DavResources
DavExceptionDeltaVResource.getReferenceResources(org.apache.jackrabbit.webdav.property.DavPropertyName)public QueryGrammerSet getQueryGrammerSet()
SearchResourceDavResource.getProperty(SearchConstants.QUERY_GRAMMER_SET).
getQueryGrammerSet in interface SearchResourceSearchResource.getQueryGrammerSet()
public MultiStatus search(SearchInfo sInfo)
throws DavException
SearchResourceSearchInfo
object specified and returns a MultiStatus object listing the
results.
search in interface SearchResourcesInfo -
DavExceptionSearchResource.search(org.apache.jackrabbit.webdav.search.SearchInfo)
protected DavResource createResourceFromLocator(DavResourceLocator loc)
throws DavException
DavResource from the given locator.
loc -
DavResource
DavExceptionprotected DavResourceLocator getLocatorFromItemPath(java.lang.String itemPath)
DavResourceLocator from the given itemPath path.
itemPath -
DavResourceLocatorDavLocatorFactory.createResourceLocator(String, String, String)protected DavResourceLocator getLocatorFromItem(javax.jcr.Item repositoryItem)
DavResourceLocator from the given repository item.
repositoryItem -
getLocatorFromItemPath(String)protected javax.jcr.Session getRepositorySession()
getSession().getRepositorySession()
AbstractResource.session.
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||