Scale Stack 0.3 Developer Documentation

scalestack::network::local::datagram::socket_service Class Reference

#include <socket_service.h>

Inheritance diagram for scalestack::network::local::datagram::socket_service:
scalestack::kernel::service

Public Member Functions

 socket_service (kernel::module &module, std::auto_ptr< datagram_service > datagram_service)
virtual ~socket_service ()
void add_socket (const struct addrinfo *local, const struct addrinfo *peer)
void add_local_sockets (void)
void add_local_sockets (const std::string &addresses)
void add_peer_sockets (void)
void add_peer_sockets (const std::string &addresses)

Static Public Member Functions

static void local_options (kernel::module &module, const std::string &addresses)
static void peer_options (kernel::module &module, const std::string &addresses)

Private Member Functions

 socket_service (const socket_service &)
socket_serviceoperator= (const socket_service &)

Private Attributes

std::auto_ptr< datagram_service_datagram_service
event::handler_service _handler_service

Detailed Description

This class manages a set of local datagram sockets.

Definition at line 49 of file socket_service.h.


Constructor & Destructor Documentation

scalestack::network::local::datagram::socket_service::socket_service ( kernel::module module,
std::auto_ptr< datagram_service datagram_service 
)

Constructor for the socket service.

Parameters:
[in] module Module that the service is associated with.
[in] datagram_service Datagram service to associate with this service. This providers the generic datagram objects to pair with datagram providers.

Definition at line 72 of file socket_service.cc.

scalestack::network::local::datagram::socket_service::~socket_service (  )  [virtual]

Definition at line 80 of file socket_service.cc.

scalestack::network::local::datagram::socket_service::socket_service ( const socket_service  )  [private]

Don't allow copying of objects.


Member Function Documentation

void scalestack::network::local::datagram::socket_service::local_options ( kernel::module module,
const std::string &  addresses 
) [static]

Add common options for local datagram sockets.

Parameters:
[in] module Module that the service is associated with.
[in] addresses Default address list to use.

Definition at line 58 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::peer_options ( kernel::module module,
const std::string &  addresses 
) [static]

Add common options for peer datagram sockets.

Parameters:
[in] module Module that the service is associated with.
[in] addresses Default address list to use.

Definition at line 65 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::add_socket ( const struct addrinfo *  local,
const struct addrinfo *  peer 
)

Create a new local datagram socket and bind to the given address.

Parameters:
[in] local Local address to bind to.
[in] peer Default peer address to send to.

Definition at line 85 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::add_local_sockets ( void   ) 

Add sockets specified by the 'addresses' variable in the module options and bind to those addresses.

Definition at line 117 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::add_local_sockets ( const std::string &  addresses  ) 

Add sockets specified by the given 'addresses' parameter.

Definition at line 122 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::add_peer_sockets ( void   ) 

Add sockets specified by the 'addresses' variable in the module options and use those addresses as peers.

Definition at line 142 of file socket_service.cc.

void scalestack::network::local::datagram::socket_service::add_peer_sockets ( const std::string &  addresses  ) 

Add sockets specified by the given 'addresses' parameter.

Definition at line 147 of file socket_service.cc.

socket_service& scalestack::network::local::datagram::socket_service::operator= ( const socket_service  )  [private]

Don't allow assignment of objects.


Field Documentation

Definition at line 128 of file socket_service.h.

Definition at line 129 of file socket_service.h.


The documentation for this class was generated from the following files:
Generated on Thu Feb 17 13:10:23 2011 by  doxygen 1.6.3