CallDestination Class Reference

#include <CallDestination.h>

Inheritance diagram for CallDestination:

AuthPlugin Plugin

List of all members.


Detailed Description

The purpose of this auth plugin is to remove the call destination information from an INVITE request header and copy/append it to the Record-Route.

Public Member Functions

virtual ~CallDestination ()
 destructor
virtual AuthResult authorizeAndModify (const UtlString &id, const Url &requestUri, RouteState &routeState, const UtlString &method, AuthResult priorResult, SipMessage &request, bool bSpiralingRequest, UtlString &reason)
 The CallDestination plug-in always returns AuthResult::CONTINUE.
virtual void readConfig (OsConfigDb &configDb)
 Read (or re-read) the authorization rules.
virtual void announceAssociatedSipRouter (SipRouter *sipRouter)
 Used to announce the SIP Router instance that is logically associated with this Auth Plugin. Plugins that need to interact with their associated SIP Router can override this method and save the passed pointer for later use.

Private Member Functions

bool moveCallDestToRecordRoute (SipMessage &request)
 Moves sipXecs-CallDest from the request header to Record-Route.
 CallDestination (const UtlString &instanceName)
 Constructor - private so that only the factory can call it.

Private Attributes

SipRoutermpSipRouter
 stores pointer to owning SipRouter.

Friends

class CallDestinationTest
AuthPlugingetAuthPlugin (const UtlString &name)
 Factory used by PluginHooks to dynamically link the plugin instance.

Constructor & Destructor Documentation

~CallDestination (  )  [virtual]

destructor

CallDestination ( const UtlString instanceName  )  [private]

Constructor - private so that only the factory can call it.

constructor

Parameters:
instanceName  the configured name for this plugin instance


Member Function Documentation

AuthPlugin::AuthResult authorizeAndModify ( const UtlString id,
const Url requestUri,
RouteState routeState,
const UtlString method,
AuthResult  priorResult,
SipMessage request,
bool  bSpiralingRequest,
UtlString reason 
) [virtual]

The CallDestination plug-in always returns AuthResult::CONTINUE.

Parameters:
id  The authenticated identity of the request originator, if any (the null string if not). This is in the form of a SIP uri identity value as used in the credentials database (user) without the scheme or any parameters.
requestUri  parsed target Uri
routeState  the state for this request.
method  the request method
priorResult  results from earlier plugins.
request  see AuthPlugin regarding modifying
bSpiralingRequest  request spiraling indication
reason  rejection reason

Implements AuthPlugin.

void readConfig ( OsConfigDb configDb  )  [virtual]

Read (or re-read) the authorization rules.

Note:
The parent service may call the readConfig method at any time to indicate that the configuration may have changed. The plugin should reinitialize itself based on the configuration that exists when this is called. The fact that it is a subhash means that whatever prefix is used to identify the plugin (see PluginHooks) has been removed (see the examples in PluginHooks::readConfig).
Parameters:
configDb  a subhash of the individual configuration parameters for this instance of this plugin.

Implements AuthPlugin.

void announceAssociatedSipRouter ( SipRouter sipRouter  )  [virtual]

Used to announce the SIP Router instance that is logically associated with this Auth Plugin. Plugins that need to interact with their associated SIP Router can override this method and save the passed pointer for later use.

Reimplemented from AuthPlugin.

bool moveCallDestToRecordRoute ( SipMessage request  )  [private]

Moves sipXecs-CallDest from the request header to Record-Route.


Friends And Related Function Documentation

friend class CallDestinationTest [friend]

AuthPlugin* getAuthPlugin ( const UtlString name  )  [friend]

Factory used by PluginHooks to dynamically link the plugin instance.


Member Data Documentation

SipRouter* mpSipRouter [private]

stores pointer to owning SipRouter.


Online Library Docs

sipXecs home page

Version 4.2.1-018930 2010-07-31T01:50:17 build33 abuild