## Role |
|
This is central class of any CppCMS application. It is responsible on starting up all required services, setting up worker model and running application. |
|
## Constructors |
|
manager(); |
manager(char const *file); |
manager(int argc, char **argv); |
manager(int argc, char **argv,char const *file); |
|
Create `cppcms::manager` with configuration that can be taken from file, from command line parameters. If no parameter given configuration may be loaded later. |
Create `cppcms::manager` with configuration that can be taken from file, from command line parameters. If no file |
in command line parameters is given and environment variable |
`CPPCMS_CONFIG` is not defined, default configuration |
file can be specified as third parameter: |
|
manager app(argc,argv,"/etc/myapp_config.txt"); |
|
## Public members: |
|
All access to configuration facilities of CppCMS application |
are done though `config` member of `manager` class: |
|
cppcms_config config; |
|
See [`cppcms::cppcms_config`](/wikipp/en/page/ref_cppcms_cppcms_config) for reference. |
|
## Public member functions |
|
### set\_worker() |
|
void set_worker(base_factory *w); |
|
Setups new factory of "worker" applications. This pointer would be freed when manager is destroyed. |
|
`cppcms::base_factory` usually build using template class: |
|
template<typename T> |
cppcms::application_factory; |
|
For example: |
|
manager app(argc,argv); |
app.set_worker(new application_factory<hello_world>()); |
|
If standard simple factory does not satisfy your needs you may create your own factory class. you should derive it from: |
|
namespace cppcms { |
class base_factory { |
public: |
virtual shared_ptr<worker_thread> operator()(manager const &cf) const = 0; |
virtual ~base_factory() {}; |
}; |
} |
|
Where `operator()(manager const &)` should return `boost::shared_ptr` to newly create `worker_thread` class. |
|
See [`worker_thread` and `application`](/wikipp/en/page/ref_cppcms_application) for further explanations. |
|
### execute() |
|
Main application loop is started by calling: |
|
void execute(); |
|
## Auxiliary member functions for advanced users: |
|
There are additional functions for advanced users who want to reimplement standard modules of CppCMS. |
|
void set_cache(cache_factory *c); |
void set_api(cgi_api *a); |
void set_mod(web_application *m); |
void set_gettext(transtext::trans_factory *); |
void set_sessions(session_backend_factory); |
|
Relate to documentation of CppCMS internals for usage. |
|