Main Page | Namespace List | Class Hierarchy | Class List | Directories | File List | Class Members | File Members

PluginsNamespace Class Reference

Inheritance diagram for PluginsNamespace:

PluginsNamespaceManager DynamicFiltersManager DynExecutorManager DynHttpCommandManager DynHttpManagerList GenericPluginsManager ProtocolsManager List of all members.

Public Member Functions

virtual int addPluginOption (string &, PluginOption &)
virtual int addPreloadedPlugin (Plugin *)
HashMap< string, Plugin
* >::Iterator 
begin ()
HashMap< string, Plugin
* >::Iterator 
end ()
string & getName ()
PlugingetPlugin (string &name)
virtual PluginOptiongetPluginOption (string &)
bool isLoaded ()
virtual int load (Server *server, XmlParser *languageFile, string &resource)=0
 PluginsNamespace (string &name, PluginsNamespace &clone)
 PluginsNamespace (string name)
virtual int postLoad (Server *server, XmlParser *languageFile)
virtual int preLoad (Server *server, XmlParser *languageFile, string &resource)=0
virtual void removePlugin (string &name)
virtual int unLoad (XmlParser *languageFile)
virtual ~PluginsNamespace ()

Protected Member Functions

void setName (string &name)

Protected Attributes

HashMap< string, Plugin * > plugins
HashMap< string, PluginOption * > pluginsOptions

Private Attributes

bool loaded
string name

Constructor & Destructor Documentation

PluginsNamespace::PluginsNamespace string  name  ) 
 

Constructor for the class.

Parameters:
name A name for the namespace.

PluginsNamespace::PluginsNamespace string &  name,
PluginsNamespace clone
 

Constructor for the class.

Parameters:
name A name for the namespace.
clone Another namespace to copy plugins from. A plugin can exist only in a namespace at once, this constructor will clean up automatically the clone namespace.

PluginsNamespace::~PluginsNamespace  )  [virtual]
 

Destroy the object.


Member Function Documentation

int PluginsNamespace::addPluginOption string &  plugin,
PluginOption po
[virtual]
 

Add a plugin option structure to the namespace.

Parameters:
plugin The plugin name.
po The options for the plugin.

int PluginsNamespace::addPreloadedPlugin Plugin plugin  )  [virtual]
 

Add a plugin that is already preloaded to the namespace.

Parameters:
plugin The plugin to add.

HashMap<string, Plugin*>::Iterator PluginsNamespace::begin  ) 
 

HashMap<string, Plugin*>::Iterator PluginsNamespace::end  ) 
 

string & PluginsNamespace::getName  ) 
 

Get the namespace name.

Plugin * PluginsNamespace::getPlugin string &  name  ) 
 

Get a plugin by its name.

Parameters:
name The plugin name.

Reimplemented in DynExecutorManager, DynamicFiltersManager, DynHttpCommandManager, DynHttpManagerList, and ProtocolsManager.

PluginsNamespace::PluginOption * PluginsNamespace::getPluginOption string &  plugin  )  [virtual]
 

Remove a plugin from the namespace without clean it.

Parameters:
name The plugin to remove.

bool PluginsNamespace::isLoaded  ) 
 

virtual int PluginsNamespace::load Server server,
XmlParser languageFile,
string &  resource
[pure virtual]
 

Implemented in PluginsNamespaceManager.

int PluginsNamespace::postLoad Server server,
XmlParser languageFile
[virtual]
 

Post load sequence, called when all the plugins are loaded.

Parameters:
server The server object to use.
languageFile The language file to use to retrieve warnings/errors messages.

virtual int PluginsNamespace::preLoad Server server,
XmlParser languageFile,
string &  resource
[pure virtual]
 

Implemented in PluginsNamespaceManager.

void PluginsNamespace::removePlugin string &  name  )  [virtual]
 

Remove a plugin from the namespace without clean it.

Parameters:
name The plugin to remove.

void PluginsNamespace::setName string &  name  )  [protected]
 

Set a name for the namespace.

Parameters:
name The new name for the namespace.

int PluginsNamespace::unLoad XmlParser languageFile  )  [virtual]
 

Unload the namespace.

Parameters:
languageFile The language file to use to retrieve warnings/errors messages.

Reimplemented in ProtocolsManager.


Member Data Documentation

bool PluginsNamespace::loaded [private]
 

string PluginsNamespace::name [private]
 

HashMap<string, Plugin*> PluginsNamespace::plugins [protected]
 

HashMap<string, PluginOption*> PluginsNamespace::pluginsOptions [protected]
 


Generated on Thu May 1 12:41:04 2008 for MyServer by  doxygen 1.3.9.1