libassa
3.5.1
|
Namespaces | |
Log | |
Utils | |
Classes | |
class | Acceptor |
class | Address |
class | AutoPtrRef |
A wrapper class to provide AutoPtr with reference semantics. More... | |
class | AutoPtr |
AutoPtr is based on SGI implementation of a auto_ptr template that makes memory handling a little bit easier. More... | |
class | AutoPtrArrayRef |
A wrapper class to provide AutoPtr with reference semantics. More... | |
class | AutoPtrArray |
AutoPtrArray handles memory management of an array of objects. More... | |
class | CharInBuffer |
CharInBuffer is a bucket for the character-based streams/messages. More... | |
class | Option |
Option class. More... | |
class | CmdLineOpts |
Class CmdLineOpts. More... | |
class | Connector |
Connector is a template class for initialization of communication services. More... | |
class | ConUDPSocket |
class | Destroyer |
class | EventHandler |
EventHandler class. More... | |
class | FdSet |
Class FdSet. More... | |
class | FileLogger |
class | ChildStatusHandler |
A helper class of Fork. More... | |
class | Fork |
Fork class is a simple wrapper around C library function fork(). More... | |
class | fnode_t |
forknode_t class. More... | |
class | ForkList |
ForkList is a singleton class that keeps a list of all forked children. More... | |
class | GenServer |
class | SIGINTHandler |
SIGINTHandler handles SIGINT signal. More... | |
class | SIGUSR1Handler |
Class SIGUSR1Handler. More... | |
class | SIGUSR2Handler |
Class SIGUSR2Handler handles SIGUSR2 signal. More... | |
class | SIGCHLDHandler |
Class SIGCHLDHandler handles SIGCHLD signal. More... | |
class | SIGALRMHandler |
Class SIGALRMHandler handles SIGALRM signal. More... | |
class | SIGPOLLHandler |
Class SIGPOLLHandler handles SIGPOLL signal. More... | |
class | IdSet |
class | INETAddress |
class | IniFile |
class | IPv4Socket |
class | Logger |
class | DiagnosticContext |
Class DiagnosticContext tracks who deep a function is in the calling stack. More... | |
class | Logger_Impl |
class | MaskSet |
class | MemDump |
class | PidFileLock |
class | Pipe |
class | PriorityQueue_Impl |
Class PriorityQueue_Impl. More... | |
class | PriorityQueue |
class | PriorityQueue_Heap |
struct | Bfunc |
Bfunc is used by PriorityQueue_impl. More... | |
struct | Less |
Less is borrowed from STL implementation. More... | |
class | PriorityQueue_STLPQ |
class | Reactor |
class | Regexp |
Regexp class. More... | |
class | RemoteLogger |
class | Repository |
class | Semaphore |
class | ServiceHandler |
class | SigAction |
class | SigHandler |
class | SigHandlers |
class | CFUNC_Handler |
CFUNC_Handler class. More... | |
class | SigHandlersList |
SigHandlersList class. More... | |
class | SigSet |
class | Singleton |
class | Socket |
class | Socketbuf |
class | StdOutLogger |
class | io_ptrs |
io_ptrs structure. More... | |
class | Streambuf |
Streambuf class. More... | |
class | Timer |
struct | TimerCompare |
TimerCompare class compares two Timers base on their expiration timestamp. More... | |
class | TimerCountdown |
class | TimerQueue |
class | TimeVal |
class | UDPSocket |
class | UnConUDPSocket |
class | UNIXAddress |
class | xdrIOBuffer |
Typedefs | |
typedef struct sockaddr | SA |
typedef struct sockaddr_in | SA_IN |
typedef struct sockaddr_un | SA_UN |
typedef unsigned long | TimerId |
Timer Id is used in handle_timeout() calls. More... | |
typedef int(EventHandler::* | EH_IO_Callback) (int) |
A type for the pointer to I/O-related callback member function of class EventHandler. More... | |
Enumerations | |
enum | ConnectMode { sync , async } |
enum | EventType { READ_EVENT = 0x01 , WRITE_EVENT = 0x02 , EXCEPT_EVENT = 0x04 , TIMEOUT_EVENT = 0x10 , SIGNAL_EVENT = 0x20 , RWE_EVENTS = 0x07 , ALL_EVENTS = 0x37 } |
EventType defines events types that Reactor understands. More... | |
enum | Group { TRACE = 0x00000001 , APP = 0x00000002 , USR1 = 0x00000004 , USR2 = 0x00000008 , USR3 = 0x00000010 , ALL_APPS = 0x0000001F , ASSAERR = 0x00000020 , PIDFLOCK = 0x00000040 , CMDLINEOPTS = 0x00000080 , SEM = 0x00000100 , SIGHAND = 0x00000200 , REACT = 0x00000400 , REACTTRACE = 0x00000800 , SOCK = 0x00001000 , SOCKTRACE = 0x00002000 , XDRBUF = 0x00004000 , XDRBUFTRACE = 0x00008000 , STRMBUF = 0x00010000 , STRMBUFTRACE = 0x00020000 , FORK = 0x00040000 , SIGACT = 0x00080000 , PIPE = 0x00100000 , CHARINBUF = 0x00200000 , ADDRESS = 0x00400000 , INIFILE = 0x00800000 , REGEXP = 0x01000000 , RES5 = 0x02000000 , RES6 = 0x04000000 , RES7 = 0x08000000 , RES8 = 0x10000000 , RES9 = 0x20000000 , RES10 = 0x40000000 , ALL_LIB = 0x7FFFFFE0 , ALL = 0x7FFFFFFF , NONE = 0x00000000 } |
enum | marker_t { FUNC_MSG , FUNC_ENTRY , FUNC_EXIT } |
Functions | |
Socket & | operator>> (Socket &s_, CharInBuffer &b_) |
Regardless of the delimeter size, which can be >1, add the character received to the buffer and compare the end of the buffer with the delimeter. More... | |
bool | isReadEvent (EventType e_) |
bool | isWriteEvent (EventType e_) |
bool | isExceptEvent (EventType e_) |
bool | isTimeoutEvent (EventType e_) |
bool | isSignalEvent (EventType e_) |
bool | isRWEEvents (EventType e_) |
bool | isAllEvents (EventType e_) |
bool | is_valid_handler (handler_t socket_) |
Detect socket() error in a portable way. More... | |
void | disable_handler (handler_t &socket_) |
Set socket descriptor to invalid value in a portable way. More... | |
int | get_errno () |
Fetch error number in a portable way. More... | |
void | set_errno (int new_errno_) |
Set error number in a portable way. More... | |
Socket & | flush (Socket &os_) |
flush manipulator. More... | |
Socket & | endl (Socket &os_) |
endl manipulator. More... | |
Socket & | ends (Socket &os_) |
ends manipulator. More... | |
TimeVal | operator+ (const TimeVal &lhs_, const TimeVal &rhs_) |
TimeVal | operator- (const TimeVal &lhs_, const TimeVal &rhs_) |
bool | operator> (const TimeVal &lhs_, const TimeVal &rhs_) |
bool | operator!= (const TimeVal &lhs_, const TimeVal &rhs_) |
bool | operator<= (const TimeVal &lhs_, const TimeVal &rhs_) |
bool | operator>= (const TimeVal &lhs_, const TimeVal &rhs_) |
Socket & | operator>> (Socket &s_, xdrIOBuffer &b_) |
int(EventHandler::* ASSA::EH_IO_Callback)(int) |
A type for the pointer to I/O-related callback member function of class EventHandler.
These are:
Definition at line 236 of file EventHandler.h.
typedef struct sockaddr_in ASSA::SA_IN |
typedef struct sockaddr_un ASSA::SA_UN |
typedef unsigned long ASSA::TimerId |
Timer Id is used in handle_timeout() calls.
Definition at line 27 of file EventHandler.h.
enum ASSA::ConnectMode |
Enumerator | |
---|---|
sync | Synchronous connection mode. |
async | Asynchronous connection mode. |
Definition at line 43 of file Connector.h.
enum ASSA::EventType |
EventType defines events types that Reactor understands.
Definition at line 34 of file EventHandler.h.
enum ASSA::Group |
Enumerator | |
---|---|
TRACE | Function call trace |
APP | Application-level messages |
USR1 | Additional application-level messages |
USR2 | Additional application-level messages |
USR3 | Additional application-level messages |
ALL_APPS | All application-level messages |
ASSAERR | ASSA and system errors |
PIDFLOCK | Class PidFileLock messages |
CMDLINEOPTS | Class CmdLineOpts messages |
SEM | Class Semaphore messages |
SIGHAND | Class SigHandler(s) messages |
REACT | Class Reactor/PrioriyQueue messages |
REACTTRACE | Extended Reactor/PrioriyQueue messages |
SOCK | Class Socket & friends messages |
SOCKTRACE | Extended Socket & friends messages |
XDRBUF | Class xdrIOBuffer messages |
XDRBUFTRACE | Extended xdrIOBuffer messages |
STRMBUF | Class Streambuf & friends messages |
STRMBUFTRACE | Extended Streambuf & friends messages |
FORK | Class Fork messages |
SIGACT | Class SigACtion messages |
PIPE | Class Pipe messages |
CHARINBUF | Class CharInBuffer messages |
ADDRESS | Class Address & friends messages |
INIFILE | Class IniFile messages |
REGEXP | Class RegExp messages |
RES5 | Reserved for future use |
RES6 | Reserved for future use |
RES7 | Reserved for future use |
RES8 | Reserved for future use |
RES9 | Reserved for future use |
RES10 | Reserved for future use |
ALL_LIB | All library messages |
ALL | All messages: library + application |
NONE | Total silence |
Definition at line 25 of file LogMask.h.
enum ASSA::marker_t |
|
inline |
Set socket descriptor to invalid value in a portable way.
socket_ is set to the value out of valid range.
Definition at line 108 of file Logger_Impl.h.
References BAD_HANDLER.
Referenced by ASSA::IPv4Socket::accept(), ASSA::Socket::close_handler(), and ASSA::IPv4Socket::open().
endl manipulator.
If you want to insert a newline character ('
') to terminate a text line, you should favor the manipulator endl. This manipulator inserts a newline character and also flushes the stream buffer.
Definition at line 602 of file Socket.h.
References ASSA::Socket::flush(), and ASSA::Socket::write().
Referenced by ASSA::GenServer::display_help(), ASSA::FileLogger::dump(), ASSA::FileLogger::handle_rollover(), ASSA::GenServer::init(), and ASSA::Logger::log_open().
ends manipulator.
You can insert a null character (without flushing the output stream) with the manipulator ends. A common use for a Socket object is to mediate output to a stream buffer that constructs an in-memory character sequence. Such a sequence wants a terminating null character. The manipulator ends provides highly visible evidence that the null character is indeed being supplied.
Definition at line 622 of file Socket.h.
References ASSA::Socket::write().
Referenced by ASSA::Option::dump(), ASSA::Semaphore::dump(), ASSA::FdSet::dump_c_str(), ASSA::Socket::dumpState(), ASSA::GenServer::get_version(), ASSA::GenServer::handle_signal(), ASSA::Reactor::registerIOHandler(), and ASSA::PidFileLock::write_pid().
flush manipulator.
Flush a stream buffer.
Definition at line 587 of file Socket.h.
References ASSA::Socket::flush().
Referenced by ASSA::Logger_Impl::format_msg(), ASSA::FileLogger::log_close(), ASSA::RemoteLogger::log_close(), ASSA::FileLogger::log_func(), ASSA::RemoteLogger::log_func(), ASSA::FileLogger::log_msg(), ASSA::RemoteLogger::log_msg(), ASSA::RemoteLogger::log_open(), ASSA::FileLogger::log_raw_msg(), ASSA::StdOutLogger::log_resync(), ASSA::FileLogger::log_resync(), and ASSA::RemoteLogger::log_resync().
|
inline |
Fetch error number in a portable way.
Definition at line 115 of file Logger_Impl.h.
Referenced by ASSA::IPv4Socket::connect(), ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::connect(), ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::handle_write(), ASSA::IPv4Socket::read(), ASSA::Socketbuf::sys_read(), and ASSA::Socketbuf::underflow().
|
inline |
Detect socket() error in a portable way.
Definition at line 100 of file Logger_Impl.h.
References BAD_HANDLER.
Referenced by ASSA::IPv4Socket::accept(), ASSA::Socket::clear(), ASSA::IPv4Socket::clone(), ASSA::IPv4Socket::close(), ASSA::IPv4Socket::connect(), ASSA::IPv4Socket::open(), ASSA::IPv4Socket::read(), ASSA::Reactor::removeIOHandler(), and ASSA::IPv4Socket::write().
|
inline |
Definition at line 87 of file EventHandler.h.
References isExceptEvent(), isReadEvent(), isSignalEvent(), isTimeoutEvent(), and isWriteEvent().
|
inline |
Definition at line 63 of file EventHandler.h.
References EXCEPT_EVENT.
Referenced by isAllEvents(), isRWEEvents(), ASSA::Reactor::registerIOHandler(), and ASSA::Reactor::removeHandler().
|
inline |
Definition at line 51 of file EventHandler.h.
References READ_EVENT.
Referenced by isAllEvents(), isRWEEvents(), ASSA::Reactor::registerIOHandler(), and ASSA::Reactor::removeHandler().
|
inline |
Definition at line 81 of file EventHandler.h.
References isExceptEvent(), isReadEvent(), and isWriteEvent().
|
inline |
Definition at line 75 of file EventHandler.h.
References SIGNAL_EVENT.
Referenced by isAllEvents(), and ASSA::Reactor::registerIOHandler().
|
inline |
Definition at line 69 of file EventHandler.h.
References TIMEOUT_EVENT.
Referenced by isAllEvents(), ASSA::Reactor::registerIOHandler(), and ASSA::Reactor::removeHandler().
|
inline |
Definition at line 57 of file EventHandler.h.
References WRITE_EVENT.
Referenced by isAllEvents(), isRWEEvents(), ASSA::Reactor::registerIOHandler(), and ASSA::Reactor::removeHandler().
Socket& ASSA::operator>> | ( | ASSA::Socket & | s_, |
ASSA::CharInBuffer & | b_ | ||
) |
Regardless of the delimeter size, which can be >1, add the character received to the buffer and compare the end of the buffer with the delimeter.
Read bytes from Socket stream until either record delimiter is detected, or EOF occured, or Socket stream is exhausted.
If match, bite off delimiter and set the state to complete. If not, continue reading till either there is no more characters to read, or Socket error (Fail or EOF), or buffer overflow. If overflow occurs, set the state to 'error' and terminate.
Definition at line 80 of file CharInBuffer.cpp.
Socket& ASSA::operator>> | ( | Socket & | s_, |
xdrIOBuffer & | b_ | ||
) |
Definition at line 25 of file xdrIOBuffer.cpp.
|
inline |
Set error number in a portable way.
Definition at line 128 of file Logger_Impl.h.
Referenced by ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::connect(), ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::doSync(), ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::handle_timeout(), and ASSA::Connector< SERVICE_HANDLER, PEER_CONNECTOR >::handle_write().