ANNA Suite  2020b
Multipurpose development suite for Telco applications
Public Member Functions | Protected Member Functions | List of all members
anna::http::Handler Class Referenceabstract

#include <Handler.hpp>

Inheritance diagram for anna::http::Handler:
Inheritance graph
[legend]
Collaboration diagram for anna::http::Handler:
Collaboration graph
[legend]

Public Member Functions

virtual ~Handler ()
 
void apply (comm::ClientSocket &clientSocket, const comm::Message &message) noexcept(false)
 
- Public Member Functions inherited from anna::comm::Receiver
const std::string & getName () const
 
virtual void eventBreakConnection (const comm::ClientSocket &clientSocket)
 
virtual void eventBreakLocalConnection (const comm::ClientSocket &clientSocket)
 
virtual void eventCreateConnection (const Server *server)
 
virtual std::string asString () const
 
virtual xml::NodeasXML (xml::Node *parent) const noexcept(false)
 

Protected Member Functions

 Handler (const char *name)
 
ResponseallocateResponse ()
 
virtual void evRequest (comm::ClientSocket &clientSocket, const Request &request) noexcept(false)=0
 
virtual void evResponse (comm::ClientSocket &clientSocket, const Response &response) noexcept(false)=0
 
- Protected Member Functions inherited from anna::comm::Receiver
 Receiver (const char *name)
 
virtual void initialize () noexcept(false)
 

Detailed Description

Manejador de Respuestas y/o peticiones sobre protocolo HTTP.

Constructor & Destructor Documentation

◆ ~Handler()

virtual anna::http::Handler::~Handler ( )
virtual

Destructor.

◆ Handler()

anna::http::Handler::Handler ( const char *  name)
inlineprotected

Constructor.

Parameters
nameNombre logico de este manejador.
56 : comm::Receiver(name), a_response(NULL) {;}

Member Function Documentation

◆ allocateResponse()

Response* anna::http::Handler::allocateResponse ( )
protected

Devuelve una instancia de http::Response que puede ser usada para responser a una peticion.

Returns
una instancia de http::Response que puede ser usada para responser a una peticion.

◆ apply()

void anna::http::Handler::apply ( comm::ClientSocket clientSocket,
const comm::Message message 
)
virtualnoexcept

Trata la informacion contenida en el mensaje recibido. Si el mensaje recibido es un mensaje HTTP valido se terminara llamando a uno de los metodos manejadores evRequest o evResponse, dependiendo del tipo de mensaje.

Parameters
clientSocketSocket por el que se recibe la peticion, y por el que podriamos enviar la respuesta en caso de ser necesario.
messageMensaje HTTP recibido.

Implements anna::comm::Receiver.

◆ evRequest()

virtual void anna::http::Handler::evRequest ( comm::ClientSocket clientSocket,
const Request request 
)
protectedpure virtualnoexcept

Metodo virtual que debemos sobreescribir para tratar las peticiones HTTP.

Parameters
clientSocketSocket por el que se recibe la peticion, y por el que podriamos enviar la respuesta en caso de ser necesario.
requestPeticion HTTP a tratar.

◆ evResponse()

virtual void anna::http::Handler::evResponse ( comm::ClientSocket clientSocket,
const Response response 
)
protectedpure virtualnoexcept

Metodo virtual que debemos sobreescribir para tratar las respuestas HTTP.

Parameters
clientSocketSocket por el que se recibe la respuesta.
responserespuesta HTTP a tratar.

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