+ switch(ret)
+ {
+ case -1:
+ std::cerr << "bad option " << arg << std::endl;
+ case 'h':
+ std::cerr << "ex_filter_frontend_net\n"
+ " -h|--help help\n"
+ " -d|--duration n duration\n"
+ " -p|--port n port number\n"
+ << std::endl;
+ break;
+ case 'p':
+ ports.push_back(arg);
+ break;
+ case 'd':
+ duration = atoi(arg);
+ break;
+ }
+ }
+ {
+ for (size_t i = 0; i<ports.size(); i++)
+ std::cout << "port " << i << " " << ports[i] << "\n";
+
+ mp::RouterChain router;
+
+ // put frontend filter in router
+ mp::filter::FrontendNet filter_front;
+ filter_front.set_ports(ports);
+
+ // 0=no time, >0 timeout in seconds
+ if (duration != -1)
+ filter_front.set_listen_duration(duration);
+
+ router.append(filter_front);
+
+ // put log filter in router
+ mp::filter::Log filter_log_front("FRONT");
+ router.append(filter_log_front);
+
+ // put Virt db filter in router
+ mp::filter::VirtualDB filter_virt_db;
+ filter_virt_db.add_map_db2target("gils", "indexdata.dk/gils",
+ "");
+ filter_virt_db.add_map_db2target("Default", "localhost:9999/Default",
+ "");
+ filter_virt_db.add_map_db2target("2", "localhost:9999/Slow", "");
+ router.append(filter_virt_db);
+
+ mp::filter::SessionShared filter_session_shared;
+ //router.append(filter_session_shared);
+
+ mp::filter::Log filter_log_back("BACK");
+ router.append(filter_log_back);