/usr/include/sipxtapi/tao/TaoProviderAdaptor.h is in libsipxtapi-dev 3.3.0~test17-1.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 | //
// Copyright (C) 2004-2006 SIPfoundry Inc.
// Licensed by SIPfoundry under the LGPL license.
//
// Copyright (C) 2004-2006 Pingtel Corp. All rights reserved.
// Licensed to SIPfoundry under a Contributor Agreement.
//
// $$
///////////////////////////////////////////////////////////////////////////////
#ifndef _TaoProviderAdaptor_h_
#define _TaoProviderAdaptor_h_
#if _MSC_VER >= 1000
#pragma once
#endif // _MSC_VER >= 1000
// SYSTEM INCLUDES
// APPLICATION INCLUDES
#include "os/OsConfigDb.h"
#include "tao/TaoAdaptor.h"
#include "tao/TaoObjectMap.h"
#include "tao/TaoReference.h"
#include "tao/TaoServerTask.h"
#include "os/OsDefs.h"
#include "os/OsBSem.h"
#include "os/OsServerTask.h"
#include "net/HttpServer.h"
// DEFINES
// MACROS
// EXTERNAL FUNCTIONS
// EXTERNAL VARIABLES
// CONSTANTS
// STRUCTS
// TYPEDEFS
// FORWARD DECLARATIONS
class CpCallManager;
class MpMediaTask;
class OsNameDb;
class OsTimerTask;
class PsPhoneTask;
class UtlMemCheck;
class SipUserAgent;
class OsConfigDb;
class PtMGCP;
class HttpServer;
class OsConfigDb;
class TaoTransportTask;
class PtProvider;
class PtCall;
class TaoProviderAdaptor : public TaoAdaptor
{
friend class TaoServerTask;
/* //////////////////////////// PUBLIC //////////////////////////////////// */
public:
/* ============================ CREATORS ================================== */
TaoProviderAdaptor(const TaoProviderAdaptor& rTaoProviderAdaptor);
//:Copy constructor (not implemented for this class)
/* ============================ MANIPULATORS ============================== */
virtual UtlBoolean handleMessage(OsMsg& rMsg);
//:Handle an incoming message.
// If the message is not one that the object is prepared to process,
// the handleMessage() method in the derived class should return FALSE
// which will cause the OsServerTask::handleMessage() method to be
// invoked on the message.
// virtual void parseMessage(TaoMessage& rMsg);
//:Parse the incoming message.
TaoStatus providerGetProvider(TaoMessage& rMsg);
TaoStatus providerGetAddress(TaoMessage& rMsg);
TaoStatus providerGetAddresses(TaoMessage& rMsg);
TaoStatus providerNumAddresses(TaoMessage& rMsg);
TaoStatus providerGetTerminal(TaoMessage& rMsg);
TaoStatus providerGetTerminals(TaoMessage& rMsg);
TaoStatus providerNumTerminals(TaoMessage& rMsg);
TaoStatus providerCreateCall(TaoMessage& rMsg);
TaoStatus getCreateCall(TaoMessage& rMsg);
TaoStatus providerGetCalls(TaoMessage& rMsg);
TaoStatus providerNumCalls(TaoMessage& rMsg);
TaoStatus providerGetState(TaoMessage& rMsg);
TaoStatus providerGetProviderListeners(TaoMessage& rMsg);
TaoStatus providerNumProviderListeners(TaoMessage& rMsg);
TaoStatus providerGetConnection(TaoMessage& rMsg);
TaoStatus providerGetTermConnection(TaoMessage& rMsg);
TaoStatus providerAddProviderListener(TaoMessage& rMsg);
//:Adds a listener to a PtCall object when this TaoObjHandle for PtAddress object first
// becomes part of that PtCall.
//!param: (in) hAddress - a TaoObjHandle representing the PtAddress object
//!param: (in) rhCallListener - the listener to add to calls associated with this address
//!retcode: TAO_SUCCESS - success
//!retcode: TAO_EXISTS - <i>rhCallListener</i> is already registered
//!retcode: TAO_PROVIDER_UNAVAILABLE - the provider is not available
TaoStatus providerRemoveProviderListener(TaoMessage& rMsg);
//:Removes the indicated PtCallListener from this PtAddress TaoObjHandle.
// This method removes a PtCallListener which was added via the
// addCallListener() method. If successful, the listener will
// no longer be added to new calls which are presented to this address,
// however it does not affect PtCallListeners which have already been
// added to a call.
//!param: (in) rhCallListener - the listener to remove
//!retcode: TAO_SUCCESS - success
//!retcode: TAO_NOT_FOUND - <i>rhCallListener</i> not registered
//!retcode: TAO_PROVIDER_UNAVAILABLE - the provider is not available
TaoStatus providerShutdown(TaoMessage& rMsg);
protected:
void startAdaptor();
// initialize the SIP user agent
/* virtual void initSipUserAgent(OsConfigDb* config);
// initialize the MGCP stack
virtual void initMgcpStack(OsConfigDb* config);
// init the call processing subsystem
virtual void initCallManager(OsConfigDb* config);
// Set up the configuration database from the default file name
virtual void initConfigFile(OsConfigDb* config);
*/
private:
TaoTransportTask* mpSvrTransport;
TaoObjectMap* mpObjectDb;
TaoReference* mpObjectCnt;
TaoObjectMap* mpCallDb;
TaoReference* mpCallCnt;
TaoObjectMap* mpProviderListenerDb;
TaoReference* mpProviderListenerCnt;
PtProvider* mpProvider;
PtCall *mpCall;
int mState;
CpCallManager* mpCallMgrTask; // call manager task
MpMediaTask* mpMediaTask; // media processing task
PsPhoneTask* mpPhoneTask; // phone set task
OsTimerTask* mpTimerTask; // timer manager task
SipUserAgent* mpSipUserAgentTask; // sip stack
PtMGCP* mpMgcpStackTask; // MGCP stack
HttpServer* mpHttpServer; // Http Server
UtlString mTimeServer; // primary time server name
TaoProviderAdaptor( CpCallManager* pCallMgr,
TaoTransportTask*& rpSvrTransport,
TaoMessage& rMsg,
const UtlString& name = "TaoProviderAdaptor",
const int maxRequestQMsgs = 60);
//:Constructor
virtual ~TaoProviderAdaptor();
};
#endif // _TaoProviderAdaptor_h_
|