Referência da Classe tecgraf::ftc::v1_04_01::BaseServer

Representa a classe base para um servidor TCP. Mais...

#include <BaseServer.h>

Diagrama de Hierarquia para tecgraf::ftc::v1_04_01::BaseServer:

tecgraf::ftc::v1_04_01::FTCServer Lista de todos os Membros.

Métodos Públicos

 BaseServer (ServerConfig &config)
 Construtor.
virtual ~BaseServer ()
 Destrutor.
const ServerConfigconfig () const
 Retorna o objeto com as configurações utilizadas pelo servidor.
virtual void dispatch ()
 Inicia o servidor.
void wait_ready ()
 Aguarda a inicialização do servidor até que o mesmo comece a aceitar conexões.
void timed_wait_ready (uint32_t timeout_ms)
 Aguarda a inicialização do servidor até que o mesmo comece a aceitar conexões passando um tempo máximo para esperar.
virtual void stop ()
 Sinaliza para o servidor interromper.
bool stopped () const
 Informa se o servidor está parado.
void exception_handler (ServerExceptionHandler *exception_handler)
 Cadastra um manipulador de exceções.
ServerExceptionHandlerexception_handler () const
 Retorna o manipulador de exceções.
virtual BaseSession * create_session (Connection &conn)=0
 Cria uma sessão de uma conexão com um cliente.
void on_connection_stop (Connection_ptr conn)
 Notificação recebida quando uma conexão é terminada.

Métodos Protegidos

void start_timeout_timer ()
 Inicia assincronamente o timer de timeout.
virtual void check_timeout (const uint64_t &timeout_ms)
 Verifica se ocorreu timeout.

Descrição Detalhada

Representa a classe base para um servidor TCP.

Autor:
Tecgraf/PUC-Rio


Construtores & Destrutores

tecgraf::ftc::v1_04_01::BaseServer::BaseServer ( ServerConfig config  ) 

Construtor.

Parâmetros:
config Configurações utilizadas pelo servidor


Métodos

virtual BaseSession* tecgraf::ftc::v1_04_01::BaseServer::create_session ( Connection &  conn  )  [pure virtual]

Cria uma sessão de uma conexão com um cliente.

Parâmetros:
conn Objeto com a referência para a conexão.

Implementado por tecgraf::ftc::v1_04_01::FTCServer.

virtual void tecgraf::ftc::v1_04_01::BaseServer::dispatch (  )  [virtual]

Inicia o servidor.

Este método é bloqueante.

Para capturar a porta atribuída na inicialização é necessário perguntar para o método config().port().

ServerExceptionHandler* tecgraf::ftc::v1_04_01::BaseServer::exception_handler (  )  const

Retorna o manipulador de exceções.

Retorna:
O manipulador de exceções cadastrado

void tecgraf::ftc::v1_04_01::BaseServer::exception_handler ( ServerExceptionHandler exception_handler  ) 

Cadastra um manipulador de exceções.

Parâmetros:
exception_handler O novo manipulador de exceções.

void tecgraf::ftc::v1_04_01::BaseServer::on_connection_stop ( Connection_ptr  conn  ) 

Notificação recebida quando uma conexão é terminada.

Parâmetros:
conn A conexão.

virtual void tecgraf::ftc::v1_04_01::BaseServer::stop (  )  [virtual]

Sinaliza para o servidor interromper.

Este método irá sinalizar o servidor para ser interrompido.

bool tecgraf::ftc::v1_04_01::BaseServer::stopped (  )  const

Informa se o servidor está parado.

Retorna:
true se o servidor está parado.

void tecgraf::ftc::v1_04_01::BaseServer::timed_wait_ready ( uint32_t  timeout_ms  ) 

Aguarda a inicialização do servidor até que o mesmo comece a aceitar conexões passando um tempo máximo para esperar.

Este método é útil, por exemplo, se o servidor é inicializado num thread à parte, e por vezes é necessário saber quando o mesmo está pronto para receber conexões.

Parâmetros:
timeout_ms Tempo máximo em milisegundos para aguardar a inicialização do servidor até que o mesmo comece a aceitar conexões.

void tecgraf::ftc::v1_04_01::BaseServer::wait_ready (  ) 

Aguarda a inicialização do servidor até que o mesmo comece a aceitar conexões.

Este método é útil, por exemplo, se o servidor é inicializado num thread à parte, e por vezes é necessário saber quando o mesmo está pronto para receber conexões.


A documentação para esta classe foi gerada a partir do seguinte arquivo:
Gerado em Mon Feb 3 03:15:08 2014 para FTC[C++] por  doxygen 1.4.7