OPeNDAP Hyrax Back End Server (BES)  Updated for version 3.8.3
TcpSocket Class Reference

#include <TcpSocket.h>

Inheritance diagram for TcpSocket:
Inheritance graph
Collaboration diagram for TcpSocket:
Collaboration graph

Public Member Functions

virtual bool allowConnection ()
 is there any wrapper code for unix sockets More...
 
virtual void close ()
 
virtual void connect ()
 
virtual void dump (ostream &strm) const
 dumps information about this object More...
 
string getIp ()
 
unsigned int getPort ()
 
virtual unsigned int getRecvBufferSize ()
 get the tcp receive buffer size using getsockopt More...
 
virtual unsigned int getSendBufferSize ()
 get the tcp send buffer size using getsockopt More...
 
virtual int getSocketDescriptor ()
 
virtual bool isConnected ()
 
virtual bool isListening ()
 
virtual void listen ()
 
virtual SocketnewSocket (int socket, struct sockaddr *addr)
 
virtual int receive (char *inBuff, const int inSize)
 
virtual void send (const string &str, int start, int end)
 
virtual void sync ()
 
 TcpSocket (const string &host, int portVal)
 
 TcpSocket (int portVal)
 
 TcpSocket (int socket, struct sockaddr *addr)
 
virtual ~TcpSocket ()
 

Protected Attributes

bool _addr_set
 
bool _connected
 
string _ip
 
bool _listening
 
unsigned int _port
 
int _socket
 

Detailed Description

Definition at line 42 of file TcpSocket.h.

Constructor & Destructor Documentation

◆ TcpSocket() [1/3]

TcpSocket::TcpSocket ( const string &  host,
int  portVal 
)
inline

Definition at line 55 of file TcpSocket.h.

Referenced by newSocket().

◆ TcpSocket() [2/3]

TcpSocket::TcpSocket ( int  portVal)
inline

Definition at line 63 of file TcpSocket.h.

◆ TcpSocket() [3/3]

TcpSocket::TcpSocket ( int  socket,
struct sockaddr *  addr 
)
inline

Definition at line 71 of file TcpSocket.h.

◆ ~TcpSocket()

virtual TcpSocket::~TcpSocket ( )
inlinevirtual

Definition at line 80 of file TcpSocket.h.

References connect(), getRecvBufferSize(), getSendBufferSize(), and listen().

Here is the call graph for this function:

Member Function Documentation

◆ allowConnection()

bool TcpSocket::allowConnection ( )
virtual

is there any wrapper code for unix sockets

Implements Socket.

Definition at line 609 of file TcpSocket.cc.

References Socket::getSocketDescriptor().

Referenced by newSocket().

Here is the call graph for this function:

◆ close()

◆ connect()

void TcpSocket::connect ( )
virtual

Implements Socket.

Definition at line 68 of file TcpSocket.cc.

References Socket::_connected, Socket::_listening, and Socket::_socket.

Referenced by ~TcpSocket().

◆ dump()

void TcpSocket::dump ( ostream &  strm) const
virtual

dumps information about this object

Displays the pointer value of this instance

Parameters
strmC++ i/o stream to dump the information to

Reimplemented from Socket.

Definition at line 635 of file TcpSocket.cc.

References Socket::dump(), BESIndent::Indent(), BESIndent::LMarg(), and BESIndent::UnIndent().

Referenced by ServerApp::dump(), and newSocket().

Here is the call graph for this function:

◆ getIp()

string Socket::getIp ( )
inlineinherited

Definition at line 78 of file Socket.h.

References Socket::_ip, Socket::allowConnection(), Socket::dump(), Socket::getRecvBufferSize(), Socket::getSendBufferSize(), and Socket::newSocket().

Referenced by BESServerHandler::handle().

Here is the call graph for this function:

◆ getPort()

unsigned int Socket::getPort ( )
inlineinherited

Definition at line 74 of file Socket.h.

References Socket::_port.

Referenced by BESServerHandler::handle().

◆ getRecvBufferSize()

unsigned int TcpSocket::getRecvBufferSize ( )
virtual

get the tcp receive buffer size using getsockopt

Get the receive buffer size for this socket descriptor using the getsockopt system function. We do this to maximize the performance of TCP sockets

Exceptions
BESInternalFatalErrorif we are unable to get the size of the receive buffer

Implements Socket.

Definition at line 536 of file TcpSocket.cc.

References Socket::_socket, and BESDEBUG.

Referenced by ~TcpSocket().

◆ getSendBufferSize()

unsigned int TcpSocket::getSendBufferSize ( )
virtual

get the tcp send buffer size using getsockopt

Get the send buffer size for this socket descriptor using the getsockopt system function. We do this to maximize the performance of TCP sockets

Exceptions
BESInternalFatalErrorif we are unable to get the size of the send buffer

Implements Socket.

Definition at line 575 of file TcpSocket.cc.

References Socket::_socket, and BESDEBUG.

Referenced by ~TcpSocket().

◆ getSocketDescriptor()

virtual int Socket::getSocketDescriptor ( )
inlinevirtualinherited

◆ isConnected()

virtual bool Socket::isConnected ( )
inlinevirtualinherited

Definition at line 63 of file Socket.h.

References Socket::_connected, and Socket::listen().

Referenced by Connection::isConnected(), SocketListener::listen(), and PPTClient::PPTClient().

Here is the call graph for this function:

◆ isListening()

virtual bool Socket::isListening ( )
inlinevirtualinherited

Definition at line 65 of file Socket.h.

References Socket::_listening, Socket::close(), Socket::receive(), Socket::send(), and Socket::sync().

Referenced by SocketListener::listen().

Here is the call graph for this function:

◆ listen()

void TcpSocket::listen ( )
virtual

Implements Socket.

Definition at line 285 of file TcpSocket.cc.

References Socket::_connected, Socket::_listening, Socket::_socket, BESDEBUG, BESError::get_file(), BESError::get_line(), BESError::get_message(), BESKeys::get_value(), and TheBESKeys::TheKeys().

Referenced by ~TcpSocket().

Here is the call graph for this function:

◆ newSocket()

virtual Socket* TcpSocket::newSocket ( int  socket,
struct sockaddr *  addr 
)
inlinevirtual

Implements Socket.

Definition at line 87 of file TcpSocket.h.

References allowConnection(), dump(), and TcpSocket().

Here is the call graph for this function:

◆ receive()

int Socket::receive ( char *  inBuff,
const int  inSize 
)
virtualinherited

Definition at line 108 of file Socket.cc.

References Socket::_socket.

Referenced by PPTServer::closeConnection(), Socket::isListening(), and PPTConnection::send().

◆ send()

void Socket::send ( const string &  str,
int  start,
int  end 
)
virtualinherited

Definition at line 93 of file Socket.cc.

References Socket::_socket.

Referenced by Socket::isListening(), and PPTConnection::send().

◆ sync()

void Socket::sync ( )
virtualinherited

Definition at line 124 of file Socket.cc.

References Socket::_socket.

Referenced by Socket::isListening(), and PPTConnection::send().

Member Data Documentation

◆ _addr_set

bool Socket::_addr_set
protectedinherited

Definition at line 52 of file Socket.h.

Referenced by Socket::dump().

◆ _connected

bool Socket::_connected
protectedinherited

◆ _ip

string Socket::_ip
protectedinherited

Definition at line 50 of file Socket.h.

Referenced by Socket::dump(), Socket::getIp(), and Socket::Socket().

◆ _listening

bool Socket::_listening
protectedinherited

◆ _port

unsigned int Socket::_port
protectedinherited

Definition at line 51 of file Socket.h.

Referenced by Socket::dump(), Socket::getPort(), and Socket::Socket().

◆ _socket


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