RTBKit  0.9
Open-source framework to create real-time ad bidding systems.
core/agent_configuration/agent_configuration_service_runner.cc
00001 /* agent_configuration_service_runner.cc
00002    Jeremy Barnes, 18 December 2012
00003    Copyright (c) 2012 Datacratic Inc.  All rights reserved.
00004 
00005    Class to run the configuration service.
00006 */
00007 
00008 #include <boost/program_options/cmdline.hpp>
00009 #include <boost/program_options/options_description.hpp>
00010 #include <boost/program_options/positional_options.hpp>
00011 #include <boost/program_options/parsers.hpp>
00012 #include <boost/program_options/variables_map.hpp>
00013 #include <boost/algorithm/string.hpp>
00014 #include <boost/thread/thread.hpp>
00015 
00016 #include "rtbkit/core/agent_configuration/agent_configuration_service.h"
00017 #include "soa/service/service_utils.h"
00018 #include "jml/utils/pair_utils.h"
00019 #include "jml/arch/timers.h"
00020 #include "jml/arch/futex.h"
00021 
00022 
00023 using namespace std;
00024 using namespace ML;
00025 using namespace Datacratic;
00026 using namespace RTBKIT;
00027 
00028 
00029 int main(int argc, char ** argv)
00030 {
00031     using namespace boost::program_options;
00032 
00033     Datacratic::ServiceProxyArguments args;
00034 
00035     options_description options = args.makeProgramOptions();
00036     options.add_options() ("help,h", "Print this message");
00037     
00038     variables_map vm;
00039     store(command_line_parser(argc, argv).options(options) .run(), vm);
00040     notify(vm);
00041 
00042     if (vm.count("help")) {
00043         cerr << options << endl;
00044         exit(1);
00045     }
00046 
00047     auto proxies = args.makeServiceProxies();
00048 
00049     AgentConfigurationService config(proxies);
00050     config.init();
00051     config.bindTcp();
00052     config.start();
00053 
00054     proxies->config->dump(cerr);
00055 
00056     for (;;) {
00057         ML::sleep(10.0);
00058     }
00059 }
00060 
00061 
 All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator