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

java.lang.Object
  extended by org.apache.jackrabbit.webdav.property.AbstractDavProperty<Value[]>
      extended by org.apache.jackrabbit.webdav.jcr.search.SearchResultProperty
All Implemented Interfaces:
JcrRemotingConstants, DavConstants, ItemResourceConstants, DavProperty<Value[]>, PropEntry, XmlSerializable

public class SearchResultProperty
extends AbstractDavProperty<Value[]>
implements ItemResourceConstants

SearchResultProperty...


Field Summary
 
Fields inherited from interface org.apache.jackrabbit.webdav.jcr.ItemResourceConstants
EXCLUSIVE_SESSION, 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_SELECTOR_NAME, JCR_TYPE, JCR_UUID, JCR_VALUE, JCR_VALUES, JCR_VERSIONABLEUUID, JCR_WEAK_REFERENCES, JCR_WORKSPACE_NAME, METHODS, NAMESPACE, PRIVILEGE_JCR_ADD_NODE, PRIVILEGE_JCR_READ, PRIVILEGE_JCR_REMOVE, PRIVILEGE_JCR_SET_PROPERTY
 
Fields inherited from interface org.apache.jackrabbit.commons.webdav.JcrRemotingConstants
ATTR_VALUE_TYPE, IMPORT_UUID_BEHAVIOR, JCR_DEFINITION_LN, JCR_DEPTH_LN, JCR_INDEX_LN, JCR_ISMODIFIED_LN, JCR_ISNEW_LN, JCR_LENGTH_LN, JCR_LENGTHS_LN, JCR_MIXINNODETYPES_LN, JCR_NAME_LN, JCR_NAMESPACES_LN, JCR_PARENT_LN, JCR_PATH_LN, JCR_PRIMARYITEM_LN, JCR_PRIMARYNODETYPE_LN, JCR_QUERY_RESULT_LN, JCR_REFERENCES_LN, JCR_SELECTOR_NAME_LN, JCR_TYPE_LN, JCR_UUID_LN, JCR_VALUE_LN, JCR_VALUES_LN, JCR_VERSIONABLEUUID_LN, JCR_WEAK_REFERENCES_LN, JCR_WORKSPACE_NAME_LN, NS_PREFIX, NS_URI, REPORT_EXPORT_VIEW, REPORT_LOCATE_BY_UUID, REPORT_LOCATE_CORRESPONDING_NODE, REPORT_NODETYPES, REPORT_PRIVILEGES, REPORT_REGISTERED_NAMESPACES, REPORT_REPOSITORY_DESCRIPTORS, 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_QUERY_RESULT_COLUMN, 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_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 Summary
SearchResultProperty(DavProperty<?> property, ValueFactory valueFactory)
          Wrap the specified DavProperty in a new SearchResultProperty.
SearchResultProperty(String[] columnNames, String[] selectorNames, Value[] values)
          Creates a new SearchResultProperty.
 
Method Summary
 String[] getColumnNames()
          Return the column names representing the names of the properties present in the values.
 String[] getSelectorNames()
           
 Value[] 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, isInvisibleInAllprop
 
Methods inherited from class java.lang.Object
clone, finalize, getClass, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

SearchResultProperty

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

Parameters:
columnNames - the column names of the search row represented by this dav property.
selectorNames - the selecotr names of the 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

getSelectorNames

public String[] getSelectorNames()
Returns:
the selector name for each of the columns in the result property.

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 Value[] getValue()
Same as getValues()

Specified by:
getValue in interface DavProperty<Value[]>
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, dcr:type and an optional dcr:selectorName element is created. Example:
 -----------------------------------------------------------
   col-name  |   bla   |   bli   |  jcr:path  |  jcr:score
 -----------------------------------------------------------
   value     |   xxx   |   111   |  /aNode    |    1
   type      |    1    |    3    |     8      |    3
   sel-name  |         |         |     S      |    S
 -----------------------------------------------------------
 
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:selectorName>S<dcr:selectorName/>
    </dcr:column>
    <dcr:column>
       <dcr:name>jcr:score<dcr:name/>
       <dcr:value dcr:type="Long">1<dcr:value/>
       <dcr:selectorName>S<dcr:selectorName/>
    </dcr:column>
 </dcr:search-result-property>
 

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


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