Class CaldavBWIntf

java.lang.Object
org.bedework.webdav.servlet.shared.WebdavNsIntf
org.bedework.caldav.server.CaldavBWIntf
All Implemented Interfaces:
java.io.Serializable, org.bedework.util.logging.Logged

public class CaldavBWIntf
extends org.bedework.webdav.servlet.shared.WebdavNsIntf
This class implements a namespace interface for the webdav abstract servlet. One of these interfaces is associated with each current session.

As a first pass we'll define webdav urls as starting with
/user/user-name/calendar-name/

uri resolution should be made part of the core calendar allowing all such distinctions to be removed from this code.

The part following the above prefix probably determines exactly what is delivered. We may want the entire calendar (or what we show by default) or a single event from the calendar

Author:
Mike Douglass douglm rpi.edu
See Also:
Serialized Form
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.bedework.webdav.servlet.shared.WebdavNsIntf

    org.bedework.webdav.servlet.shared.WebdavNsIntf.AclInfo, org.bedework.webdav.servlet.shared.WebdavNsIntf.Content, org.bedework.webdav.servlet.shared.WebdavNsIntf.PutContentResult, org.bedework.webdav.servlet.shared.WebdavNsIntf.SessCt
  • Field Summary

    Fields inherited from class org.bedework.webdav.servlet.shared.WebdavNsIntf

    account, anonymous, dumpContent, existanceDoesExist, existanceMay, existanceMust, existanceNot, methods, nodeTypeCollection, nodeTypeEntity, nodeTypePrincipal, nodeTypeUnknown, servlet, session, sessNum, xml
  • Constructor Summary

    Constructors
    Constructor Description
    CaldavBWIntf()  
  • Method Summary

    Modifier and Type Method Description
    void acceptMkcolContent​(javax.servlet.http.HttpServletRequest req)  
    void addNamespace​(org.bedework.util.xml.XmlEmit xml)  
    boolean canPut​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    void close()  
    void copyMove​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode from, org.bedework.webdav.servlet.shared.WebdavNsNode to, boolean copy, boolean overwrite, int depth)  
    void create​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    void createAlias​(org.bedework.webdav.servlet.shared.WebdavNsNode alias)  
    void delete​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    void emitAcl​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    void emitError​(javax.xml.namespace.QName errorTag, java.lang.String extra, org.bedework.util.xml.XmlEmit xml)  
    boolean generatePropValue​(org.bedework.webdav.servlet.shared.WebdavNsNode node, org.bedework.webdav.servlet.shared.WebdavProperty pr, boolean allProp)  
    java.lang.String getAcceptContentType​(javax.servlet.http.HttpServletRequest req)  
    boolean getAccessControl()  
    org.bedework.webdav.servlet.common.AccessUtil getAccessUtil()  
    java.util.Collection<java.lang.String> getAclPrincipalInfo​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    SynchConnectionsMBean getActiveConnections()  
    java.lang.String getAddMemberSuffix()  
    org.bedework.webdav.servlet.shared.WebdavNsIntf.Content getBinaryContent​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    boolean getCalWS()  
    void getCalWSProperties​(CaldavBwNode node, java.util.List<org.oasis_open.docs.ws_calendar.ns.soap.GetPropertiesBasePropertyType> props)  
    java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getChildren​(org.bedework.webdav.servlet.shared.WebdavNsNode node, java.util.function.Supplier<java.lang.Object> filterGetter)  
    org.bedework.webdav.servlet.shared.WebdavNsIntf.Content getContent​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, java.lang.String contentType, org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    java.lang.String getDavHeader​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    boolean getDirectoryBrowsingDisallowed()  
    void getFreeBusy​(CaldavCalNode cnode, FreeBusyQuery freeBusy, int depth)
    The node represents a calendar resource for which we must get free-busy information.
    java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getGroups​(java.lang.String resourceUri, java.lang.String principalUrl)  
    static org.bedework.util.jmx.ManagementContext getManagementContext()  
    org.bedework.webdav.servlet.shared.WebdavNsNode getNode​(java.lang.String uri, int existence, int nodeType, boolean addMember)  
    boolean getNotifyWs()
    Get the notify web service flag
    org.bedework.webdav.servlet.shared.WebdavNsNode getParent​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    java.util.Collection<java.lang.String> getPrincipalCollectionSet​(java.lang.String resourceUri)  
    java.util.Collection<org.bedework.webdav.servlet.shared.WebdavPrincipalNode> getPrincipals​(java.lang.String resourceUri, org.bedework.webdav.servlet.shared.PrincipalPropertySearch pps)  
    org.bedework.webdav.servlet.shared.serverInfo.ServerInfo getServerInfo()  
    java.lang.String getSupportedLocks()  
    org.bedework.webdav.servlet.shared.WdSynchReport getSynchReport​(java.lang.String path, java.lang.String token, int limit, boolean recurse)  
    boolean getSynchWs()
    Get the synch web service flag
    java.lang.String getSyncToken​(java.lang.String path)  
    SysIntf getSysi()  
    org.bedework.webdav.servlet.shared.WdSysIntf getSysIntf()  
    org.oasis_open.docs.ns.xri.xrd_1.XRDType getXRD​(CaldavBwNode node)  
    void init​(org.bedework.webdav.servlet.common.WebdavServlet servlet, javax.servlet.http.HttpServletRequest req, java.util.HashMap<java.lang.String,​org.bedework.webdav.servlet.common.MethodBase.MethodInfo> methods, boolean dumpContent)
    Called before any other method is called to allow initialization to take place at the first or subsequent requests
    boolean knownProperty​(org.bedework.webdav.servlet.shared.WebdavNsNode node, org.bedework.webdav.servlet.shared.WebdavProperty pr)  
    void makeCollection​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node)
    Create an empty collection at the given location.
    org.bedework.webdav.servlet.shared.WebdavProperty makeProp​(org.w3c.dom.Element propnode)
    Override this to create namespace specific property objects.
    java.lang.String makeUserHref​(java.lang.String id)  
    boolean prefetch​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    org.bedework.webdav.servlet.shared.WebdavNsIntf.PutContentResult putBinaryContent​(javax.servlet.http.HttpServletRequest req, org.bedework.webdav.servlet.shared.WebdavNsNode node, java.lang.String[] contentTypePars, java.io.InputStream contentStream, org.bedework.webdav.servlet.common.Headers.IfHeaders ifHeaders)  
    org.bedework.webdav.servlet.shared.WebdavNsIntf.PutContentResult putContent​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node, java.lang.String[] contentTypePars, java.io.Reader contentRdr, org.bedework.webdav.servlet.common.Headers.IfHeaders ifHeaders)  
    boolean putEvent​(javax.servlet.http.HttpServletResponse resp, CaldavComponentNode bwnode, ietf.params.xml.ns.icalendar_2.IcalendarType ical, boolean create, boolean noInvites, java.lang.String ifStag, java.lang.String ifEtag)  
    void putNode​(org.bedework.webdav.servlet.shared.WebdavNsNode node)  
    java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> query​(org.bedework.webdav.servlet.shared.WebdavNsNode wdnode, java.util.List<java.lang.String> retrieveList, RetrievalMode retrieveRecur, ietf.params.xml.ns.caldav.FilterType fltr)
    Use the given query to return a collection of nodes.
    void reAuth​(javax.servlet.http.HttpServletRequest req, java.lang.String account, boolean service, java.lang.String opaqueData)
    See if we can reauthenticate.
    static void registerMbean​(javax.management.ObjectName key, java.lang.Object bean)  
    void rollback()  
    boolean specialUri​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, java.lang.String resourceUri)  
    static void unregister​(javax.management.ObjectName key)  
    void updateAccess​(org.bedework.webdav.servlet.shared.WebdavNsIntf.AclInfo info)  
    void updateAccess​(org.bedework.webdav.servlet.shared.WebdavNsIntf.AclInfo info, CaldavBwNode node)  

    Methods inherited from class org.bedework.webdav.servlet.shared.WebdavNsIntf

    addStatus, closePropstat, closePropstat, emitSupportedReportSet, fixPath, generateHtml, getAccount, getAnonymous, getChildren, getElementContent, getLocation, getLogger, getMethod, getMethodNames, getOnlyChild, getReader, getRequest, getResourceUri, getReturnMultistatusOk, getServlet, getUri, getXmlEmit, makeName, makeServerInfoUrl, normalizeUri, openPropstat, parseProp, putContent, streamContent, syncTokenMatch, writeContent

    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
  • Constructor Details

    • CaldavBWIntf

      public CaldavBWIntf()
  • Method Details

    • registerMbean

      public static void registerMbean​(javax.management.ObjectName key, java.lang.Object bean)
    • unregister

      public static void unregister​(javax.management.ObjectName key)
      Parameters:
      key - bean objectname
    • getManagementContext

      public static org.bedework.util.jmx.ManagementContext getManagementContext()
      Returns:
      the management context.
    • init

      public void init​(org.bedework.webdav.servlet.common.WebdavServlet servlet, javax.servlet.http.HttpServletRequest req, java.util.HashMap<java.lang.String,​org.bedework.webdav.servlet.common.MethodBase.MethodInfo> methods, boolean dumpContent) throws org.bedework.webdav.servlet.shared.WebdavException
      Called before any other method is called to allow initialization to take place at the first or subsequent requests
      Overrides:
      init in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Parameters:
      servlet - calling servlet
      req - http request
      methods - HashMap table of method info
      dumpContent - true if we dump content
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getActiveConnections

      public SynchConnectionsMBean getActiveConnections() throws java.lang.Throwable
      Throws:
      java.lang.Throwable
    • reAuth

      public void reAuth​(javax.servlet.http.HttpServletRequest req, java.lang.String account, boolean service, java.lang.String opaqueData) throws org.bedework.webdav.servlet.shared.WebdavException
      See if we can reauthenticate. Use for real-time service which needs to authenticate as a particular principal.
      Parameters:
      req - http request
      account - to reinit as
      service - - true if this is a service call - e.g. iSchedule - rather than a real user.
      opaqueData - - possibly from headers
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getCalWS

      public boolean getCalWS()
      Returns:
      boolean
    • getSynchWs

      public boolean getSynchWs()
      Get the synch web service flag
      Returns:
      true if it's a synch service
    • getNotifyWs

      public boolean getNotifyWs()
      Get the notify web service flag
      Returns:
      true if it's a notify service
    • getDavHeader

      public java.lang.String getDavHeader​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Overrides:
      getDavHeader in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getServerInfo

      public org.bedework.webdav.servlet.shared.serverInfo.ServerInfo getServerInfo()
      Overrides:
      getServerInfo in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • emitError

      public void emitError​(javax.xml.namespace.QName errorTag, java.lang.String extra, org.bedework.util.xml.XmlEmit xml)
      Overrides:
      emitError in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • getAccessUtil

      public org.bedework.webdav.servlet.common.AccessUtil getAccessUtil()
      Specified by:
      getAccessUtil in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • canPut

      public boolean canPut​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      canPut in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getAddMemberSuffix

      public java.lang.String getAddMemberSuffix()
      Specified by:
      getAddMemberSuffix in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • getDirectoryBrowsingDisallowed

      public boolean getDirectoryBrowsingDisallowed() throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getDirectoryBrowsingDisallowed in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • rollback

      public void rollback()
      Specified by:
      rollback in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • close

      public void close() throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      close in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getSysIntf

      public org.bedework.webdav.servlet.shared.WdSysIntf getSysIntf()
      Specified by:
      getSysIntf in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • getSysi

      public SysIntf getSysi()
      Returns:
      SysIntf
    • getSupportedLocks

      public java.lang.String getSupportedLocks()
      Specified by:
      getSupportedLocks in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • getAccessControl

      public boolean getAccessControl()
      Specified by:
      getAccessControl in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • addNamespace

      public void addNamespace​(org.bedework.util.xml.XmlEmit xml)
      Overrides:
      addNamespace in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • getNode

      public org.bedework.webdav.servlet.shared.WebdavNsNode getNode​(java.lang.String uri, int existence, int nodeType, boolean addMember) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getNode in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • putNode

      public void putNode​(org.bedework.webdav.servlet.shared.WebdavNsNode node)
      Specified by:
      putNode in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • delete

      public void delete​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      delete in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getChildren

      public java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getChildren​(org.bedework.webdav.servlet.shared.WebdavNsNode node, java.util.function.Supplier<java.lang.Object> filterGetter) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getChildren in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getParent

      public org.bedework.webdav.servlet.shared.WebdavNsNode getParent​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getParent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • prefetch

      public boolean prefetch​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Overrides:
      prefetch in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getContent

      public org.bedework.webdav.servlet.shared.WebdavNsIntf.Content getContent​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, java.lang.String contentType, org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getContent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getBinaryContent

      public org.bedework.webdav.servlet.shared.WebdavNsIntf.Content getBinaryContent​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getBinaryContent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getAcceptContentType

      public java.lang.String getAcceptContentType​(javax.servlet.http.HttpServletRequest req)
      Specified by:
      getAcceptContentType in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • putContent

      public org.bedework.webdav.servlet.shared.WebdavNsIntf.PutContentResult putContent​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node, java.lang.String[] contentTypePars, java.io.Reader contentRdr, org.bedework.webdav.servlet.common.Headers.IfHeaders ifHeaders) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      putContent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • putBinaryContent

      public org.bedework.webdav.servlet.shared.WebdavNsIntf.PutContentResult putBinaryContent​(javax.servlet.http.HttpServletRequest req, org.bedework.webdav.servlet.shared.WebdavNsNode node, java.lang.String[] contentTypePars, java.io.InputStream contentStream, org.bedework.webdav.servlet.common.Headers.IfHeaders ifHeaders) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      putBinaryContent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • putEvent

      public boolean putEvent​(javax.servlet.http.HttpServletResponse resp, CaldavComponentNode bwnode, ietf.params.xml.ns.icalendar_2.IcalendarType ical, boolean create, boolean noInvites, java.lang.String ifStag, java.lang.String ifEtag) throws org.bedework.webdav.servlet.shared.WebdavException
      Parameters:
      resp - http response
      bwnode - component node
      ical - ical object
      create - true for create
      noInvites - true for send no invites
      ifStag - schedule tag
      ifEtag - etag
      Returns:
      true for OK
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • create

      public void create​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      create in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • createAlias

      public void createAlias​(org.bedework.webdav.servlet.shared.WebdavNsNode alias) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      createAlias in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • acceptMkcolContent

      public void acceptMkcolContent​(javax.servlet.http.HttpServletRequest req) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      acceptMkcolContent in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • makeCollection

      public void makeCollection​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Create an empty collection at the given location.
        201 (Created) - The calendar collection resource was created in its entirety.
        403 (Forbidden) - This indicates at least one of two conditions: 1) the
                server does not allow the creation of calendar collections at the
                given location in its namespace, or 2) the parent collection of the
                Request-URI exists but cannot accept members.
        405 (Method Not Allowed) - MKCALENDAR can only be executed on a null resource.
        409 (Conflict) - A collection cannot be made at the Request-URI until one
                or more intermediate collections have been created.
        415 (Unsupported Media Type)- The server does not support the request type
                of the body.
        507 (Insufficient Storage) - The resource does not have sufficient space
                to record the state of the resource after the execution of this method.
      Specified by:
      makeCollection in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Parameters:
      req - HttpServletRequest
      node - node to create
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException - on fatal error
    • copyMove

      public void copyMove​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, org.bedework.webdav.servlet.shared.WebdavNsNode from, org.bedework.webdav.servlet.shared.WebdavNsNode to, boolean copy, boolean overwrite, int depth) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      copyMove in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getCalWSProperties

      public void getCalWSProperties​(CaldavBwNode node, java.util.List<org.oasis_open.docs.ws_calendar.ns.soap.GetPropertiesBasePropertyType> props) throws org.bedework.webdav.servlet.shared.WebdavException
      Parameters:
      node -
      props -
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getXRD

      public org.oasis_open.docs.ns.xri.xrd_1.XRDType getXRD​(CaldavBwNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Parameters:
      node -
      Returns:
      the XRD object for the node
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • specialUri

      public boolean specialUri​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp, java.lang.String resourceUri) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      specialUri in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getSynchReport

      public org.bedework.webdav.servlet.shared.WdSynchReport getSynchReport​(java.lang.String path, java.lang.String token, int limit, boolean recurse) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getSynchReport in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getSyncToken

      public java.lang.String getSyncToken​(java.lang.String path) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getSyncToken in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getGroups

      public java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> getGroups​(java.lang.String resourceUri, java.lang.String principalUrl) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getGroups in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getPrincipalCollectionSet

      public java.util.Collection<java.lang.String> getPrincipalCollectionSet​(java.lang.String resourceUri) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getPrincipalCollectionSet in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getPrincipals

      public java.util.Collection<org.bedework.webdav.servlet.shared.WebdavPrincipalNode> getPrincipals​(java.lang.String resourceUri, org.bedework.webdav.servlet.shared.PrincipalPropertySearch pps) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getPrincipals in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • makeUserHref

      public java.lang.String makeUserHref​(java.lang.String id) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      makeUserHref in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • updateAccess

      public void updateAccess​(org.bedework.webdav.servlet.shared.WebdavNsIntf.AclInfo info) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      updateAccess in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • updateAccess

      public void updateAccess​(org.bedework.webdav.servlet.shared.WebdavNsIntf.AclInfo info, CaldavBwNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Parameters:
      info -
      node -
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • emitAcl

      public void emitAcl​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      emitAcl in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getAclPrincipalInfo

      public java.util.Collection<java.lang.String> getAclPrincipalInfo​(org.bedework.webdav.servlet.shared.WebdavNsNode node) throws org.bedework.webdav.servlet.shared.WebdavException
      Specified by:
      getAclPrincipalInfo in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • makeProp

      public org.bedework.webdav.servlet.shared.WebdavProperty makeProp​(org.w3c.dom.Element propnode) throws org.bedework.webdav.servlet.shared.WebdavException
      Override this to create namespace specific property objects.
      Overrides:
      makeProp in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Parameters:
      propnode -
      Returns:
      WebdavProperty
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • knownProperty

      public boolean knownProperty​(org.bedework.webdav.servlet.shared.WebdavNsNode node, org.bedework.webdav.servlet.shared.WebdavProperty pr)
      Overrides:
      knownProperty in class org.bedework.webdav.servlet.shared.WebdavNsIntf
    • generatePropValue

      public boolean generatePropValue​(org.bedework.webdav.servlet.shared.WebdavNsNode node, org.bedework.webdav.servlet.shared.WebdavProperty pr, boolean allProp) throws org.bedework.webdav.servlet.shared.WebdavException
      Overrides:
      generatePropValue in class org.bedework.webdav.servlet.shared.WebdavNsIntf
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • query

      public java.util.Collection<org.bedework.webdav.servlet.shared.WebdavNsNode> query​(org.bedework.webdav.servlet.shared.WebdavNsNode wdnode, java.util.List<java.lang.String> retrieveList, RetrievalMode retrieveRecur, ietf.params.xml.ns.caldav.FilterType fltr) throws org.bedework.webdav.servlet.shared.WebdavException
      Use the given query to return a collection of nodes. An exception will be raised if the entire query fails for some reason (access, etc). An empty collection will be returned if no objects match.
      Parameters:
      wdnode - WebdavNsNode defining root of search
      retrieveList - If non-null limit required fields.
      retrieveRecur - How we retrieve recurring events
      fltr - Filter object defining search
      Returns:
      Collection of result nodes (empty for no result)
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException
    • getFreeBusy

      public void getFreeBusy​(CaldavCalNode cnode, FreeBusyQuery freeBusy, int depth) throws org.bedework.webdav.servlet.shared.WebdavException
      The node represents a calendar resource for which we must get free-busy information.
      Parameters:
      cnode - CaldavCalNode
      freeBusy -
      depth -
      Throws:
      org.bedework.webdav.servlet.shared.WebdavException