public class LockInfo extends java.lang.Object implements DavConstants, XmlSerializable
LockInfo is a simple utility class encapsulating the information
passed with a LOCK request. It combines both the request body (which if present
is required to by a 'lockinfo' Xml element) and the lock relevant request
headers 'Timeout' and
'Depth'.creationDateFormat, DEPTH_0, DEPTH_1, DEPTH_INFINITY, DEPTH_INFINITY_S, HEADER_AUTHORIZATION, HEADER_CONTENT_LANGUAGE, HEADER_CONTENT_LENGTH, HEADER_CONTENT_TYPE, HEADER_DAV, HEADER_DEPTH, HEADER_DESTINATION, HEADER_ETAG, HEADER_IF, HEADER_LAST_MODIFIED, HEADER_LOCK_TOKEN, HEADER_OVERWRITE, HEADER_TIMEOUT, INFINITE_TIMEOUT, modificationDateFormat, NAMESPACE, OPAQUE_LOCK_TOKEN_PREFIX, PROPERTY_CREATIONDATE, PROPERTY_DISPLAYNAME, PROPERTY_GETCONTENTLANGUAGE, PROPERTY_GETCONTENTLENGTH, PROPERTY_GETCONTENTTYPE, PROPERTY_GETETAG, PROPERTY_GETLASTMODIFIED, PROPERTY_LOCKDISCOVERY, PROPERTY_RESOURCETYPE, PROPERTY_SOURCE, PROPERTY_SUPPORTEDLOCK, PROPFIND_ALL_PROP, PROPFIND_ALL_PROP_INCLUDE, PROPFIND_BY_PROPERTY, PROPFIND_PROPERTY_NAMES, TIMEOUT_INFINITE, UNDEFINED_TIME, UNDEFINED_TIMEOUT, XML_ACTIVELOCK, XML_ALLPROP, XML_COLLECTION, XML_DEPTH, XML_DST, XML_EXCLUSIVE, XML_HREF, XML_INCLUDE, XML_KEEPALIVE, XML_LINK, XML_LOCKENTRY, XML_LOCKINFO, XML_LOCKROOT, XML_LOCKSCOPE, XML_LOCKTOKEN, XML_LOCKTYPE, XML_MULTISTATUS, XML_OMIT, XML_OWNER, XML_PROP, XML_PROPERTYBEHAVIOR, XML_PROPERTYUPDATE, XML_PROPFIND, XML_PROPNAME, XML_PROPSTAT, XML_REMOVE, XML_RESPONSE, XML_RESPONSEDESCRIPTION, XML_SET, XML_SHARED, XML_SOURCE, XML_STATUS, XML_TIMEOUT, XML_WRITE| Constructor and Description |
|---|
LockInfo(org.w3c.dom.Element liElement,
long timeout,
boolean isDeep)
Create a new
LockInfo object from the given information. |
LockInfo(long timeout)
Create a new
LockInfo used for refreshing an existing lock. |
LockInfo(Scope scope,
Type type,
java.lang.String owner,
long timeout,
boolean isDeep)
Create a new
LockInfo |
| Modifier and Type | Method and Description |
|---|---|
java.lang.String |
getOwner()
Return the owner indicated by the corresponding child element from the
'lockinfo' element or
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'owner' element. |
Scope |
getScope()
Return the lock scope or
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'scope' element and the
scope has not been set otherwise. |
long |
getTimeout()
Returns the time until the lock is requested to expire.
|
Type |
getType()
Returns the lock type or
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'type' element and the
type has not been set otherwise. |
boolean |
isDeep()
Returns true if the lock must be applied with depth infinity.
|
boolean |
isRefreshLock()
Returns true if this
LockInfo was created for a LOCK
request intended to refresh an existing lock rather than creating a
new one. |
void |
setScope(Scope scope)
Set the lock scope.
|
void |
setType(Type type)
Set the lock type.
|
org.w3c.dom.Element |
toXml(org.w3c.dom.Document document)
Returns the xml representation of this lock info.
NOTE however, that the depth and the timeout are not included in the xml. |
public LockInfo(long timeout)
LockInfo used for refreshing an existing lock.timeout - public LockInfo(Scope scope, Type type, java.lang.String owner, long timeout, boolean isDeep)
LockInfoscope - type - owner - timeout - isDeep - public LockInfo(org.w3c.dom.Element liElement,
long timeout,
boolean isDeep)
throws DavException
LockInfo object from the given information. If
liElement is null this lockinfo is assumed to
be issued from a 'Refresh Lock' request.liElement - 'lockinfo' element present in the request body of a LOCK request
or null if the request was intended to refresh an existing lock.timeout - Requested timespan until the lock should expire. A LOCK
request MUST contain a 'Timeout'
according to RFC 2518.isDeep - boolean value indicating whether the lock should be applied
with depth infinity or only to the requested resource.DavException - if the liElement is not
null but does not start with an 'lockinfo' element.public Type getType()
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'type' element and the
type has not been set otherwise.nullpublic void setType(Type type)
type - public Scope getScope()
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'scope' element and the
scope has not been set otherwise.nullpublic void setScope(Scope scope)
scope - public java.lang.String getOwner()
null if no 'lockinfo' element was
passed to the constructor or did not contain an 'owner' element.nullpublic boolean isDeep()
public long getTimeout()
public boolean isRefreshLock()
LockInfo was created for a LOCK
request intended to refresh an existing lock rather than creating a
new one.public org.w3c.dom.Element toXml(org.w3c.dom.Document document)
toXml in interface XmlSerializabledocument - XmlSerializable.toXml(Document)Copyright © 2010 - 2023 Adobe. All Rights Reserved