# H323TransactionServer Class Reference

`#include <h323trans.h>`

Inheritance diagram for H323TransactionServer:

[legend]
Collaboration diagram for H323TransactionServer:
[legend]

## Public Member Functions

virtual WORD | GetDefaultUdpPort ()=0
Construction
| H323TransactionServer (H323EndPoint &endpoint)
| ~H323TransactionServer ()
Access functions
H323EndPoint & | GetOwnerEndPoint () const
Protocol Handler Operations
PBoolean | AddListeners (const H323TransportAddressArray &ifaces)
PBoolean | AddListener (const H323TransportAddress &interfaceName)
PBoolean | AddListener (H323Transport *transport)
PBoolean | AddListener (H323Transactor *listener)
virtual H323Transactor * | CreateListener (H323Transport *transport)=0
PBoolean | RemoveListener (H323Transactor *listener)
PBoolean | SetUpCallSignalAddresses (H225_ArrayOf_TransportAddress &addresses)

## Protected Member Functions

| PLIST (ListenerList, H323Transactor)

## Protected Attributes

H323EndPoint & | ownerEndPoint
PThread * | monitorThread
PSyncPoint | monitorExit
PMutex | mutex
ListenerList | listeners

## Constructor & Destructor Documentation

H323TransactionServer::H323TransactionServer | ( | H323EndPoint & | endpoint | ) |

Create a new gatekeeper.

H323TransactionServer::~H323TransactionServer | ( |  | ) |

Destroy gatekeeper.

## Member Function Documentation

PBoolean H323TransactionServer::AddListener | ( | H323Transactor * | listener | ) |

Add a gatekeeper listener to this gatekeeper server. Note that the gatekeeper listener is then owned by the gatekeeper server and will be deleted automatically when the listener is removed. Note also the listener is deleted if this function returns false and the listener was not used.

PBoolean H323TransactionServer::AddListener | ( | H323Transport * | transport | ) |

Add a gatekeeper listener to this gatekeeper server given the transport. Note that the transport is then owned by the listener and will be deleted automatically when the listener is destroyed. Note also the transport is deleted if this function returns false and no listener was created.

PBoolean H323TransactionServer::AddListener | ( | const H323TransportAddress & | interfaceName | ) |

Add a gatekeeper listener to this gatekeeper server given the transport address for the local interface.

PBoolean H323TransactionServer::AddListeners | ( | const H323TransportAddressArray & | ifaces | ) |

Add listeners to the transaction server. If a listener already exists on the interface specified in the list then it is ignored. If a listener does not yet exist a new one is created and if a listener is running that is not in the list then it is stopped and removed.

If the array is empty then the string "*" is assumed which will listen on the standard UDP port on INADDR_ANY.

Returns true if at least one interface was successfully started.

Parameters:

  ifaces | Interfaces to listen on.

virtual H323Transactor* H323TransactionServer::CreateListener | ( | H323Transport * | transport | ) | `[pure virtual]`

Create a new H323GatkeeperListener. The user woiuld not usually use this function as it is used internally by the server when new listeners are added by H323TransportAddress.

However, a user may override this function to create objects that are user defined descendants of H323GatekeeperListener so the user can maintain extra information on a interface by interface basis.

Parameters:

  transport | Transport for listener

Implemented in H323GatekeeperServer.

virtual WORD H323TransactionServer::GetDefaultUdpPort | ( |  | ) | `[pure virtual]`

Implemented in H323GatekeeperServer.

H323EndPoint& H323TransactionServer::GetOwnerEndPoint | ( |  | ) | const`[inline]`

Get the owner endpoint.

H323TransactionServer::PLIST | ( | ListenerList | ,
|  | H323Transactor |  |
| ) |  |  | `[protected]`

PBoolean H323TransactionServer::RemoveListener | ( | H323Transactor * | listener | ) |

Remove a gatekeeper listener from this gatekeeper server. The gatekeeper listener is automatically deleted.

PBoolean H323TransactionServer::SetUpCallSignalAddresses | ( | H225_ArrayOf_TransportAddress & | addresses | ) |

## Field Documentation

ListenerList H323TransactionServer::listeners `[protected]`

Reimplemented in H323GatekeeperServer.

PSyncPoint H323TransactionServer::monitorExit `[protected]`

Reimplemented in H323GatekeeperServer.

PThread* H323TransactionServer::monitorThread `[protected]`

Reimplemented in H323GatekeeperServer.

PMutex H323TransactionServer::mutex `[protected]`

Reimplemented in H323GatekeeperServer.

H323EndPoint& H323TransactionServer::ownerEndPoint `[protected]`

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

- h323trans.h