Mercurial > malikania
annotate server/main.cpp @ 92:4031eda60e11
Misc: switch to JSON, #650
author | David Demelier <markand@malikania.fr> |
---|---|
date | Wed, 07 Jun 2017 20:44:37 +0200 |
parents | d458af0b7748 |
children | 51dd7a4914ec |
rev | line source |
---|---|
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
1 /* |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
2 * main.cpp -- main server executable file |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
3 * |
76 | 4 * Copyright (c) 2013-2017 Malikania Authors |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
5 * |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
6 * Permission to use, copy, modify, and/or distribute this software for any |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
7 * purpose with or without fee is hereby granted, provided that the above |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
8 * copyright notice and this permission notice appear in all copies. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
9 * |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
10 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
11 * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
12 * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
13 * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
14 * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
15 * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
16 * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
17 */ |
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
18 |
46
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
19 #include <iostream> |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
20 |
92
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
21 #include <malikania/server/database.hpp> |
83
d458af0b7748
Server: namespace and hierarchy
David Demelier <markand@malikania.fr>
parents:
76
diff
changeset
|
22 #include <malikania/server/server.hpp> |
46
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
23 |
42
a47a4477f347
Misc: new style, closes #578
David Demelier <markand@malikania.fr>
parents:
33
diff
changeset
|
24 int main() |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
25 { |
92
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
26 mlk::server::settings sv_params{ |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
27 3320, |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
28 "/home/markand/null/server.crt", |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
29 "/home/markand/null/server.key", |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
30 }; |
46
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
31 |
92
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
32 mlk::server::database db({ |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
33 { "type", "sqlite" }, |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
34 { "path", "/home/markand/kingdom.db" } |
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
35 }); |
46
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
36 |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
37 boost::asio::io_service service; |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
38 |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
39 try { |
92
4031eda60e11
Misc: switch to JSON, #650
David Demelier <markand@malikania.fr>
parents:
83
diff
changeset
|
40 mlk::server::server server(service, db, sv_params); |
46
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
41 |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
42 for (;;) { |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
43 service.run(); |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
44 } |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
45 } catch (const std::exception& ex) { |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
46 std::cerr << "fatal: " << ex.what() << std::endl; |
b0593a3e2ca8
Server: use Boost.Asio and add basic authentication support
David Demelier <markand@malikania.fr>
parents:
42
diff
changeset
|
47 } |
33
d4f5f7231b84
Misc: switch to .hpp, dos2unix everything while here, #478
David Demelier <markand@malikania.fr>
parents:
30
diff
changeset
|
48 } |