[CPPSERV] [Documentation] [Download] [Contact] [Bug tracker] [News] [RSS Feed] [gitweb]
Public Types | |
typedef std::list< ConfigNode > | cfgparamlist_t |
typedef std::map< std::string, cfgparamlist_t > | params_t |
typedef std::list< Context * > | ctxlist_t |
typedef std::map< std::string, UnsetParam > | unsetparams_t |
Public Member Functions | |
Context (ServerConfig &cfg, Context *parent) | |
virtual | ~Context () |
bool | complete () |
const cfgparamlist_t * | getParam (const std::string &type) const |
bool | setParam (const ConfigNode &) |
const std::string & | getName () const |
const std::string & | getType () const |
ServerConfig & | getServerConfig () |
bool | process (ServerConfig &, ServerConfig::ConfigNode *) |
void | addChildContext (Context *ctx) |
bool | setIgnore (const ServerConfig::ConfigNode &) |
Context * | getParent () |
Protected Member Functions | |
virtual bool | onPreComplete () |
virtual bool | onPostComplete () |
virtual bool | onSetParam (const ConfigNode &val)=0 |
virtual Context * | getContext (const ConfigNode &)=0 |
unsetparams_t & | getUnsetParams () |
Private Attributes | |
ctxlist_t | kids |
params_t | params |
std::string | type |
std::string | name |
Context * | parent |
unsetparams_t | unsetParams |
ServerConfig & | m_cfg |
Classes | |
class | UnsetParam |
Definition at line 139 of file serverconfig.h.
typedef std::list<ConfigNode> container::ServerConfig::Context::cfgparamlist_t |
Definition at line 150 of file serverconfig.h.
typedef std::map<std::string,cfgparamlist_t> container::ServerConfig::Context::params_t |
Definition at line 151 of file serverconfig.h.
typedef std::list<Context*> container::ServerConfig::Context::ctxlist_t |
Definition at line 152 of file serverconfig.h.
typedef std::map<std::string,UnsetParam> container::ServerConfig::Context::unsetparams_t |
Definition at line 153 of file serverconfig.h.
container::ServerConfig::Context::Context | ( | ServerConfig & | cfg, | |
Context * | parent | |||
) | [inline] |
Definition at line 184 of file serverconfig.h.
container::ServerConfig::Context::~Context | ( | ) | [virtual] |
container::ServerConfig::Context::onPreComplete | ( | ) | [inline, protected, virtual] |
called before child contexts' complete()
Reimplemented in container::ServerConfig::AppContext.
Definition at line 167 of file serverconfig.h.
Referenced by complete().
container::ServerConfig::Context::onPostComplete | ( | ) | [inline, protected, virtual] |
called after child contexts' complete()
Reimplemented in container::ServerConfig::GlobalContext, container::ServerConfig::AppContext, and container::ServerConfig::ServletContext.
Definition at line 172 of file serverconfig.h.
Referenced by complete().
virtual bool container::ServerConfig::Context::onSetParam | ( | const ConfigNode & | val | ) | [protected, pure virtual] |
Implemented in container::ServerConfig::GlobalContext, container::ServerConfig::AppContext, and container::ServerConfig::ServletContext.
Referenced by setParam().
Context * container::ServerConfig::Context::getContext | ( | const ConfigNode & | node | ) | [protected, pure virtual] |
node | Finds context for node with the name. Derived classes should override this function to search in their own context registries. |
Implemented in container::ServerConfig::GlobalContext, container::ServerConfig::AppContext, and container::ServerConfig::ServletContext.
Referenced by process().
unsetparams_t& container::ServerConfig::Context::getUnsetParams | ( | ) | [inline, protected] |
Definition at line 182 of file serverconfig.h.
References unsetParams.
Referenced by container::ServerConfig::AppContext::AppContext(), complete(), container::ServerConfig::GlobalContext::GlobalContext(), container::ServerConfig::ServletContext::ServletContext(), and setParam().
bool container::ServerConfig::Context::complete | ( | ) |
Definition at line 136 of file serverconfig.cpp.
References getParam(), getUnsetParams(), kids, onPostComplete(), onPreComplete(), params, parent, setParam(), and unsetParams.
Referenced by container::ServerConfig::processConfig().
Here is the call graph for this function:
const ServerConfig::Context::cfgparamlist_t * container::ServerConfig::Context::getParam | ( | const std::string & | type | ) | const |
bool container::ServerConfig::Context::setParam | ( | const ConfigNode & | node | ) |
node | Config node describing parameter to set in the current context |
Definition at line 110 of file serverconfig.cpp.
References container::ServerConfig::ConfigNode::getName(), container::ServerConfig::ConfigNode::getType(), getUnsetParams(), onSetParam(), params, and unsetParams.
Referenced by complete(), process(), and container::ServerConfig::GlobalContext::setGlobalParam().
Here is the call graph for this function:
const std::string& container::ServerConfig::Context::getName | ( | ) | const [inline] |
Definition at line 192 of file serverconfig.h.
References name.
Referenced by container::ServerConfig::CSPContext::getServletName(), container::ServerConfig::ServletContext::getServletName(), container::ServerConfig::ServletContext::onPostComplete(), container::ServerConfig::AppContext::onPreComplete(), and process().
const std::string& container::ServerConfig::Context::getType | ( | ) | const [inline] |
ServerConfig& container::ServerConfig::Context::getServerConfig | ( | ) | [inline] |
Definition at line 194 of file serverconfig.h.
References m_cfg.
Referenced by container::ServerConfig::AppContext::onPreComplete().
bool container::ServerConfig::Context::process | ( | ServerConfig & | cfg, | |
ServerConfig::ConfigNode * | node | |||
) |
Walk the config tree and, create all contexts, and set all parameters that are specified in config. container::ServerConfig::Context::complete() will pass inheritable parameters and verify all required ones are set
Definition at line 73 of file serverconfig.cpp.
References addChildContext(), getContext(), getName(), container::ServerConfig::ConfigNode::getName(), container::ServerConfig::getNodes(), getType(), container::ServerConfig::ConfigNode::getType(), kids, name, setParam(), and type.
Referenced by container::ServerConfig::processConfig().
Here is the call graph for this function:
void container::ServerConfig::Context::addChildContext | ( | Context * | ctx | ) |
container::ServerConfig::Context::setIgnore | ( | const ServerConfig::ConfigNode & | ) | [inline] |
This function can be used for registering params that do nothing in current context, but can be inherited by child contexts
Definition at line 210 of file serverconfig.h.
Referenced by container::ServerConfig::GlobalContext::registerParams().
container::ServerConfig::Context::getParent | ( | ) | [inline] |
Definition at line 216 of file serverconfig.h.
References parent.
Referenced by container::ServerConfig::AppContext::getGlobalContext(), and container::ServerConfig::ServletContext::onPostComplete().
Definition at line 155 of file serverconfig.h.
Referenced by addChildContext(), complete(), process(), and ~Context().
Reimplemented in container::ServerConfig::AppContext, and container::ServerConfig::ServletContext.
Definition at line 156 of file serverconfig.h.
Referenced by complete(), getParam(), and setParam().
std::string container::ServerConfig::Context::type [private] |
std::string container::ServerConfig::Context::name [private] |
Definition at line 158 of file serverconfig.h.
Referenced by container::ServerConfig::ServletContext::addInitParam(), container::ServerConfig::AppContext::addInitParam(), getName(), container::ServerConfig::CSPContext::getServletName(), and process().
Context* container::ServerConfig::Context::parent [private] |
Definition at line 159 of file serverconfig.h.
Referenced by complete(), container::ServerConfig::CSPContext::contextCreator(), container::ServerConfig::ServletContext::contextCreator(), container::ServerConfig::AppContext::contextCreator(), and getParent().
Definition at line 160 of file serverconfig.h.
Referenced by complete(), getUnsetParams(), and setParam().