public:
typedef boost::shared_ptr<boost::mutex> mutex_ptr;
protected:
- int nactive;
- int ninact;
mutex_ptr active_mutex_ptr;
mutex_ptr inact_mutex_ptr;
public:
unsigned long long send_byte;
- realserver() : nactive(0), ninact(0), send_byte(0LL){
+ realserver() : send_byte(0LL){
active_mutex_ptr = mutex_ptr( new boost::mutex );
inact_mutex_ptr = mutex_ptr( new boost::mutex );
}
realserver( const realserver& in ) : realserver_element( in ),
- nactive( in.nactive ),
- ninact( in.ninact ),
send_byte( in.send_byte ){
active_mutex_ptr = mutex_ptr( new boost::mutex );
inact_mutex_ptr = mutex_ptr( new boost::mutex );
realserver& operator=( const realserver& rs ){
realserver_element::operator= (rs);
- nactive = rs.nactive;
- ninact = rs.ninact;
send_byte = rs.send_byte;
return *this;
}
ninact = 0;
}
}
-
- int get_active(){
- return nactive;
- }
-
- int get_inact(){
- return ninact;
- }
};
namespace l7vs{
class realserver_element{
+protected:
+ int nactive;
+ int ninact;
public:
boost::asio::ip::tcp::endpoint tcp_endpoint;
boost::asio::ip::udp::endpoint udp_endpoint;
int weight;
- realserver_element() : weight(-1){}
- realserver_element( const realserver_element& in ) : tcp_endpoint( in.tcp_endpoint ) ,
- udp_endpoint( in.udp_endpoint ) ,
- weight( in.weight ){}
+ realserver_element() : nactive(0), ninact(0), weight(-1){}
+ realserver_element( const realserver_element& in ) : nactive( in.nactive ), ninact( in.ninact ),
+ tcp_endpoint( in.tcp_endpoint ) ,
+ udp_endpoint( in.udp_endpoint ) ,
+ weight( in.weight ){}
realserver_element& operator=( const realserver_element& elem ){
+ nactive = elem.nactive;
+ ninact = elem.ninact;
tcp_endpoint = elem.tcp_endpoint;
udp_endpoint = elem.udp_endpoint;
weight = elem.weight;
return rselem1.weight < rselem2.weight;
}
+ int get_active(){
+ return nactive;
+ }
+
+ int get_inact(){
+ return ninact;
+ }
+
private:
friend class boost::serialization::access; //! friend boost serializable class
//! serializable
//! @param[in] archive
//! @param[in] version
template <class Archive > void serialize( Archive& ar, const unsigned int version ){
+ ar & nactive;
+ ar & ninact;
ar & tcp_endpoint;
ar & udp_endpoint;
ar & weight;