Drizzled Public API Documentation

drizzled::plugin::Scheduler Class Referenceabstract

#include <scheduler.h>

Inheritance diagram for drizzled::plugin::Scheduler:
drizzled::plugin::Plugin multi_thread::MultiThreadScheduler

Public Types

typedef std::pair< const std::string, const std::string > map_key
 
typedef std::map< const map_key, plugin::Plugin * > map
 
typedef std::vector< Plugin * > vector
 

Public Member Functions

 Scheduler (std::string name_arg)
 
virtual bool addSession (const Session::shared_ptr &)=0
 
virtual void killSession (Session *)
 
virtual void killSessionNow (const Session::shared_ptr &)
 
virtual void shutdownPlugin ()
 
virtual void prime ()
 
virtual void startup (drizzled::Session &)
 
void activate ()
 
void deactivate ()
 
bool isActive () const
 
const std::string & getName () const
 
void setModule (module::Module *module)
 
const std::string & getTypeName () const
 
virtual bool removeLast () const
 
const std::string & getModuleName () const
 

Static Public Member Functions

static bool addPlugin (plugin::Scheduler *)
 
static void removePlugin (plugin::Scheduler *)
 
static bool setPlugin (const std::string &name)
 
static SchedulergetScheduler ()
 

Detailed Description

This class should be used by scheduler plugins to implement custom session schedulers.

Definition at line 35 of file scheduler.h.

Member Function Documentation

virtual bool drizzled::plugin::Scheduler::addSession ( const Session::shared_ptr &  )
pure virtual

Add a session to the scheduler. When the scheduler is ready to run the session, it should call session->run().

Implemented in multi_thread::MultiThreadScheduler.

virtual void drizzled::plugin::Scheduler::killSession ( Session )
inlinevirtual

Notify the scheduler that it should be killed gracefully.

Reimplemented in multi_thread::MultiThreadScheduler.

Definition at line 51 of file scheduler.h.

virtual void drizzled::plugin::Scheduler::killSessionNow ( const Session::shared_ptr &  )
inlinevirtual

This is called when a scheduler should kill the session immedaitely.

Reimplemented in multi_thread::MultiThreadScheduler.

Definition at line 56 of file scheduler.h.


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