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  CaldavReportMethod.CalendarQueryPars  

    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
    protected CaldavReportMethod.CalendarQueryPars cqpars  

    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
    CaldavReportMethod()  
  • Method Summary

    Modifier and Type Method Description
    protected java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> doNodeAndChildren​(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    protected java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> doNodeAndChildren​(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node, ietf.params.xml.ns.caldav.ExpandType expand, ietf.params.xml.ns.caldav.LimitRecurrenceSetType lrs, java.util.List<java.lang.String> retrieveList)  
    protected int getCaldavReportType​(org.w3c.dom.Document doc)
    See if we recognize this report type and return an index.
    java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getMgetNodes​(java.util.Collection<java.lang.String> hrefs, java.util.Collection<java.lang.String> badHrefs)
    Return collection of nodes specified by list of hrefs.
    void init()
    Called at each request
    protected void process​(CaldavReportMethod.CalendarQueryPars cqp, java.lang.String resourceUri)  
    protected void process​(org.w3c.dom.Document doc, int depth, javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)  
    protected void processDoc​(org.w3c.dom.Document doc)  
    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, enableAuditLogger, enableErrorLogger, enableMetricsLogger, error, error, error, getLogLevel, info, isAuditLoggerEnabled, isErrorLoggerEnabled, isMetricsDebugEnabled, isMetricsLoggerEnabled, metrics, setLoggerClass, setLoggerClass, 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​(org.w3c.dom.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​(org.w3c.dom.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​(org.w3c.dom.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, java.lang.String resourceUri) throws org.bedework.webdav.servlet.shared.WebdavException
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getMgetNodes

      public java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getMgetNodes​(java.util.Collection<java.lang.String> hrefs, java.util.Collection<java.lang.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 java.util.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 java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> doNodeAndChildren​(CaldavReportMethod.CalendarQueryPars cqp, org.bedework.webdav.servlet.shared.WebdavNsNode node, ietf.params.xml.ns.caldav.ExpandType expand, ietf.params.xml.ns.caldav.LimitRecurrenceSetType lrs, java.util.List<java.lang.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