org.apache.jackrabbit.webdav.property
Class AbstractDavProperty

java.lang.Object
  extended byorg.apache.jackrabbit.webdav.property.AbstractDavProperty
All Implemented Interfaces:
DavConstants, DavProperty, XmlSerializable
Direct Known Subclasses:
DefaultDavProperty, HrefProperty, LabelSetProperty, LockDiscovery, QueryGrammerSet, ResourceType, SubscriptionDiscovery, SupportedLock, SupportedMethodSetProperty, SupportedReportSetProperty

public abstract class AbstractDavProperty
extends Object
implements DavProperty

AbstractDavProperty provides generic METHODS used by various implementations of the DavProperty interface.


Field Summary
 
Fields inherited from interface org.apache.jackrabbit.webdav.DavConstants
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_BY_PROPERTY, PROPFIND_PROPERTY_NAMES, TIMEOUT_INFINITE, UNDEFINED_TIMEOUT, XML_ACTIVELOCK, XML_ALLPROP, XML_COLLECTION, XML_DEPTH, XML_DST, XML_EXCLUSIVE, XML_HREF, XML_KEEPALIVE, XML_LINK, XML_LOCKENTRY, XML_LOCKINFO, 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 Summary
AbstractDavProperty(DavPropertyName name, boolean isProtected)
          Create a new AbstractDavProperty with the given DavPropertyName and a boolean flag indicating whether this property is protected.
 
Method Summary
 boolean equals(Object obj)
          Checks if this property has the same name and value as the given one.
 DavPropertyName getName()
          Returns the name of this property.
 int hashCode()
          Computes the hash code using this propertys name and value.
 boolean isProtected()
          Returns true if this property is protected or computed.
 Element toXml(Document document)
          Return a JDOM element representation of this property.
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 
Methods inherited from interface org.apache.jackrabbit.webdav.property.DavProperty
getValue
 

Constructor Detail

AbstractDavProperty

public AbstractDavProperty(DavPropertyName name,
                           boolean isProtected)
Create a new AbstractDavProperty with the given DavPropertyName and a boolean flag indicating whether this property is protected.

Parameters:
name -
isProtected -
Method Detail

hashCode

public int hashCode()
Computes the hash code using this propertys name and value.

Returns:
the hash code

equals

public boolean equals(Object obj)
Checks if this property has the same name and value as the given one.

Parameters:
obj - the object to compare to
Returns:
true if the 2 objects are equal; false otherwise

toXml

public Element toXml(Document document)
Return a JDOM element representation of this property. The value of the property will be added as text or as child element.
 new DavProperty("displayname", "WebDAV Directory").toXml
 gives a element like:
 <D:displayname>WebDAV Directory</D:displayname>

 new DavProperty("resourcetype", new Element("collection")).toXml
 gives a element like:
 <D:resourcetype><D:collection/></D:resourcetype>

 Element[] customVals = { new Element("bla", customNamespace), new Element("bli", customNamespace) };
 new DavProperty("custom-property", customVals, customNamespace).toXml
 gives an element like
 <Z:custom-property>
    <Z:bla/>
    <Z:bli/>
 </Z:custom-property>
 

Specified by:
toXml in interface XmlSerializable
Parameters:
document -
Returns:
a JDOM element of this property
See Also:
XmlSerializable.toXml(Document)

getName

public DavPropertyName getName()
Returns the name of this property.

Specified by:
getName in interface DavProperty
Returns:
name
See Also:
DavProperty.getName()

isProtected

public boolean isProtected()
Returns true if this property is protected or computed.

Specified by:
isProtected in interface DavProperty
Returns:
true if this is a protected (or computed) property.
See Also:
DavProperty.isProtected()


Copyright © 2005-2006 . All Rights Reserved.