org.apache.jackrabbit.webdav.version.report
Class ReportType

java.lang.Object
  extended byorg.apache.jackrabbit.webdav.version.report.ReportType
All Implemented Interfaces:
DeltaVConstants, XmlSerializable

public class ReportType
extends Object
implements DeltaVConstants, XmlSerializable

ReportType...


Field Summary
static ReportType EXPAND_PROPERTY
           
static ReportType LOCATE_BY_HISTORY
           
static ReportType VERSION_TREE
           
 
Fields inherited from interface org.apache.jackrabbit.webdav.version.DeltaVConstants
ATTR_NAME, ATTR_NAMESPACE, COMMENT, CREATOR_DISPLAYNAME, HEADER_LABEL, HEADER_LOCATION, NAMESPACE, SUPPORTED_LIVE_PROPERTY_SET, SUPPORTED_METHOD_SET, SUPPORTED_REPORT_SET, WORKSPACE, XML_ACTIVITY, XML_ACTIVITY_COLLECTION_SET, XML_BASELINE, XML_CHECKOUT, XML_CHECKOUT_CHECKIN, XML_CHECKOUT_UNLOCK_CHECKIN, XML_EXPAND_PROPERTY, XML_LABEL, XML_LABEL_ADD, XML_LABEL_NAME, XML_LABEL_REMOVE, XML_LABEL_SET, XML_LOCATE_BY_HISTORY, XML_LOCKED_CHECKIN, XML_MERGE, XML_N0_AUTO_MERGE, XML_N0_CHECKOUT, XML_OPTIONS, XML_OPTIONS_RESPONSE, XML_PROPERTY, XML_REPORT, XML_SUPPORTED_METHOD, XML_SUPPORTED_REPORT, XML_UPDATE, XML_VERSION, XML_VERSION_HISTORY, XML_VERSION_HISTORY_SET, XML_VERSION_TREE, XML_VH_COLLECTION_SET, XML_WORKSPACE, XML_WSP_COLLECTION_SET
 
Method Summary
 Report createReport(DeltaVResource resource, ReportInfo info)
          Creates a new Report with this type.
 String getLocalName()
           
 Namespace getNamespace()
           
 String getReportName()
          Return the qualified name of this ReportType.
static ReportType getType(ReportInfo reportInfo)
          Return the ReportType requested by the given report info object.
 boolean isRequestedReportType(ReportInfo reqInfo)
          Returns true if this ReportType is requested by the given ReportInfo
static ReportType register(String localName, Namespace namespace, Class reportClass)
          Register the report type with the given name, namespace and class, that can run that report.
 Element toXml(Document document)
          Returns an Xml element representing this report type.
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

VERSION_TREE

public static final ReportType VERSION_TREE

EXPAND_PROPERTY

public static final ReportType EXPAND_PROPERTY

LOCATE_BY_HISTORY

public static final ReportType LOCATE_BY_HISTORY
Method Detail

createReport

public Report createReport(DeltaVResource resource,
                           ReportInfo info)
                    throws DavException
Creates a new Report with this type.

Returns:
Throws:
DavException

toXml

public Element toXml(Document document)
Returns an Xml element representing this report type. It may be used to build the body for a REPORT request.

Specified by:
toXml in interface XmlSerializable
Parameters:
document -
Returns:
Xml representation
See Also:
XmlSerializable.toXml(org.w3c.dom.Document)

isRequestedReportType

public boolean isRequestedReportType(ReportInfo reqInfo)
Returns true if this ReportType is requested by the given ReportInfo

Parameters:
reqInfo -
Returns:

getReportName

public String getReportName()
Return the qualified name of this ReportType.

Returns:
qualified name

getLocalName

public String getLocalName()
Returns:

getNamespace

public Namespace getNamespace()
Returns:

register

public static ReportType register(String localName,
                                  Namespace namespace,
                                  Class reportClass)
Register the report type with the given name, namespace and class, that can run that report.

Parameters:
localName -
namespace -
reportClass -
Returns:
Throws:
IllegalArgumentException - if either parameter is null or if the given class does not implement the Report interface or if it does not provide an empty constructor.

getType

public static ReportType getType(ReportInfo reportInfo)
Return the ReportType requested by the given report info object.

Parameters:
reportInfo -
Returns:
the requested ReportType
Throws:
IllegalArgumentException - if the reportInfo is null or if the requested report type has not been registered yet.


Copyright © 2005-2006 . All Rights Reserved.