## 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.
|
|