OpenSDN source code
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Pages
InstanceTask Class Referenceabstract

#include <instance_task.h>

Inheritance diagram for InstanceTask:

Public Types

typedef boost::function< void(InstanceTask
*task, const std::string &msg)> 
OnDataCallback
 
typedef boost::function< void(InstanceTask
*task, const
boost::system::error_code &ec)> 
OnExitCallback
 

Public Member Functions

 InstanceTask ()
 
virtual ~InstanceTask ()
 
virtual bool Run ()=0
 
virtual void Stop ()=0
 
virtual void Terminate ()=0
 
virtual bool IsSetup ()=0
 
virtual pid_t pid () const =0
 
virtual const std::string & cmd () const =0
 
virtual int cmd_type () const =0
 
bool is_running () const
 
time_t start_time () const
 
void set_on_data_cb (OnDataCallback cb)
 
void set_on_exit_cb (OnExitCallback cb)
 
int incr_reattempts ()
 
int reattempts ()
 

Protected Attributes

bool is_running_
 
time_t start_time_
 
int reattempts_
 
OnDataCallback on_data_cb_
 
OnExitCallback on_exit_cb_
 

Detailed Description

Definition at line 18 of file instance_task.h.

Member Typedef Documentation

typedef boost::function<void(InstanceTask *task, const std::string &msg)> InstanceTask::OnDataCallback

Definition at line 21 of file instance_task.h.

typedef boost::function<void(InstanceTask *task, const boost::system::error_code &ec)> InstanceTask::OnExitCallback

Definition at line 23 of file instance_task.h.

Constructor & Destructor Documentation

InstanceTask::InstanceTask ( )

Definition at line 10 of file instance_task.cc.

virtual InstanceTask::~InstanceTask ( )
inlinevirtual

Definition at line 26 of file instance_task.h.

Member Function Documentation

virtual const std::string& InstanceTask::cmd ( ) const
pure virtual
virtual int InstanceTask::cmd_type ( ) const
pure virtual
int InstanceTask::incr_reattempts ( )
inline

Definition at line 55 of file instance_task.h.

bool InstanceTask::is_running ( ) const
inline

Definition at line 39 of file instance_task.h.

virtual bool InstanceTask::IsSetup ( )
pure virtual
virtual pid_t InstanceTask::pid ( ) const
pure virtual

Implemented in InstanceTaskMethod, and InstanceTaskExecvp.

int InstanceTask::reattempts ( )
inline

Definition at line 59 of file instance_task.h.

virtual bool InstanceTask::Run ( )
pure virtual
void InstanceTask::set_on_data_cb ( OnDataCallback  cb)
inline

Definition at line 47 of file instance_task.h.

void InstanceTask::set_on_exit_cb ( OnExitCallback  cb)
inline

Definition at line 51 of file instance_task.h.

time_t InstanceTask::start_time ( ) const
inline

Definition at line 43 of file instance_task.h.

virtual void InstanceTask::Stop ( )
pure virtual
virtual void InstanceTask::Terminate ( )
pure virtual

Member Data Documentation

bool InstanceTask::is_running_
protected

Definition at line 64 of file instance_task.h.

OnDataCallback InstanceTask::on_data_cb_
protected

Definition at line 67 of file instance_task.h.

OnExitCallback InstanceTask::on_exit_cb_
protected

Definition at line 68 of file instance_task.h.

int InstanceTask::reattempts_
protected

Definition at line 66 of file instance_task.h.

time_t InstanceTask::start_time_
protected

Definition at line 65 of file instance_task.h.


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