Logo Search packages:      
Sourcecode: wvstreams version File versions

UniClientConn Class Reference

#include <uniclientconn.h>

Inheritance diagram for UniClientConn:

WvStreamClone WvStream WvErrorBase IObject UniConfDaemonConn

List of all members.


Detailed Description

Represents a connection to a UniConf daemon via any WvStream. Makes several operations much simpler, such as TCL encoding/decoding of lists, filling of the operation buffer and comparison for UniConf operations.

Definition at line 26 of file uniclientconn.h.


Public Types

enum  Command {
  NONE = -2, INVALID = -1, REQ_NOOP, REQ_GET,
  REQ_SET, REQ_REMOVE, REQ_SUBTREE, REQ_HASCHILDREN,
  REQ_QUIT, REQ_HELP, REPLY_OK, REPLY_FAIL,
  REPLY_CHILD, REPLY_ONEVAL, PART_VALUE, PART_TEXT,
  EVENT_HELLO, EVENT_NOTICE
}

Public Member Functions

void _callback ()
void * _callwrap (void *)
virtual unsigned int addRef ()=0
void alarm (time_t msec_timeout)
time_t alarm_remaining ()
void auto_flush (bool is_automatic)
void autoforward (WvStream &s)
virtual void callback ()
virtual void close ()
virtual size_t continue_read (time_t wait_msec, WvBuf &outbuf, size_t count)
virtual size_t continue_read (time_t wait_msec, void *buf, size_t count)
bool continue_select (time_t msec_timeout)
void delay_output (bool is_delayed)
void drain ()
virtual WvString errstr () const
virtual void execute ()
virtual bool flush (time_t msec_timeout)
virtual bool flush_internal (time_t msec_timeout)
void flush_then_close (int msec_timeout)
void force_select (bool readable, bool writable, bool isexception=false)
virtual int geterr () const
virtual IObjectgetInterface (const UUID &)=0
char * getline (time_t wait_msec, char separator= '\n', int readahead=1024)
virtual IWeakRefgetWeakRef ()=0
virtual bool isok () const
virtual bool isreadable ()
virtual bool iswritable ()
virtual void maybe_autoclose ()
void noautoforward ()
void noerr ()
virtual void noread ()
virtual void nowrite ()
size_t operator() (WVSTRING_FORMAT_DECL)
size_t operator() (WvStringParm s)
void outbuf_limit (size_t size)
bool post_select (SelectInfo &si, const SelectRequest &r)
virtual bool post_select (SelectInfo &si)
bool pre_select (SelectInfo &si, const SelectRequest &r)
virtual bool pre_select (SelectInfo &si)
size_t print (WVSTRING_FORMAT_DECL)
size_t print (WvStringParm s)
void queuemin (size_t count)
virtual size_t read (WvBuf &outbuf, size_t count)
virtual size_t read (void *buf, size_t count)
size_t read_until (void *buf, size_t count, time_t wait_msec, char separator)
WvString readarg ()
Command readcmd ()
virtual unsigned int release ()=0
void runonce (time_t msec_timeout=-1)
bool select (time_t msec_timeout, bool readable, bool writable, bool isex=false)
bool select (time_t msec_timeout)
void setcallback (WvStreamCallback _callfunc, void *_userdata)
virtual void setclone (IWvStream *clone)
void setclosecallback (WvStreamCallback _callfunc, void *_userdata)
void seterr (const WvErrorBase &err)
void seterr (WVSTRING_FORMAT_DECL)
void seterr (WvStringParm specialerr)
virtual void seterr (int _errnum)
virtual bool should_flush ()
virtual const WvAddrsrc () const
void terminate_continue_select ()
void undo_force_select (bool readable, bool writable, bool isexception=false)
 UniClientConn (IWvStream *_s, WvStringParm dst=WvString::null)
virtual void unread (WvBuf &outbuf, size_t count)
virtual size_t uread (void *buf, size_t size)
virtual size_t uwrite (const void *buf, size_t size)
size_t write (WvStringParm s)
virtual size_t write (WvBuf &inbuf, size_t count=INT_MAX)
virtual size_t write (const void *buf, size_t count)
void writecmd (Command command, WvStringParm payload=WvString::null)
void writefail (WvStringParm payload="")
void writeok (WvStringParm payload="")
void writeonevalue (const UniConfKey &key, WvStringParm value)
void writetext (WvStringParm text)
void writevalue (const UniConfKey &key, WvStringParm value)
bool xpost_select (SelectInfo &si, const SelectRequest &r)
bool xpre_select (SelectInfo &si, const SelectRequest &r)

Static Public Member Functions

static void autoforward_callback (WvStream &s, void *userdata)

Public Attributes

bool alarm_was_ticking
IWvStream * cloned
bool disassociate_on_close
SelectRequest force
WvConstStringBuffer payloadbuf
size_t personal_stack_size
WvStreamread_requires_writable
bool stop_read
bool stop_write
bool uses_continue_select
WvStreamwrite_requires_readable

Static Public Attributes

static const CommandInfo cmdinfos [NUM_COMMANDS]
static const int NUM_COMMANDS = EVENT_NOTICE + 1

Protected Member Functions

bool _build_selectinfo (SelectInfo &si, time_t msec_timeout, bool readable, bool writable, bool isexcept, bool forceable)
int _do_select (SelectInfo &si)
bool _process_selectinfo (SelectInfo &si, bool forceable)
bool flush_outbuf (time_t msec_timeout)
virtual int getrfd () const
virtual int getwfd () const

Protected Attributes

WvTime alarm_time
time_t autoclose_time
WvCallback< void *, void * > call_ctx
WvStreamCallback callfunc
void * closecb_data
WvStreamCallback closecb_func
bool closed
int errnum
WvString errstring
WvDynBuf inbuf
bool is_auto_flush
bool is_flushing
WvTime last_alarm_check
WvLog log
size_t max_outbuf_size
WvDynBuf outbuf
bool outbuf_delayed_flush
size_t queue_min
void * userdata
bool want_to_flush
bool wvstream_execute_called

Static Protected Attributes

static WvStreamglobalstream = NULL

Private Member Functions

WvString readmsg ()
void writemsg (WvStringParm message)

Private Attributes

WvDynBuf msgbuf

Classes

struct  CommandInfo

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

Generated by  Doxygen 1.6.0   Back to index