2 //! @file virtualservice.cpp
3 //! @brief VirtualService class implementations
5 // copyright (c) sdy corporation. 2008
6 // mail: h dot okada at sdy dot co dot jp
8 // Distributed under the Boost Software License, Version 1.0.(See accompanying
9 // file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt
15 #include <boost/date_time/posix_time/posix_time.hpp>
16 #include <boost/bind.hpp>
17 #include <boost/lexical_cast.hpp>
19 #include "virtualservice.h"
20 #include "logger_enum.h"
22 #include "parameter.h"
24 #define BPS_DEFAULT_INTERVAL_USEC 500000ULL
26 // imprementation for virtualservice_tcp
27 l7vs::virtualservice_tcp::virtualservice_tcp( const l7vsd& invsd,
28 const replication& inrep,
29 const virtualservice_element& inelement )
30 : virtualservice_base( invsd, inrep, inelement ),
31 acceptor_( dispatcher ) {}
33 l7vs::virtualservice_tcp::~virtualservice_tcp(){
36 void l7vs::virtualservice_tcp::handle_replication_interrupt( const boost::system::error_code& in ){
39 void l7vs::virtualservice_tcp::read_replicationdata(){
42 void l7vs::virtualservice_tcp::handle_accept( const l7vs::session_thread_control* stc_ptr, const boost::system::error_code& err ){
45 void l7vs::virtualservice_tcp::initialize( l7vs::error_code& err ){
46 err.setter( false, "" );
49 void l7vs::virtualservice_tcp::finalize( l7vs::error_code& err ){
50 err.setter( false, "" );
53 bool l7vs::virtualservice_tcp::operator==( const l7vs::virtualservice_base& in ){
57 bool l7vs::virtualservice_tcp::operator!=( const l7vs::virtualservice_base& in ){
61 void l7vs::virtualservice_tcp::set_virtualservice( const l7vs::virtualservice_element& in, l7vs::error_code& err ){
62 err.setter( false, "" );
65 void l7vs::virtualservice_tcp::edit_virtualservice( const l7vs::virtualservice_element& in, l7vs::error_code& err ){
66 err.setter( false, "" );
69 void l7vs::virtualservice_tcp::add_realserver( const l7vs::virtualservice_element& in, l7vs::error_code& err ){
70 err.setter( false, "" );
73 void l7vs::virtualservice_tcp::edit_realserver( const l7vs::virtualservice_element& in, l7vs::error_code& err ){
74 err.setter( false, "" );
77 void l7vs::virtualservice_tcp::del_realserver( const l7vs::virtualservice_element& in, l7vs::error_code& err ){
78 err.setter( false, "" );
81 void l7vs::virtualservice_tcp::run(){
84 void l7vs::virtualservice_tcp::stop(){
87 void l7vs::virtualservice_tcp::connection_active( const boost::asio::ip::tcp::endpoint& in ){
90 void l7vs::virtualservice_tcp::connection_inactive( const boost::asio::ip::tcp::endpoint& in ){
93 void l7vs::virtualservice_tcp::release_session( const tcp_session* session_ptr ){