# BMA Server Framework: core::TLSSession Class Reference

core::TLSSession Class Reference

`#include <TLSSession.h>`

Inheritance diagram for core::TLSSession:
[legend]
Collaboration diagram for core::TLSSession:
[legend]

## Public Member Functions

| TLSSession (EPoll &ePoll, Service &service)
virtual void | output (std::stringstream &out)
virtual void | protocol (std::string data) override
Public Member Functions inherited from core::Session
| Session (EPoll &ePoll, Service &service)
void | send ()
void | sendToAll ()
void | sendToAll (SessionFilter filter)
Public Member Functions inherited from core::TCPSocket
| TCPSocket (EPoll &ePoll)
void | connect (IPAddress &address)
Public Member Functions inherited from core::Socket
| Socket (EPoll &ePoll)
void | shutdown ()
void | setDescriptor (int descriptor)
| Set the descriptor for the socket.
int | getDescriptor ()
| Get the descriptor for the socket.
void | eventReceived (struct epoll_event event)
| Parse epoll event and call specified callbacks. More...
void | write (std::string data)
void | write (char *buffer, int length)
void | output (std::stringstream &out)
virtual void | onRegistered ()
| Called when the socket has finished registering with the epoll processing. More...
virtual void | onUnregistered ()
| Called when the socket has finished unregistering for the epoll processing. More...
void | enable (bool mode)
| Enable the socket to read or write based upon buffer.

## Protected Member Functions

void | receiveData (char *buffer, int bufferLength) override
Protected Member Functions inherited from core::Session
void | onDataReceived (std::string data) override
| Called when data is received from the socket. More...
void | onConnected () override
| Called when socket is open and ready to communicate. More...
Protected Member Functions inherited from core::Socket
void | setBufferSize (int length)
virtual void | onTLSInit ()

## Additional Inherited Members

Public Attributes inherited from core::Session
std::stringstream | out
Service & | service
Public Attributes inherited from core::TCPSocket
IPAddress | ipAddress
Public Attributes inherited from core::Socket
class {
} | bufferSize
Public Attributes inherited from core::Object
std::string | name
std::string | tag
Protected Attributes inherited from core::Socket
EPoll & | ePoll
bool | shutDown = false

## Detailed Description

TLSSession

Provides a network TLS socket.

For accessing TLS network functions use this object. The connection oriented nature of TLS provides a single client persistent connection with data error correction and a durable synchronous data connection.

## Member Function Documentation

## output()

void core::TLSSession::output | ( | std::stringstream & | out | ) |

virtual

The output method is called by a socket session (Session) and will output the detail information for the client socket. When extending TLSSocket or Session you can override the method to add attributes to the list.

Reimplemented from core::Session.

## protocol()

void core::TLSSession::protocol | ( | std::string | data | ) |

overridevirtual

Override the protocol method to manage and control the session communications in your inherited session. If you do not override this method then the Session default will process the 'commands' added to the server object using the processRequest method on the session input.

Reimplemented from core::Session.

## receiveData()

void core::TLSSession::receiveData | ( | char * | buffer,
|  | int | bufferLength
| ) |  |

overrideprotectedvirtual

receiveData will read the data from the socket and place it in the socket buffer. TLS layer overrides this to be able to read from SSL.

Reimplemented from core::Socket.

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

- /home/bradarant/barant/ServerCore/TLSSession.h
- /home/bradarant/barant/ServerCore/TLSSession.cpp