com.ibm.xdms.sip.servlet
Class CoreXdmSipServlet
java.lang.Object
javax.servlet.GenericServlet
javax.servlet.sip.SipServlet
com.ibm.xdms.sip.servlet.CoreXdmSipServlet
- All Implemented Interfaces:
- SipConstants, java.io.Serializable, javax.servlet.Servlet, javax.servlet.ServletConfig
- Direct Known Subclasses:
- RlsXdmSipServlet
public class CoreXdmSipServlet
- extends javax.servlet.sip.SipServlet
- implements SipConstants
- See Also:
- Serialized Form
Fields inherited from class javax.servlet.sip.SipServlet |
SIP_FACTORY, SUPPORTED, TIMER_SERVICE |
Fields inherited from interface com.ibm.xdms.sip.SipConstants |
APP_SESSION_ATTR_ACCEPT_HEADER, APP_SESSION_ATTR_DIFF_PROCESSING, APP_SESSION_ATTR_DOC_LIST, APP_SESSION_ATTR_DOC_SELECTOR, APP_SESSION_ATTR_EVENT_HEADER, APP_SESSION_ATTR_EVENT_TYPE, APP_SESSION_ATTR_EXPIRES, APP_SESSION_ATTR_LAST_ETAG_NOTIFIED, APP_SESSION_ATTR_OLD_DOC_LIST, APP_SESSION_ATTR_P_ASSERTED_IDENTITY, APP_SESSION_ATTR_P_CHARGING_FUNCTION_ADDRESSES, APP_SESSION_ATTR_P_CHARGING_VECTOR, APP_SESSION_ATTR_PRINCIPAL, APP_SESSION_ATTR_REQUEST_URI, COMPONENT, CONTENT_TYPE_MSG_EXTERNAL_BODY, CONTENT_TYPE_RESOURCE_LISTS, CONTENT_TYPE_XCAP_DIFF, DEBUG, DOC_IN_PENDING_STATE, EVENT_AGGREGATE, EVENT_NO_PATCHING, EVENT_UA_PROFILE, EVENT_XCAP_DIFF, EVENT_XCAP_PATCHING, GLOBAL_INDEX_DOC, HEADER_ACCEPT, HEADER_ACCEPT_CONTACT, HEADER_ENTRY_FAIL, HEADER_EVENT, HEADER_P_ASSERTED_IDENTITY, HEADER_P_CHARGING_FUNCTION_ADDRESSES, HEADER_P_CHARGING_VECTOR, HEADER_SUBSCRIPTION_STATE, MESSAGE_SC_ACCEPTED, MESSAGE_SC_SERVICE_UNAVAILABLE, NOTIFY_COUNT_METRIC_ID, REQ_ATTR_DOC_LIST, REQ_ATTR_DOCUMENT_ETAG, REQ_ATTR_DOCUMENT_SEL, REQ_ATTR_EVENT_HEADER, REQ_ATTR_EXPIRES_HEADER, REQ_ATTR_NOTIFY_REQUEST, REQ_ATTR_RESPONSE_SEND_TIME, REQ_ATTR_TO_URI_HEADER, SESSION_TYPE_SUBSCRIBE, SESSION_TYPE_SUBSCRIBE_XCAP_DIFF, SIP_METHOD_NOTIFY, SIP_SESSION_ATTR_RECEIVED_INITIAL_OK, SIP_SESSION_ATTR_RESUBSCRIBE, SIP_SESSION_ATTR_SESSION_TYPE, SIP_SESSION_ATTR_UNSUBSCRIBE, SUBSCRIBE_COUNT_METRIC_ID, SUBSCRIBE_LATENCY_METRIC_ID, SUBSCRIPTION_STATE_ACTIVE, SUBSCRIPTION_STATE_ACTIVE_WITH_EXPIRES, SUBSCRIPTION_STATE_PENDING, SUBSCRIPTION_STATE_TERMINATED_DEACTIVATED, SUBSCRIPTION_STATE_TERMINATED_GIVEUP, SUBSCRIPTION_STATE_TERMINATED_NORESOURCE, SUBSCRIPTION_STATE_TERMINATED_PROBATION, SUBSCRIPTION_STATE_TERMINATED_REJECTED, SUBSCRIPTION_STATE_TERMINATED_TIMEOUT, SUCCESS_RATE_METRIC_ID |
Method Summary |
void |
destroy()
|
protected void |
doErrorResponse(javax.servlet.sip.SipServletResponse resp)
|
protected void |
doSubscribe(javax.servlet.sip.SipServletRequest request)
|
protected void |
doSuccessResponse(javax.servlet.sip.SipServletResponse resp)
|
protected EventHeader |
getEventHeader(javax.servlet.sip.SipServletRequest req,
javax.servlet.sip.SipServletResponse resp)
Returns the EventHeader for the SipServletRequest |
protected java.lang.String |
getRequestURI(javax.servlet.sip.SipServletRequest req)
Get the Request URI to use. |
void |
init()
|
void |
init(javax.servlet.ServletConfig arg0)
|
protected boolean |
isGlobalIndex(java.lang.String documentUri,
java.lang.String auid)
Determine if a document uri is pointing to a global index |
Methods inherited from class javax.servlet.sip.SipServlet |
doAck, doBye, doCancel, doInfo, doInvite, doMessage, doNotify, doOptions, doPrack, doProvisionalResponse, doPublish, doRedirectResponse, doRegister, doRequest, doResponse, getServletConfig, getServletContext, log, log, service |
Methods inherited from class javax.servlet.GenericServlet |
getInitParameter, getInitParameterNames, getServletInfo, getServletName |
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
COPYRIGHT
public static final java.lang.String COPYRIGHT
PROPERTY_SIP_RESPOND_PENDING
public static final java.lang.String PROPERTY_SIP_RESPOND_PENDING
- See Also:
- Constant Field Values
PROPERTY_SEND_SIP_ERROR
public static final java.lang.String PROPERTY_SEND_SIP_ERROR
- See Also:
- Constant Field Values
PROPERTY_NOTIFY_WAIT_TIME
public static final java.lang.String PROPERTY_NOTIFY_WAIT_TIME
- See Also:
- Constant Field Values
filterHolder
protected transient SipFilterHolder filterHolder
- Filter Holder
xcapCaps
protected transient XcapCaps xcapCaps
xmlUtilsPool
protected transient XMLUtilsPool xmlUtilsPool
xcapRoot
protected transient java.lang.String xcapRoot
CoreXdmSipServlet
public CoreXdmSipServlet()
getRequestURI
protected java.lang.String getRequestURI(javax.servlet.sip.SipServletRequest req)
- Get the Request URI to use. To handle situations where the CSCF will use
the "Contact" header to indicate a different Request URI contact address,
we need to store the original Request URI in the session to return back
fo consistent handling of Subscribe requests.
- Parameters:
req
- The current SipServletRequest
- Returns:
- Returns the Request URI to use for this request
init
public void init()
throws javax.servlet.ServletException
- Overrides:
init
in class javax.servlet.GenericServlet
- Throws:
javax.servlet.ServletException
getEventHeader
protected EventHeader getEventHeader(javax.servlet.sip.SipServletRequest req,
javax.servlet.sip.SipServletResponse resp)
throws XdmsException
- Returns the EventHeader for the SipServletRequest
- Parameters:
req
- The SipServletRequestresp
- The SipServletResponse
- Returns:
- Returns the EventHeader for the SipServletRequest
- Throws:
XdmsException
isGlobalIndex
protected boolean isGlobalIndex(java.lang.String documentUri,
java.lang.String auid)
- Determine if a document uri is pointing to a global index
- Parameters:
documentUri
- auid
-
- Returns:
- true if documentUri is {AUID/}global/index{/...} and there is a
globalIndexNodeSelector for this AUID
doSubscribe
protected void doSubscribe(javax.servlet.sip.SipServletRequest request)
throws javax.servlet.ServletException,
java.io.IOException
- Overrides:
doSubscribe
in class javax.servlet.sip.SipServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
doSuccessResponse
protected void doSuccessResponse(javax.servlet.sip.SipServletResponse resp)
throws javax.servlet.ServletException,
java.io.IOException
- Overrides:
doSuccessResponse
in class javax.servlet.sip.SipServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
doErrorResponse
protected void doErrorResponse(javax.servlet.sip.SipServletResponse resp)
throws javax.servlet.ServletException,
java.io.IOException
- Overrides:
doErrorResponse
in class javax.servlet.sip.SipServlet
- Throws:
javax.servlet.ServletException
java.io.IOException
destroy
public void destroy()
- Specified by:
destroy
in interface javax.servlet.Servlet
- Overrides:
destroy
in class javax.servlet.GenericServlet
init
public void init(javax.servlet.ServletConfig arg0)
throws javax.servlet.ServletException
- Specified by:
init
in interface javax.servlet.Servlet
- Overrides:
init
in class javax.servlet.sip.SipServlet
- Throws:
javax.servlet.ServletException