org.apache.jackrabbit.webdav.jcr.search
Class SearchResultProperty

java.lang.Object
  extended by org.apache.jackrabbit.webdav.property.AbstractDavProperty
      extended by org.apache.jackrabbit.webdav.jcr.search.SearchResultProperty
All Implemented Interfaces:
DavConstants, ItemResourceConstants, DavProperty, XmlSerializable

public class SearchResultProperty
extends AbstractDavProperty
implements ItemResourceConstants

SearchResultProperty...


Field Summary
static DavPropertyName SEARCH_RESULT_PROPERTY
           
 
Fields inherited from interface org.apache.jackrabbit.webdav.jcr.ItemResourceConstants
ATTR_VALUE_TYPE, EXCLUSIVE_SESSION, IMPORT_UUID_BEHAVIOR, JCR_DEFINITION, JCR_DEPTH, JCR_INDEX, JCR_ISMODIFIED, JCR_ISNEW, JCR_LENGTH, JCR_LENGTHS, JCR_MIXINNODETYPES, JCR_NAME, JCR_NAMESPACES, JCR_PARENT, JCR_PATH, JCR_PRIMARYITEM, JCR_PRIMARYNODETYPE, JCR_REFERENCES, JCR_TYPE, JCR_UUID, JCR_VALUE, JCR_VALUES, JCR_VERSIONABLEUUID, METHODS, NAMESPACE, PRIVILEGE_JCR_ADD_NODE, PRIVILEGE_JCR_READ, PRIVILEGE_JCR_REMOVE, PRIVILEGE_JCR_SET_PROPERTY, ROOT_ITEM_PATH, ROOT_ITEM_RESOURCEPATH, VERSIONSTORAGE_PATH, XML_DESCRIPTOR, XML_DESCRIPTORKEY, XML_DESCRIPTORVALUE, XML_EXCLUSIVE_SESSION_SCOPED, XML_LENGTH, XML_NAMESPACE, XML_PREFIX, XML_PRIMARYNODETYPE, XML_RELPATH, XML_REMOVEEXISTING, XML_URI, XML_VALUE
 
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_TIME, 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
SearchResultProperty(DavProperty property, ValueFactory valueFactory)
          Wrap the specified DavProperty in a new SearchResultProperty.
SearchResultProperty(String[] columnNames, Value[] values)
          Creates a new SearchResultProperty.
 
Method Summary
 String[] getColumnNames()
          Return the column names representing the names of the properties present in the values.
 Object getValue()
          Same as getValues()
 Value[] getValues()
          Return the values representing the values of that row in the search result table.
 Element toXml(Document document)
          Return the xml representation of this webdav property.
 
Methods inherited from class org.apache.jackrabbit.webdav.property.AbstractDavProperty
equals, getName, hashCode, isProtected
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

SEARCH_RESULT_PROPERTY

public static final DavPropertyName SEARCH_RESULT_PROPERTY
Constructor Detail

SearchResultProperty

public SearchResultProperty(String[] columnNames,
                            Value[] values)
Creates a new SearchResultProperty.

Parameters:
columnNames - the column names of the search row represented by this dav property.
values - the values present in the columns

SearchResultProperty

public SearchResultProperty(DavProperty property,
                            ValueFactory valueFactory)
                     throws RepositoryException
Wrap the specified DavProperty in a new SearchResultProperty.

Parameters:
property -
valueFactory - factory used to deserialize the xml value to a JCR value.
Throws:
RepositoryException - if an error occurs while build the property value
IllegalArgumentException - if the specified property does have the required form.
See Also:
getValues()
Method Detail

getColumnNames

public String[] getColumnNames()
Return the column names representing the names of the properties present in the values.

Returns:
columnNames

getValues

public Value[] getValues()
Return the values representing the values of that row in the search result table.

Returns:
values
See Also:
Row.getValues()

getValue

public Object getValue()
Same as getValues()

Specified by:
getValue in interface DavProperty
Returns:
Array of JCR Value object

toXml

public Element toXml(Document document)
Return the xml representation of this webdav property. For every value in the query result row a dcr:name, dcr:value and dcr:type element is created. Example:
 -----------------------------------------------------------
   col-name  |   bla   |   bli   |  jcr:path  |  jcr:score
 -----------------------------------------------------------
   value     |   xxx   |   111   |  /aNode    |    1
   type      |    1    |    3    |     8      |    3
 -----------------------------------------------------------
 
results in:
 <dcr:search-result-property xmlns:dcr="http://www.day.com/jcr/webdav/1.0">
    <dcr:column>
       <dcr:name>bla<dcr:name/>
       <dcr:value dcr:type="String">xxx<dcr:value/>
    </dcr:column>
    <dcr:column>
       <dcr:name>bli<dcr:name/>
       <dcr:value dcr:type="Long">111<dcr:value/>
    </dcr:column>
    <dcr:column>
       <dcr:name>jcr:path<dcr:name/>
       <dcr:value dcr:type="Path">/aNode<dcr:value/>
    </dcr:column>
    <dcr:column>
       <dcr:name>jcr:score<dcr:name/>
       <dcr:value dcr:type="Long">1<dcr:value/>
    </dcr:column>
 </dcr:search-result-property>
 

Specified by:
toXml in interface XmlSerializable
Overrides:
toXml in class AbstractDavProperty
Parameters:
document - to be used as factory.
Returns:
a JDOM element of this property
See Also:
XmlSerializable.toXml(org.w3c.dom.Document)


Copyright © 2004-2008 The Apache Software Foundation. All Rights Reserved.