WvStreams
|
00001 /* 00002 * Worldvisions Weaver Software: 00003 * Copyright (C) 1997-2002 Net Integration Technologies, Inc. 00004 * 00005 * Manages a UniConf daemon session. 00006 */ 00007 #ifndef __UNICONFDAEMONCONN_H 00008 #define __UNICONFDAEMONCONN_H 00009 00010 #include "uniconf.h" 00011 #include "uniclientconn.h" 00012 #include "unipermgen.h" 00013 #include "wvlog.h" 00014 #include "wvhashtable.h" 00015 00016 #define NUM_WATCHES 113 00017 #define CONTINUE_SELECT_AT 100 00018 00019 class UniConfDaemon; 00020 00025 class UniConfDaemonConn : public UniClientConn 00026 { 00027 public: 00028 UniConfDaemonConn(WvStream *s, const UniConf &root); 00029 virtual ~UniConfDaemonConn(); 00030 00031 virtual void close(); 00032 00033 virtual void execute(); 00034 00035 protected: 00036 UniConf root; 00037 00038 virtual void do_invalid(WvStringParm c); 00039 virtual void do_malformed(UniClientConn::Command); 00040 virtual void do_noop(); 00041 virtual void do_reply(WvStringParm reply); 00042 virtual void do_get(const UniConfKey &key); 00043 virtual void do_set(const UniConfKey &key, WvStringParm value); 00044 virtual void do_remove(const UniConfKey &key); 00045 virtual void do_subtree(const UniConfKey &key, bool recursive); 00046 virtual void do_haschildren(const UniConfKey &key); 00047 virtual void do_commit(); 00048 virtual void do_refresh(); 00049 virtual void do_quit(); 00050 virtual void do_help(); 00051 00052 virtual void addcallback(); 00053 virtual void delcallback(); 00054 00055 void deltacallback(const UniConf &cfg, const UniConfKey &key); 00056 }; 00057 00058 #endif // __UNICONFDAEMONCONN_H