00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021 #include <config.h>
00022
00023 #include <plugin/trigger_dictionary/table.h>
00024
00025 #include <drizzled/atomics.h>
00026 #include <drizzled/session.h>
00027
00028
00029 using namespace drizzled;
00030 using namespace std;
00031
00032 trigger_dictionary::Table::Table() :
00033 plugin::TableFunction("DATA_DICTIONARY", "EVENT_OBSERVERS")
00034 {
00035 add_field("EVENT_OBSERVER_NAME", plugin::TableFunction::STRING, MAXIMUM_IDENTIFIER_LENGTH, false);
00036 }
00037
00038 trigger_dictionary::Table::Generator::Generator(drizzled::Field **arg) :
00039 drizzled::plugin::TableFunction::Generator(arg),
00040 event_observer_generator()
00041 { }
00042
00043 bool trigger_dictionary::Table::Generator::populate()
00044 {
00045 drizzled::plugin::EventObserverPtr event;
00046
00047 while ((event= event_observer_generator))
00048 {
00049
00050 push(event->getName());
00051
00052 return true;
00053 }
00054
00055 return false;
00056 }