~drizzle-trunk/drizzle/development

« back to all changes in this revision

Viewing changes to drizzled/scheduling.cc

Merged Eric from lp:~eday/drizzle/eday-merge

Show diffs side-by-side

added added

removed removed

Lines of Context:
20
20
#include <drizzled/server_includes.h>
21
21
#include <drizzled/scheduling.h>
22
22
#include <drizzled/gettext.h>
23
 
#include <drizzled/connect.h>
24
23
#include "drizzled/plugin_registry.h"
25
24
#include "drizzled/registry.h"
26
25
 
27
26
using namespace std;
28
 
 
29
 
SchedulerFactory *scheduler_factory= NULL;
30
 
drizzled::Registry<SchedulerFactory *> all_schedulers;
31
 
 
32
 
bool add_scheduler_factory(SchedulerFactory *factory)
 
27
using namespace drizzled;
 
28
 
 
29
plugin::SchedulerFactory *scheduler_factory= NULL;
 
30
Registry<plugin::SchedulerFactory *> all_schedulers;
 
31
 
 
32
bool add_scheduler_factory(plugin::SchedulerFactory *factory)
33
33
{
34
34
  if (all_schedulers.count(factory->getName()) != 0)
35
35
  {
44
44
}
45
45
 
46
46
 
47
 
bool remove_scheduler_factory(SchedulerFactory *factory)
 
47
bool remove_scheduler_factory(plugin::SchedulerFactory *factory)
48
48
{
49
49
  scheduler_factory= NULL;
50
50
  all_schedulers.remove(factory);
55
55
bool set_scheduler_factory(const string& name)
56
56
{
57
57
   
58
 
  SchedulerFactory *factory= all_schedulers.find(name);
 
58
  plugin::SchedulerFactory *factory= all_schedulers.find(name);
59
59
  if (factory == NULL)
60
60
  {
61
61
    errmsg_printf(ERRMSG_LVL_WARN,
68
68
  return false;
69
69
}
70
70
 
71
 
Scheduler &get_thread_scheduler()
 
71
plugin::Scheduler *get_thread_scheduler()
72
72
{
73
73
  assert(scheduler_factory != NULL);
74
 
  Scheduler *sched= (*scheduler_factory)();
 
74
  plugin::Scheduler *sched= (*scheduler_factory)();
75
75
  if (sched == NULL)
76
76
  {
77
77
    errmsg_printf(ERRMSG_LVL_ERROR, _("Scheduler initialization failed.\n"));
78
78
    exit(1);
79
79
  }
80
 
  return *sched;
 
80
  return sched;
81
81
}
82
82