Class SoapHandler

  • All Implemented Interfaces:
    org.bedework.util.logging.Logged, org.bedework.webdav.servlet.common.SecureXml
    Direct Known Subclasses:
    CalwsHandler

    public abstract class SoapHandler
    extends org.bedework.webdav.servlet.common.MethodBase
    Class extended by classes which handle special SOAP requests, e.g. the exchange synch service etc.
    Author:
    Mike Douglass
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      static class  SoapHandler.UnmarshalResult
      Unpack the headers and body
      • 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 javax.xml.bind.JAXBContext jc  
      protected static Object monitor  
      • Fields inherited from class org.bedework.webdav.servlet.common.MethodBase

        dumpContent, hasBriefHeader, nsIntf, xml
    • Method Summary

      All Methods Instance Methods Abstract Methods Concrete Methods 
      Modifier and Type Method Description
      protected String checkUTC​(ietf.params.xml.ns.icalendar_2.BasePropertyType bp)  
      void doMethod​(javax.servlet.http.HttpServletRequest req, javax.servlet.http.HttpServletResponse resp)  
      protected String findTzid​(ietf.params.xml.ns.icalendar_2.BasePropertyType bp)  
      protected String getAccount()  
      protected CaldavBWIntf getIntf()  
      protected abstract String getJaxbContextPath()  
      protected SysIntf getSysi()  
      void init()  
      protected void initResponse​(javax.servlet.http.HttpServletResponse resp)  
      protected Document makeDoc​(QName name, Object o)  
      protected javax.xml.bind.JAXBElement makeJAXBElement​(QName name, Class cl, Object o)  
      protected void marshal​(Object o, OutputStream out)  
      protected void removeNode​(Node nd)  
      protected SoapHandler.UnmarshalResult unmarshal​(javax.servlet.http.HttpServletRequest req)  
      • 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 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 Detail

      • jc

        protected javax.xml.bind.JAXBContext jc
      • monitor

        protected static final Object monitor
    • Constructor Detail

      • SoapHandler

        public SoapHandler​(CaldavBWIntf intf)
                    throws org.bedework.webdav.servlet.shared.WebdavException
        Parameters:
        intf -
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException - on soap error
    • Method Detail

      • getJaxbContextPath

        protected abstract String getJaxbContextPath()
        Returns:
        String required to for JAXBContext.newInstance
      • init

        public void init()
        Specified by:
        init in class org.bedework.webdav.servlet.common.MethodBase
      • initResponse

        protected void initResponse​(javax.servlet.http.HttpServletResponse resp)
      • doMethod

        public void doMethod​(javax.servlet.http.HttpServletRequest req,
                             javax.servlet.http.HttpServletResponse resp)
                      throws org.bedework.webdav.servlet.shared.WebdavException
        Specified by:
        doMethod in class org.bedework.webdav.servlet.common.MethodBase
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException
      • unmarshal

        protected SoapHandler.UnmarshalResult unmarshal​(javax.servlet.http.HttpServletRequest req)
                                                 throws org.bedework.webdav.servlet.shared.WebdavException
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException
      • getAccount

        protected String getAccount()
        Returns:
        current account
      • getSysi

        protected SysIntf getSysi()
        Returns:
        SysIntf
      • makeDoc

        protected Document makeDoc​(QName name,
                                   Object o)
                            throws org.bedework.webdav.servlet.shared.WebdavException
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException
      • marshal

        protected void marshal​(Object o,
                               OutputStream out)
                        throws org.bedework.webdav.servlet.shared.WebdavException
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException
      • makeJAXBElement

        protected javax.xml.bind.JAXBElement makeJAXBElement​(QName name,
                                                             Class cl,
                                                             Object o)
      • removeNode

        protected void removeNode​(Node nd)
                           throws org.bedework.webdav.servlet.shared.WebdavException
        Throws:
        org.bedework.webdav.servlet.shared.WebdavException
      • findTzid

        protected String findTzid​(ietf.params.xml.ns.icalendar_2.BasePropertyType bp)
      • checkUTC

        protected String checkUTC​(ietf.params.xml.ns.icalendar_2.BasePropertyType bp)