def call(srv_request, srv_response)
      if @persistent and @connection
        # not connect
      else
        master = XMLRPC::Client.new2(@master_uri)
        code, message, uri = master.call('lookupService',
                                         @caller_id,
                                         @service_name)
        case code
        when 1
          host, port = get_host_port_from_uri(uri)
          @connection = TCPROS::ServiceClient.new(host, port, @caller_id, @service_name, @service_type, @persistent)
          return @connection.call(srv_request, srv_response)
        when -1
          raise "master error ${message}"
        else
          puts "fail to lookup"
          nil
        end
      end
    end
def call(srv_request, srv_response)
      if @persistent and @connection
        # not connect
      else
        master = XMLRPC::Client.new2(@master_uri)
        code, message, uri = master.call('lookupService',
                                         @caller_id,
                                         @service_name)
        case code
        when 1
          host, port = get_host_port_from_uri(uri)
          @connection = TCPROS::ServiceClient.new(host, port, @caller_id, @service_name, @service_type, @persistent)
          return @connection.call(srv_request, srv_response)
        when -1
          raise "master error ${message}"
        else
          puts "fail to lookup"
          nil
        end
      end
    end
call service
 @param [Message] srv_request srv Request instance
 @param [Message] srv_response srv Response instance
 @return [Boolean] result of call