OpenSDN source code
|
Public Member Functions | |
EtcdWatcher (ConfigEtcdClient *etcd_client) | |
virtual bool | Run () |
Code to execute. Returns true if task is completed. Return false to reschedule the task. More... | |
ConfigEtcdClient * | client () const |
string | Description () const |
![]() | |
Task (int task_id, int task_instance) | |
Task (int task_id) | |
virtual | ~Task () |
virtual void | OnTaskCancel () |
Called on task exit, if it is marked for cancellation. If the user wants to do any cleanup on task cancellation, then he/she can overload this function. More... | |
State | GetState () const |
int | GetTaskId () const |
int | GetTaskInstance () const |
uint64_t | GetSeqno () const |
bool | task_cancelled () const |
uint64_t | enqueue_time () const |
uint64_t | schedule_time () const |
uint32_t | execute_delay () const |
uint32_t | schedule_delay () const |
Private Member Functions | |
void | ProcessResponse (EtcdResponse resp) |
Private Attributes | |
ConfigEtcdClient * | etcd_client_ |
Additional Inherited Members | |
![]() | |
enum | State { INIT, WAIT, RUN } |
Task states. More... | |
enum | TbbState { TBB_INIT, TBB_ENQUEUED, TBB_EXEC, TBB_DONE } |
![]() | |
static Task * | Running () |
Returns a pointer to the current task the code is executing under. More... | |
![]() | |
static const int | kTaskInstanceAny = -1 |
ETCD Watcher class to enable watching for any changes to config. Invokes etcd::Watch() which watches the ETCD server for any changes and invokes provided callback when a change is detected.
Definition at line 62 of file config_etcd_client.cc.
|
inline |
Definition at line 64 of file config_etcd_client.cc.
|
inline |
Definition at line 71 of file config_etcd_client.cc.
|
inlinevirtual |
Implements Task.
Definition at line 74 of file config_etcd_client.cc.
|
private |
|
virtual |
Code to execute. Returns true if task is completed. Return false to reschedule the task.
If reinit is triggerred, don't wait for end of config trigger. Return from here to process reinit.
Invoke etcd client library to watch for changes.
Implements Task.
Definition at line 141 of file config_etcd_client.cc.
|
private |
Definition at line 79 of file config_etcd_client.cc.