reSIProcate
SIP stack, Dialog Usage Manager and related libraries
Loading...
Searching...
No Matches
reTurn::RequestHandler Class Reference

The common handler for all incoming requests. More...

#include <RequestHandler.hxx>

Public Types

enum  ProcessResult {
  NoResponseToSend , RespondFromReceiving , RespondFromAlternatePort , RespondFromAlternateIp ,
  RespondFromAlternateIpPort
}
 

Public Member Functions

 RequestHandler (TurnManager &turnManager, const asio::ip::address *prim3489Address=0, unsigned short *prim3489Port=0, const asio::ip::address *alt3489Address=0, unsigned short *alt3489Port=0)
 
 RequestHandler (const RequestHandler &)=delete
 
 RequestHandler (RequestHandler &&)=delete
 
RequestHandler & operator= (const RequestHandler &)=delete
 
RequestHandler & operator= (RequestHandler &&)=delete
 
ProcessResult processStunMessage (AsyncSocketBase *turnSocket, TurnAllocationManager &turnAllocationManager, StunMessage &request, StunMessage &response, bool isRFC3489BackwardsCompatServer=false)
 Process a received StunMessage, and produce a reply Returns true if the response message is to be sent.
 
void processTurnData (TurnAllocationManager &turnAllocationManager, unsigned short channelNumber, const StunTuple &localTuple, const StunTuple &remoteTuple, const std::shared_ptr< DataBuffer > &data)
 
const ReTurnConfig & getConfig ()
 
TurnManager & getTurnManager ()
 

Detailed Description

The common handler for all incoming requests.

Definition at line 16 of file RequestHandler.hxx.

Member Enumeration Documentation

◆ ProcessResult

Enumerator
NoResponseToSend 
RespondFromReceiving 
RespondFromAlternatePort 
RespondFromAlternateIp 
RespondFromAlternateIpPort 

Definition at line 29 of file RequestHandler.hxx.

Constructor & Destructor Documentation

◆ RequestHandler() [1/3]

reTurn::RequestHandler::RequestHandler ( TurnManager &  turnManager,
const asio::ip::address *  prim3489Address = 0,
unsigned short *  prim3489Port = 0,
const asio::ip::address *  alt3489Address = 0,
unsigned short *  alt3489Port = 0 
)
explicit

Definition at line 27 of file RequestHandler.cxx.

◆ RequestHandler() [2/3]

reTurn::RequestHandler::RequestHandler ( const RequestHandler &  )
delete

◆ RequestHandler() [3/3]

reTurn::RequestHandler::RequestHandler ( RequestHandler &&  )
delete

Member Function Documentation

◆ getConfig()

const ReTurnConfig & reTurn::RequestHandler::getConfig ( )
inline

Definition at line 43 of file RequestHandler.hxx.

◆ getTurnManager()

TurnManager & reTurn::RequestHandler::getTurnManager ( )
inline

Definition at line 44 of file RequestHandler.hxx.

◆ operator=() [1/2]

RequestHandler & reTurn::RequestHandler::operator= ( const RequestHandler &  )
delete

◆ operator=() [2/2]

RequestHandler & reTurn::RequestHandler::operator= ( RequestHandler &&  )
delete

◆ processStunMessage()

RequestHandler::ProcessResult reTurn::RequestHandler::processStunMessage ( AsyncSocketBase *  turnSocket,
TurnAllocationManager &  turnAllocationManager,
StunMessage &  request,
StunMessage &  response,
bool  isRFC3489BackwardsCompatServer = false 
)

Process a received StunMessage, and produce a reply Returns true if the response message is to be sent.

Definition at line 48 of file RequestHandler.cxx.

◆ processTurnData()

void reTurn::RequestHandler::processTurnData ( TurnAllocationManager &  turnAllocationManager,
unsigned short  channelNumber,
const StunTuple &  localTuple,
const StunTuple &  remoteTuple,
const std::shared_ptr< DataBuffer > &  data 
)

Definition at line 911 of file RequestHandler.cxx.


The documentation for this class was generated from the following files: