00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include <config.h>
00021
00022 #include <algorithm>
00023 #include <drizzled/module/module.h>
00024 #include <drizzled/sys_var.h>
00025 #include <drizzled/util/functors.h>
00026 #include <drizzled/util/tokenize.h>
00027 #include <drizzled/module/manifest.h>
00028 #include <drizzled/module/vertex_handle.h>
00029
00030 namespace drizzled {
00031 namespace module {
00032
00033 Module::Module(const Manifest *manifest_arg, Library *library_arg) :
00034 plugin_dl(library_arg),
00035 isInited(false),
00036 name(manifest_arg->name),
00037 manifest(*manifest_arg),
00038 vertex_(NULL)
00039 {
00040 if (manifest.depends != NULL)
00041 {
00042 tokenize(manifest.depends, depends_, ",", true);
00043 }
00044 }
00045
00046 Module::~Module()
00047 {
00048 std::for_each(sys_vars.begin(), sys_vars.end(), DeletePtr());
00049 delete vertex_;
00050 }
00051
00052 }
00053 }