public class RootCollection extends Object
RootCollection represent the WebDAV root resource that does not
represent any repository item. A call to getMembers() returns a
DavResourceIterator containing only workspace resources
resources, thus revealing the names of the accessible JCR workspaces.| Modifier and Type | Field and Description |
|---|---|
protected boolean |
initedProps |
protected org.apache.jackrabbit.webdav.property.DavPropertyNameSet |
names |
protected org.apache.jackrabbit.webdav.property.DavPropertySet |
properties |
protected org.apache.jackrabbit.webdav.lock.SupportedLock |
supportedLock |
protected org.apache.jackrabbit.webdav.version.report.SupportedReportSetProperty |
supportedReports |
METHODS| Modifier | Constructor and Description |
|---|---|
protected |
RootCollection(org.apache.jackrabbit.webdav.DavResourceLocator locator,
JcrDavSession session,
org.apache.jackrabbit.webdav.DavResourceFactory factory)
Create a new
RootCollection. |
| Modifier and Type | Method and Description |
|---|---|
void |
addLockManager(org.apache.jackrabbit.webdav.lock.LockManager lockMgr) |
void |
addMember(org.apache.jackrabbit.webdav.DavResource resource,
org.apache.jackrabbit.webdav.io.InputContext inputContext)
Throws exception: 403 Forbidden.
|
void |
addWorkspace(org.apache.jackrabbit.webdav.DavResource workspace)
The JCR api does not provide methods to create new workspaces.
|
org.apache.jackrabbit.webdav.MultiStatusResponse |
alterProperties(List<? extends org.apache.jackrabbit.webdav.property.PropEntry> changeList)
Throws
HttpServletResponse.SC_METHOD_NOT_ALLOWED |
void |
copy(org.apache.jackrabbit.webdav.DavResource destination,
boolean shallow)
Throws
HttpServletResponse.SC_METHOD_NOT_ALLOWED |
protected org.apache.jackrabbit.webdav.DavResource |
createResourceFromLocator(org.apache.jackrabbit.webdav.DavResourceLocator loc)
Create a new
DavResource from the given locator. |
boolean |
exists()
Returns true
|
org.apache.jackrabbit.webdav.DavResource |
getCollection()
Always returns
null |
String |
getComplianceClass()
Returns a string listing the compliance classes for this resource as it
is required for the DAV response header.
|
protected String |
getCreationDate()
Returns the creation date which is used for the
DavPropertyName.CREATIONDATE property. |
protected String |
getCreatorDisplayName()
Returns the display name of the creator which is used for the protected
DeltaVConstants.CREATOR_DISPLAYNAME property. |
String |
getDisplayName()
Returns an empty string.
|
org.apache.jackrabbit.webdav.DavResourceFactory |
getFactory() |
String |
getHref() |
org.apache.jackrabbit.webdav.DavResourceLocator |
getLocator() |
protected org.apache.jackrabbit.webdav.DavResourceLocator |
getLocatorFromItem(Item repositoryItem)
Build a new
DavResourceLocator from the given repository item. |
protected org.apache.jackrabbit.webdav.DavResourceLocator |
getLocatorFromItemPath(String itemPath)
Build a
DavResourceLocator from the given itemPath path. |
org.apache.jackrabbit.webdav.lock.ActiveLock |
getLock(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope) |
org.apache.jackrabbit.webdav.lock.ActiveLock[] |
getLocks() |
org.apache.jackrabbit.webdav.DavResourceIterator |
getMembers()
Returns an iterator over the member resources, which are all
workspace resources available.
|
long |
getModificationTime()
Always returns 'now'
|
org.apache.jackrabbit.webdav.version.OptionsResponse |
getOptionResponse(org.apache.jackrabbit.webdav.version.OptionsInfo optionsInfo) |
org.apache.jackrabbit.webdav.property.DavPropertySet |
getProperties() |
org.apache.jackrabbit.webdav.property.DavProperty<?> |
getProperty(org.apache.jackrabbit.webdav.property.DavPropertyName name) |
org.apache.jackrabbit.webdav.property.DavPropertyName[] |
getPropertyNames() |
org.apache.jackrabbit.webdav.search.QueryGrammerSet |
getQueryGrammerSet() |
org.apache.jackrabbit.webdav.DavResource[] |
getReferenceResources(org.apache.jackrabbit.webdav.property.DavPropertyName hrefPropertyName)
Return an array of
DavResource objects that are referenced
by the property with the specified name. |
org.apache.jackrabbit.webdav.version.report.Report |
getReport(org.apache.jackrabbit.webdav.version.report.ReportInfo reportInfo) |
protected Session |
getRepositorySession()
Shortcut for
getSession().getRepositorySession() |
String |
getResourcePath()
Returns the path of the underlying repository item or the item to
be created (PUT/MKCOL).
|
org.apache.jackrabbit.webdav.DavSession |
getSession() |
String |
getSupportedMethods()
Returns a string listing the METHODS for this resource as it
is required for the "Allow" response header.
|
String |
getTransactionId() |
protected String |
getWorkspaceHref()
Since the root resource does not represent a repository item and therefore
is not member of a workspace resource, this method always returns
null. |
boolean |
hasLock(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope)
Returns true if this resource has a lock applied with the given type and scope.
|
void |
init(org.apache.jackrabbit.webdav.transaction.TxLockManager txMgr,
String transactionId) |
protected void |
initLockSupport()
Define the set of locks supported by this resource.
|
protected void |
initProperties()
Fill the set of default properties
|
protected void |
initPropertyNames()
Property names common to all resources.
|
protected void |
initSupportedReports()
Define the set of reports supported by this resource.
|
boolean |
isCollection()
Returns true
|
boolean |
isLockable(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope)
Returns true, if the
SupportedLock property contains an entry
with the given type and scope. |
org.apache.jackrabbit.webdav.lock.ActiveLock |
lock(org.apache.jackrabbit.webdav.lock.LockInfo reqLockInfo) |
void |
move(org.apache.jackrabbit.webdav.DavResource destination)
Throws
HttpServletResponse.SC_METHOD_NOT_ALLOWED |
org.apache.jackrabbit.webdav.lock.ActiveLock |
refreshLock(org.apache.jackrabbit.webdav.lock.LockInfo info,
String lockToken)
Only transaction lock may be available on this resource.
|
void |
removeMember(org.apache.jackrabbit.webdav.DavResource member)
Calls
Workspace.deleteWorkspace(String) for the workspace with
the name as indicated by the specified member. |
void |
removeProperty(org.apache.jackrabbit.webdav.property.DavPropertyName propertyName)
Throws
HttpServletResponse.SC_METHOD_NOT_ALLOWED |
org.apache.jackrabbit.webdav.MultiStatus |
search(org.apache.jackrabbit.webdav.search.SearchInfo sInfo) |
void |
setProperty(org.apache.jackrabbit.webdav.property.DavProperty<?> property)
Throws
HttpServletResponse.SC_METHOD_NOT_ALLOWED |
void |
spool(org.apache.jackrabbit.webdav.io.OutputContext outputContext)
Sets content lengths to '0' and retrieves the modification time.
|
void |
unlock(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(String lockToken,
org.apache.jackrabbit.webdav.transaction.TransactionInfo tInfo) |
protected boolean initedProps
protected org.apache.jackrabbit.webdav.property.DavPropertySet properties
protected org.apache.jackrabbit.webdav.property.DavPropertyNameSet names
protected org.apache.jackrabbit.webdav.lock.SupportedLock supportedLock
protected org.apache.jackrabbit.webdav.version.report.SupportedReportSetProperty supportedReports
protected RootCollection(org.apache.jackrabbit.webdav.DavResourceLocator locator,
JcrDavSession session,
org.apache.jackrabbit.webdav.DavResourceFactory factory)
RootCollection.locator - session - factory - public String getSupportedMethods()
DavResource.getSupportedMethods()public boolean exists()
DavResource.exists()public boolean isCollection()
DavResource.isCollection()public String getDisplayName()
DavResource.getDisplayName()public long getModificationTime()
DavResource.getModificationTime()public void spool(org.apache.jackrabbit.webdav.io.OutputContext outputContext)
throws IOException
outputContext - IOExceptionDavResource.spool(org.apache.jackrabbit.webdav.io.OutputContext)public org.apache.jackrabbit.webdav.DavResource getCollection()
nullnull for the root resource is not internal member
of any resource.DavResource.getCollection()public void addMember(org.apache.jackrabbit.webdav.DavResource resource,
org.apache.jackrabbit.webdav.io.InputContext inputContext)
throws org.apache.jackrabbit.webdav.DavException
org.apache.jackrabbit.webdav.DavExceptionDavResource.addMember(DavResource, InputContext)public org.apache.jackrabbit.webdav.DavResourceIterator getMembers()
DavResource.getMembers()public void removeMember(org.apache.jackrabbit.webdav.DavResource member)
throws org.apache.jackrabbit.webdav.DavException
Workspace.deleteWorkspace(String) for the workspace with
the name as indicated by the specified member.org.apache.jackrabbit.webdav.DavExceptionDavResource.removeMember(org.apache.jackrabbit.webdav.DavResource)public void addWorkspace(org.apache.jackrabbit.webdav.DavResource workspace)
throws org.apache.jackrabbit.webdav.DavException
addWorkspace on this resource will always fail.addWorkspace in interface org.apache.jackrabbit.webdav.version.DeltaVResourceorg.apache.jackrabbit.webdav.DavException - Always throws.DeltaVResource.addWorkspace(org.apache.jackrabbit.webdav.DavResource)protected void initLockSupport()
AbstractResource.initLockSupport()protected String getWorkspaceHref()
null.nullAbstractResource.getWorkspaceHref()public String getComplianceClass()
getComplianceClass in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getComplianceClass()public org.apache.jackrabbit.webdav.DavResourceLocator getLocator()
getLocator in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getLocator()public String getResourcePath()
null is returned.getResourcePath in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getResourcePath(),
DavResourceLocator.getResourcePath()public String getHref()
getHref in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getHref(),
DavResourceLocator.getHref(boolean)public org.apache.jackrabbit.webdav.property.DavPropertyName[] getPropertyNames()
getPropertyNames in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getPropertyNames()public org.apache.jackrabbit.webdav.property.DavProperty<?> getProperty(org.apache.jackrabbit.webdav.property.DavPropertyName name)
getProperty in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getProperty(org.apache.jackrabbit.webdav.property.DavPropertyName)public org.apache.jackrabbit.webdav.property.DavPropertySet getProperties()
getProperties in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getProperties()public void setProperty(org.apache.jackrabbit.webdav.property.DavProperty<?> property)
throws org.apache.jackrabbit.webdav.DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWEDsetProperty in interface org.apache.jackrabbit.webdav.DavResourceproperty - org.apache.jackrabbit.webdav.DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.setProperty(org.apache.jackrabbit.webdav.property.DavProperty)public void removeProperty(org.apache.jackrabbit.webdav.property.DavPropertyName propertyName)
throws org.apache.jackrabbit.webdav.DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWEDremoveProperty in interface org.apache.jackrabbit.webdav.DavResourcepropertyName - org.apache.jackrabbit.webdav.DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.removeProperty(org.apache.jackrabbit.webdav.property.DavPropertyName)public org.apache.jackrabbit.webdav.MultiStatusResponse alterProperties(List<? extends org.apache.jackrabbit.webdav.property.PropEntry> changeList) throws org.apache.jackrabbit.webdav.DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWEDalterProperties in interface org.apache.jackrabbit.webdav.DavResourceorg.apache.jackrabbit.webdav.DavExceptionDavResource.alterProperties(List)public void move(org.apache.jackrabbit.webdav.DavResource destination)
throws org.apache.jackrabbit.webdav.DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWEDmove in interface org.apache.jackrabbit.webdav.DavResourcedestination - org.apache.jackrabbit.webdav.DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.move(org.apache.jackrabbit.webdav.DavResource)public void copy(org.apache.jackrabbit.webdav.DavResource destination,
boolean shallow)
throws org.apache.jackrabbit.webdav.DavException
HttpServletResponse.SC_METHOD_NOT_ALLOWEDcopy in interface org.apache.jackrabbit.webdav.DavResourcedestination - shallow - org.apache.jackrabbit.webdav.DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDDavResource.copy(org.apache.jackrabbit.webdav.DavResource, boolean)public boolean isLockable(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope)
SupportedLock property contains an entry
with the given type and scope. By default resources allow for transaction lock only.isLockable in interface org.apache.jackrabbit.webdav.DavResourcetype - scope - DavResource.isLockable(org.apache.jackrabbit.webdav.lock.Type, org.apache.jackrabbit.webdav.lock.Scope)public boolean hasLock(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope)
hasLock in interface org.apache.jackrabbit.webdav.DavResourcetype - scope - DavResource.hasLock(Type, Scope)public org.apache.jackrabbit.webdav.lock.ActiveLock getLock(org.apache.jackrabbit.webdav.lock.Type type,
org.apache.jackrabbit.webdav.lock.Scope scope)
getLock in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getLock(Type, Scope)public org.apache.jackrabbit.webdav.lock.ActiveLock[] getLocks()
getLocks in interface org.apache.jackrabbit.webdav.DavResourcetodo improve....public org.apache.jackrabbit.webdav.lock.ActiveLock lock(org.apache.jackrabbit.webdav.lock.LockInfo reqLockInfo)
throws org.apache.jackrabbit.webdav.DavException
lock in interface org.apache.jackrabbit.webdav.DavResourceorg.apache.jackrabbit.webdav.DavExceptionDavResource.lock(org.apache.jackrabbit.webdav.lock.LockInfo)public org.apache.jackrabbit.webdav.lock.ActiveLock refreshLock(org.apache.jackrabbit.webdav.lock.LockInfo info,
String lockToken)
throws org.apache.jackrabbit.webdav.DavException
refreshLock in interface org.apache.jackrabbit.webdav.DavResourceinfo - lockToken - org.apache.jackrabbit.webdav.DavExceptionDavResource.refreshLock(org.apache.jackrabbit.webdav.lock.LockInfo, String)public void unlock(String lockToken) throws org.apache.jackrabbit.webdav.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 org.apache.jackrabbit.webdav.DavResourcelockToken - org.apache.jackrabbit.webdav.DavException - Always throws HttpServletResponse.SC_METHOD_NOT_ALLOWEDpublic void addLockManager(org.apache.jackrabbit.webdav.lock.LockManager lockMgr)
addLockManager in interface org.apache.jackrabbit.webdav.DavResourceDavResource.addLockManager(org.apache.jackrabbit.webdav.lock.LockManager)public org.apache.jackrabbit.webdav.DavResourceFactory getFactory()
getFactory in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getFactory()public org.apache.jackrabbit.webdav.DavSession getSession()
getSession in interface org.apache.jackrabbit.webdav.DavResourceDavResource.getSession(),
DavResource.getSession()public void init(org.apache.jackrabbit.webdav.transaction.TxLockManager txMgr,
String transactionId)
init in interface org.apache.jackrabbit.webdav.transaction.TransactionResourceTransactionResource.init(TxLockManager, String)public void unlock(String lockToken, org.apache.jackrabbit.webdav.transaction.TransactionInfo tInfo) throws org.apache.jackrabbit.webdav.DavException
unlock in interface org.apache.jackrabbit.webdav.transaction.TransactionResourceorg.apache.jackrabbit.webdav.DavExceptionTransactionResource.unlock(String, org.apache.jackrabbit.webdav.transaction.TransactionInfo)public String getTransactionId()
getTransactionId in interface org.apache.jackrabbit.webdav.transaction.TransactionResourceTransactionResource.getTransactionId()public org.apache.jackrabbit.webdav.version.OptionsResponse getOptionResponse(org.apache.jackrabbit.webdav.version.OptionsInfo optionsInfo)
getOptionResponse in interface org.apache.jackrabbit.webdav.version.DeltaVResourceoptionsInfo - nullDeltaVResource.getOptionResponse(org.apache.jackrabbit.webdav.version.OptionsInfo)public org.apache.jackrabbit.webdav.version.report.Report getReport(org.apache.jackrabbit.webdav.version.report.ReportInfo reportInfo)
throws org.apache.jackrabbit.webdav.DavException
getReport in interface org.apache.jackrabbit.webdav.version.DeltaVResourcereportInfo - org.apache.jackrabbit.webdav.DavExceptionDeltaVResource.getReport(org.apache.jackrabbit.webdav.version.report.ReportInfo)public org.apache.jackrabbit.webdav.DavResource[] getReferenceResources(org.apache.jackrabbit.webdav.property.DavPropertyName hrefPropertyName)
throws org.apache.jackrabbit.webdav.DavException
DavResource objects that are referenced
by the property with the specified name.getReferenceResources in interface org.apache.jackrabbit.webdav.version.DeltaVResourcehrefPropertyName - DavResourcesorg.apache.jackrabbit.webdav.DavExceptionDeltaVResource.getReferenceResources(org.apache.jackrabbit.webdav.property.DavPropertyName)public org.apache.jackrabbit.webdav.search.QueryGrammerSet getQueryGrammerSet()
getQueryGrammerSet in interface org.apache.jackrabbit.webdav.search.SearchResourceSearchResource.getQueryGrammerSet()public org.apache.jackrabbit.webdav.MultiStatus search(org.apache.jackrabbit.webdav.search.SearchInfo sInfo)
throws org.apache.jackrabbit.webdav.DavException
search in interface org.apache.jackrabbit.webdav.search.SearchResourcesInfo - org.apache.jackrabbit.webdav.DavExceptionSearchResource.search(org.apache.jackrabbit.webdav.search.SearchInfo)protected void initPropertyNames()
protected void initProperties()
protected org.apache.jackrabbit.webdav.DavResource createResourceFromLocator(org.apache.jackrabbit.webdav.DavResourceLocator loc)
throws org.apache.jackrabbit.webdav.DavException
DavResource from the given locator.loc - DavResourceorg.apache.jackrabbit.webdav.DavExceptionprotected org.apache.jackrabbit.webdav.DavResourceLocator getLocatorFromItemPath(String itemPath)
DavResourceLocator from the given itemPath path.itemPath - DavResourceLocatorDavLocatorFactory.createResourceLocator(String, String, String)protected org.apache.jackrabbit.webdav.DavResourceLocator getLocatorFromItem(Item repositoryItem)
DavResourceLocator from the given repository item.repositoryItem - getLocatorFromItemPath(String)protected Session getRepositorySession()
getSession().getRepositorySession()AbstractResource.session.protected void initSupportedReports()
SupportedReportSetProperty,
AbstractResource.initSupportedReports()protected String getCreatorDisplayName()
DeltaVConstants.CREATOR_DISPLAYNAME property.null; subclasses may provide a regular value.protected String getCreationDate()
DavPropertyName.CREATIONDATE property.Copyright © 2004-2014 The Apache Software Foundation. All Rights Reserved.