Class CaldavReportMethod

java.lang.Object
org.bedework.webdav.servlet.common.MethodBase
org.bedework.webdav.servlet.common.ReportMethod
org.bedework.caldav.server.CaldavReportMethod
All Implemented Interfaces:
org.bedework.util.logging.Logged, org.bedework.webdav.servlet.common.SecureXml
Direct Known Subclasses:
ReportBase

public class CaldavReportMethod extends org.bedework.webdav.servlet.common.ReportMethod
Class called to handle CalDAV REPORT.
Author:
Mike Douglass douglm rpi.edu
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    protected static class 
     

    Nested classes/interfaces inherited from class org.bedework.webdav.servlet.common.MethodBase

    org.bedework.webdav.servlet.common.MethodBase.MethodInfo
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
     

    Fields inherited from class org.bedework.webdav.servlet.common.ReportMethod

    pm, preq

    Fields inherited from class org.bedework.webdav.servlet.common.MethodBase

    dumpContent, hasBriefHeader, nsIntf, xml
  • Constructor Summary

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Collection<org.bedework.webdav.servlet.shared.WebdavNsNode>
    doNodeAndChildren(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node)
     
    protected Collection<org.bedework.webdav.servlet.shared.WebdavNsNode>
    doNodeAndChildren(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node, ExpandType expand, LimitRecurrenceSetType lrs, List<String> retrieveList)
     
    protected int
    See if we recognize this report type and return an index.
    Collection<org.bedework.webdav.servlet.shared.WebdavNsNode>
    Return collection of nodes specified by list of hrefs.
    void
    Called at each request
    protected void
     
    protected void
    process(Document doc, int depth, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)
     
    protected void
     
    void
    processFbResp(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, int depth)
    Handle free/busy response
    void
    processResp(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, int depth)
     

    Methods inherited from class org.bedework.webdav.servlet.common.ReportMethod

    doMethod, doNodeProperties

    Methods inherited from class org.bedework.webdav.servlet.common.MethodBase

    addDavHeader, addHeaders, addNs, addStatus, cdataProperty, checkDepth, checkServerInfo, closeTag, defaultDepth, doPropFind, emptyTag, emptyTag, flush, getChildren, getChildrenArray, getElementContent, getLogger, getNsAbbrev, getNsIntf, getOnlyChild, getResourceUri, getStatus, init, isEmpty, openTag, openTagNoNewline, parseContent, parseContent, property, property, propertyTagVal, startEmit

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.bedework.util.logging.Logged

    audit, debug, debug, debug, enableAuditLogger, enableErrorLogger, enableMetricsLogger, error, error, error, getLogLevel, info, isAuditLoggerEnabled, isErrorLoggerEnabled, isMetricsDebugEnabled, isMetricsLoggerEnabled, metrics, setLoggerClass, setLoggerClass, trace, trace, trace, warn

    Methods inherited from interface org.bedework.webdav.servlet.common.SecureXml

    parseXmlSafely
  • Field Details

  • Constructor Details

    • CaldavReportMethod

      public CaldavReportMethod()
  • Method Details

    • init

      public void init()
      Called at each request
      Overrides:
      init in class org.bedework.webdav.servlet.common.ReportMethod
    • process

      protected void process(Document doc, int depth, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp) throws org.bedework.webdav.servlet.shared.WebdavException
      Overrides:
      process in class org.bedework.webdav.servlet.common.ReportMethod
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getCaldavReportType

      protected int getCaldavReportType(Document doc) throws org.bedework.webdav.servlet.shared.WebdavException
      See if we recognize this report type and return an index.
      Parameters:
      doc - parsed document
      Returns:
      index or <0 for unknown.
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException - on fatal error
    • processDoc

      protected void processDoc(Document doc) throws org.bedework.webdav.servlet.shared.WebdavException
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • processResp

      public void processResp(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, int depth) throws org.bedework.webdav.servlet.shared.WebdavException
      Parameters:
      req - http request
      resp - http response
      depth - from depth header
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException - on fatal error
    • process

      protected void process(CaldavReportMethod.CalendarQueryPars cqp, String resourceUri) throws org.bedework.webdav.servlet.shared.WebdavException
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getMgetNodes

      public Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getMgetNodes(Collection<String> hrefs, Collection<String> badHrefs) throws org.bedework.webdav.servlet.shared.WebdavException
      Return collection of nodes specified by list of hrefs.
      Parameters:
      hrefs - hrefs to find
      badHrefs - list of unsatisfied hrefs
      Returns:
      Collection of nodes
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException - on fatal error
    • doNodeAndChildren

      protected Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> doNodeAndChildren(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • doNodeAndChildren

      protected Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> doNodeAndChildren(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node, ExpandType expand, LimitRecurrenceSetType lrs, List<String> retrieveList) throws org.bedework.webdav.servlet.shared.WebdavException
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • processFbResp

      public void processFbResp(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, int depth) throws org.bedework.webdav.servlet.shared.WebdavException
      Handle free/busy response
      Parameters:
      req - http request
      resp - http response
      depth - from depth header
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException - on fatal error