\hypertarget{classcore_1_1_t_l_s_session}{}\doxysection{core\+::T\+L\+S\+Session Class Reference}
\label{classcore_1_1_t_l_s_session}\index{core::TLSSession@{core::TLSSession}}


{\ttfamily \#include $<$T\+L\+S\+Session.\+h$>$}



Inheritance diagram for core\+::T\+L\+S\+Session\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=180pt]{classcore_1_1_t_l_s_session__inherit__graph}
\end{center}
\end{figure}


Collaboration diagram for core\+::T\+L\+S\+Session\+:\nopagebreak
\begin{figure}[H]
\begin{center}
\leavevmode
\includegraphics[width=350pt]{classcore_1_1_t_l_s_session__coll__graph}
\end{center}
\end{figure}
\doxysubsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{classcore_1_1_t_l_s_session_ac2bd48a18a46a3b6827cd689775e3552}{T\+L\+S\+Session}} (\mbox{\hyperlink{classcore_1_1_e_poll}{E\+Poll}} \&\mbox{\hyperlink{classcore_1_1_socket_a3b0b139ac7da581f0d969f6ae9a0c97c}{e\+Poll}}, \mbox{\hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server}} \&\mbox{\hyperlink{classcore_1_1_t_c_p_session_a265d9493fa544e601b5ad5fb1663340c}{server}})
\item 
\mbox{\hyperlink{classcore_1_1_t_l_s_session_adabcef62010597b955a30c4a3d7455ef}{$\sim$\+T\+L\+S\+Session}} ()
\item 
virtual void \mbox{\hyperlink{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}{output}} (std\+::stringstream \&\mbox{\hyperlink{classcore_1_1_t_c_p_session_abb302bbb3d7e7bc75490c736364f0d4d}{out}})
\item 
virtual void \mbox{\hyperlink{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}{protocol}} (std\+::string data) override
\end{DoxyCompactItemize}
\doxysubsection*{Protected Member Functions}
\begin{DoxyCompactItemize}
\item 
void \mbox{\hyperlink{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}{receive\+Data}} (char $\ast$buffer, int buffer\+Length) override
\item 
void \mbox{\hyperlink{classcore_1_1_t_l_s_session_a76cec7cf4851eb27abe77a2339344c6d}{on\+Register}} ()
\begin{DoxyCompactList}\small\item\em Called before the socket has registered with the epoll processing. \end{DoxyCompactList}\item 
void \mbox{\hyperlink{classcore_1_1_t_l_s_session_a8e26fdc9e8a6c573b5a504a1f1b137a9}{on\+Registered}} ()
\begin{DoxyCompactList}\small\item\em Called after the socket has been registered with epoll processing. \end{DoxyCompactList}\end{DoxyCompactItemize}
\doxysubsection*{Additional Inherited Members}


\doxysubsection{Detailed Description}
\mbox{\hyperlink{classcore_1_1_t_l_s_session}{T\+L\+S\+Session}}

Provides a network T\+LS socket.

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

\doxysubsection{Constructor \& Destructor Documentation}
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_ac2bd48a18a46a3b6827cd689775e3552}\label{classcore_1_1_t_l_s_session_ac2bd48a18a46a3b6827cd689775e3552}} 
\index{core::TLSSession@{core::TLSSession}!TLSSession@{TLSSession}}
\index{TLSSession@{TLSSession}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{TLSSession()}{TLSSession()}}
{\footnotesize\ttfamily core\+::\+T\+L\+S\+Session\+::\+T\+L\+S\+Session (\begin{DoxyParamCaption}\item[{\mbox{\hyperlink{classcore_1_1_e_poll}{E\+Poll}} \&}]{e\+Poll,  }\item[{\mbox{\hyperlink{classcore_1_1_t_c_p_server}{T\+C\+P\+Server}} \&}]{server }\end{DoxyParamCaption})}

\mbox{\Hypertarget{classcore_1_1_t_l_s_session_adabcef62010597b955a30c4a3d7455ef}\label{classcore_1_1_t_l_s_session_adabcef62010597b955a30c4a3d7455ef}} 
\index{core::TLSSession@{core::TLSSession}!````~TLSSession@{$\sim$TLSSession}}
\index{````~TLSSession@{$\sim$TLSSession}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{$\sim$TLSSession()}{~TLSSession()}}
{\footnotesize\ttfamily core\+::\+T\+L\+S\+Session\+::$\sim$\+T\+L\+S\+Session (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})}



\doxysubsection{Member Function Documentation}
\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a76cec7cf4851eb27abe77a2339344c6d}\label{classcore_1_1_t_l_s_session_a76cec7cf4851eb27abe77a2339344c6d}} 
\index{core::TLSSession@{core::TLSSession}!onRegister@{onRegister}}
\index{onRegister@{onRegister}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{onRegister()}{onRegister()}}
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::on\+Register (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}



Called before the socket has registered with the epoll processing. 

The on\+Register method is called before the socket is registered with e\+Poll so objects extending the \mbox{\hyperlink{classcore_1_1_socket}{Socket}} definition can initialize the socket before receiving events. Evoked when the descriptor is set using set\+Descriptor for the socket. 

Reimplemented from \mbox{\hyperlink{classcore_1_1_socket_a81e5ee3e17834166d97c6e8b7dfe0da0}{core\+::\+Socket}}.

\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a8e26fdc9e8a6c573b5a504a1f1b137a9}\label{classcore_1_1_t_l_s_session_a8e26fdc9e8a6c573b5a504a1f1b137a9}} 
\index{core::TLSSession@{core::TLSSession}!onRegistered@{onRegistered}}
\index{onRegistered@{onRegistered}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{onRegistered()}{onRegistered()}}
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::on\+Registered (\begin{DoxyParamCaption}{ }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [protected]}, {\ttfamily [virtual]}}



Called after the socket has been registered with epoll processing. 



Reimplemented from \mbox{\hyperlink{classcore_1_1_t_c_p_session_aed4ed499b978bcea57a8efefe929fc98}{core\+::\+T\+C\+P\+Session}}.

\mbox{\Hypertarget{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}\label{classcore_1_1_t_l_s_session_ae55de8a035d1ddc560cf619b2030af43}} 
\index{core::TLSSession@{core::TLSSession}!output@{output}}
\index{output@{output}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{output()}{output()}}
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::output (\begin{DoxyParamCaption}\item[{std\+::stringstream \&}]{out }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [virtual]}}

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

Reimplemented from \mbox{\hyperlink{classcore_1_1_t_c_p_session_a50037cbfc515650e04054e5481785981}{core\+::\+T\+C\+P\+Session}}.

\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}\label{classcore_1_1_t_l_s_session_a547c436ab69f75307f065eca8cfcd109}} 
\index{core::TLSSession@{core::TLSSession}!protocol@{protocol}}
\index{protocol@{protocol}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{protocol()}{protocol()}}
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::protocol (\begin{DoxyParamCaption}\item[{std\+::string}]{data }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [virtual]}}

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 \textquotesingle{}commands\textquotesingle{} added to the server object using the process\+Request method on the session input.

When data is received within the session two modes are available to pass the data through the protocol method\+: L\+I\+NE or B\+L\+O\+CK. 

Reimplemented from \mbox{\hyperlink{classcore_1_1_t_c_p_session_ae90dc64e2d3c4b3239117923145edb3f}{core\+::\+T\+C\+P\+Session}}.

\mbox{\Hypertarget{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}\label{classcore_1_1_t_l_s_session_a1822cb21de545dc1a183ec0bac6cc4f0}} 
\index{core::TLSSession@{core::TLSSession}!receiveData@{receiveData}}
\index{receiveData@{receiveData}!core::TLSSession@{core::TLSSession}}
\doxysubsubsection{\texorpdfstring{receiveData()}{receiveData()}}
{\footnotesize\ttfamily void core\+::\+T\+L\+S\+Session\+::receive\+Data (\begin{DoxyParamCaption}\item[{char $\ast$}]{buffer,  }\item[{int}]{buffer\+Length }\end{DoxyParamCaption})\hspace{0.3cm}{\ttfamily [override]}, {\ttfamily [protected]}, {\ttfamily [virtual]}}

receive\+Data will read the data from the socket and place it in the socket buffer. T\+LS layer overrides this to be able to read from S\+SL. 

Reimplemented from \mbox{\hyperlink{classcore_1_1_socket_af455ec6f793473f529507af26aa54695}{core\+::\+Socket}}.



The documentation for this class was generated from the following files\+:\begin{DoxyCompactItemize}
\item 
\mbox{\hyperlink{_t_l_s_session_8h}{T\+L\+S\+Session.\+h}}\item 
\mbox{\hyperlink{_t_l_s_session_8cpp}{T\+L\+S\+Session.\+cpp}}\end{DoxyCompactItemize}
