\hypertarget{classFinderServer}{
\section{FinderServer Class Reference}
\label{classFinderServer}\index{FinderServer@{FinderServer}}
}


A wrapper class for \hyperlink{protocolthe-p}{the} components within a \hyperlink{classFinder}{Finder}.  




{\ttfamily \#include $<$finder\_\-server.hh$>$}

\subsection*{Public Types}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderServer_a84980d6d1b8e059a2b85c7135ee423f3}{
typedef list$<$ \hyperlink{classFinderTcpListener}{FinderTcpListener} $\ast$ $>$ {\bfseries Listeners}}
\label{classFinderServer_a84980d6d1b8e059a2b85c7135ee423f3}

\end{DoxyCompactItemize}
\subsection*{Public Member Functions}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderServer_aede16e3292dd83b246602f71ad1900b4}{
\hyperlink{classFinderServer_aede16e3292dd83b246602f71ad1900b4}{FinderServer} (\hyperlink{classEventLoop}{EventLoop} \&e, \hyperlink{classIPv4}{IPv4} default\_\-interface, uint16\_\-t default\_\-port)  throw (InvalidAddress, InvalidPort)}
\label{classFinderServer_aede16e3292dd83b246602f71ad1900b4}

\begin{DoxyCompactList}\small\item\em Constructor. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderServer_aa07f6bc224ef25668e2aeea579379ac1}{
\hyperlink{classFinderServer_aa07f6bc224ef25668e2aeea579379ac1}{$\sim$FinderServer} ()}
\label{classFinderServer_aa07f6bc224ef25668e2aeea579379ac1}

\begin{DoxyCompactList}\small\item\em Destructor. \item\end{DoxyCompactList}\item 
bool \hyperlink{classFinderServer_a80f393ee4f898c1c89051ef155558d74}{add\_\-binding} (\hyperlink{classIPv4}{IPv4} addr, uint16\_\-t port)  throw (InvalidAddress, InvalidPort)
\begin{DoxyCompactList}\small\item\em Add an additional interface and port to accept connections on. \item\end{DoxyCompactList}\item 
bool \hyperlink{classFinderServer_a07342d6a71735dcb9d0b9370c00e63ee}{remove\_\-binding} (\hyperlink{classIPv4}{IPv4} addr, uint16\_\-t port)
\begin{DoxyCompactList}\small\item\em Remove an interface binding that was added by calling add\_\-binding. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderServer_ae5da4b9e05740d7cdc45aca6dade0249}{
uint32\_\-t \hyperlink{classFinderServer_ae5da4b9e05740d7cdc45aca6dade0249}{connection\_\-count} () const }
\label{classFinderServer_ae5da4b9e05740d7cdc45aca6dade0249}

\begin{DoxyCompactList}\small\item\em Accessor to \hyperlink{protocolthe-p}{the} number of connections \hyperlink{protocolthe-p}{the} \hyperlink{classFinder}{Finder} has. \item\end{DoxyCompactList}\item 
\hypertarget{classFinderServer_a44de995a93cedd30b136254890af9add}{
\hyperlink{classIPv4}{IPv4} {\bfseries addr} () const }
\label{classFinderServer_a44de995a93cedd30b136254890af9add}

\item 
\hypertarget{classFinderServer_a56f9a905709acc0e7b125b663f281970}{
uint16\_\-t {\bfseries port} () const }
\label{classFinderServer_a56f9a905709acc0e7b125b663f281970}

\end{DoxyCompactItemize}
\subsection*{Protected Attributes}
\begin{DoxyCompactItemize}
\item 
\hypertarget{classFinderServer_a5bb31e99eb7a2662d2fc15d27c769556}{
\hyperlink{classEventLoop}{EventLoop} \& {\bfseries \_\-e}}
\label{classFinderServer_a5bb31e99eb7a2662d2fc15d27c769556}

\item 
\hypertarget{classFinderServer_a63d3d4d245d06f68652602e2df6fb17c}{
\hyperlink{classFinder}{Finder} {\bfseries \_\-f}}
\label{classFinderServer_a63d3d4d245d06f68652602e2df6fb17c}

\item 
\hypertarget{classFinderServer_ab7da5d8a361a7281d7404b8280bbacf7}{
\hyperlink{classFinderXrlTarget}{FinderXrlTarget} {\bfseries \_\-fxt}}
\label{classFinderServer_ab7da5d8a361a7281d7404b8280bbacf7}

\item 
\hypertarget{classFinderServer_a9b00a471c85d4e09a5eee520a842835d}{
Listeners {\bfseries \_\-listeners}}
\label{classFinderServer_a9b00a471c85d4e09a5eee520a842835d}

\end{DoxyCompactItemize}


\subsection{Detailed Description}
A wrapper class for \hyperlink{protocolthe-p}{the} components within a \hyperlink{classFinder}{Finder}. Instantiates a \hyperlink{classFinder}{Finder} object and IPC infrastructure for \hyperlink{classFinder}{Finder} to accept accept incoming connections. 

\subsection{Member Function Documentation}
\hypertarget{classFinderServer_a80f393ee4f898c1c89051ef155558d74}{
\index{FinderServer@{FinderServer}!add\_\-binding@{add\_\-binding}}
\index{add\_\-binding@{add\_\-binding}!FinderServer@{FinderServer}}
\subsubsection[{add\_\-binding}]{\setlength{\rightskip}{0pt plus 5cm}bool FinderServer::add\_\-binding (
\begin{DoxyParamCaption}
\item[{{\bf IPv4}}]{addr, }
\item[{uint16\_\-t}]{port}
\end{DoxyParamCaption}
)  throw ({\bf InvalidAddress}, {\bf InvalidPort})}}
\label{classFinderServer_a80f393ee4f898c1c89051ef155558d74}


Add an additional interface and port to accept connections on. 

\begin{DoxyReturn}{Returns}
true on success, false if binding already exists or cannot be instantiated. 
\end{DoxyReturn}
\hypertarget{classFinderServer_a07342d6a71735dcb9d0b9370c00e63ee}{
\index{FinderServer@{FinderServer}!remove\_\-binding@{remove\_\-binding}}
\index{remove\_\-binding@{remove\_\-binding}!FinderServer@{FinderServer}}
\subsubsection[{remove\_\-binding}]{\setlength{\rightskip}{0pt plus 5cm}bool FinderServer::remove\_\-binding (
\begin{DoxyParamCaption}
\item[{{\bf IPv4}}]{addr, }
\item[{uint16\_\-t}]{port}
\end{DoxyParamCaption}
)}}
\label{classFinderServer_a07342d6a71735dcb9d0b9370c00e63ee}


Remove an interface binding that was added by calling add\_\-binding. 

\begin{DoxyReturn}{Returns}
true on success, false if binding does not exist or was not added by add\_\-binding. 
\end{DoxyReturn}


The documentation for this class was generated from the following files:\begin{DoxyCompactItemize}
\item 
/home/greearb/git/xorp.ct.github/xorp/libxipc/finder\_\-server.hh\item 
/home/greearb/git/xorp.ct.github/xorp/libxipc/finder\_\-server.cc\end{DoxyCompactItemize}
