virtual bool operator==( const virtualservice_base& ) = 0;
virtual bool operator!=( const virtualservice_base& ) = 0;
- virtual void rs_list_lock() = 0;
- virtual void rs_list_unlock() = 0;
+ void rs_list_lock();
+ void rs_list_unlock();
virtual vs_operation_result set_virtualservce( const virtualservice_element& ) = 0;
virtual vs_operation_result edit_virtualservce( const virtualservice_element& ) = 0;
class virtualservice_tcp : public virtualservice_base{
public:
- typedef std::map<boost::thread::id,session_thread_control> session_map_type;
+ typedef std::map<boost::thread::id,boost::shared_ptr<session_thread_control>> session_map_type;
protected:
boost::asio::ip::tcp::acceptor
acceptor_;
bool operator==( const virtualservice_base& );
bool operator!=( const virtualservice_base& );
- void rs_list_lock();
- void rs_list_unlock();
-
vs_operation_result set_virtualservce( const virtualservice_element& );
vs_operation_result edit_virtualservce( const virtualservice_element& );
bool operator==( const virtualservice_base& );
bool operator!=( const virtualservice_base& );
- void rs_list_lock();
- void rs_list_unlock();
-
vs_operation_result set_virtualservce( const virtualservice_element& );
vs_operation_result edit_virtualservce( const virtualservice_element& );
void virtualservice_base::handle_schedmod_replication( const boost::system::error_code& ){}
void virtualservice_base::handle_throughput_update( const boost::system::error_code& ){}
+void virtualservice_base::rs_list_lock(){}
+void virtualservice_base::rs_list_unlock(){}
+
unsigned long long virtualservice_base::get_qos_upstream(){ return element.qos_upstream; }
unsigned long long virtualservice_base::get_qos_downstream(){ return element.qos_downstream; }
unsigned long long virtualservice_base::get_throughput_upstream(){ return throughput_up; }
bool virtualservice_tcp::operator==( const virtualservice_base& in ){ return true; }
bool virtualservice_tcp::operator!=( const virtualservice_base& in ){ return true; }
-void virtualservice_tcp::rs_list_lock(){}
-void virtualservice_tcp::rs_list_unlock(){}
-
vs_operation_result virtualservice_tcp::set_virtualservce( const virtualservice_element& in ){
vs_operation_result ret;
return ret;
bool virtualservice_udp::operator==( const virtualservice_base& in ){ return true; }
bool virtualservice_udp::operator!=( const virtualservice_base& in ){ return true; }
-void virtualservice_udp::rs_list_lock(){}
-void virtualservice_udp::rs_list_unlock(){}
-
vs_operation_result virtualservice_udp::set_virtualservce( const virtualservice_element& in ){
vs_operation_result ret;
return ret;