Sha256: bb1c8d7aa9bb23a698dd82894cf10818912e6d25f8c09dd5689ac6f1ec6abfa9

Contents?: true

Size: 1.64 KB

Versions: 19

Compression:

Stored size: 1.64 KB

Contents

require 'timeout'
require 'protobuf/logger'
require 'protobuf/rpc/rpc.pb'
require 'protobuf/rpc/buffer'
require 'protobuf/rpc/error'
require 'protobuf/rpc/stat'
require 'protobuf/rpc/connectors/common'

module Protobuf
  module Rpc
    module Connectors
      DEFAULT_OPTIONS = {
        :service        => nil,           # Fully-qualified Service class
        :method         => nil,           # Service method to invoke
        :host           => '127.0.0.1',   # The hostname or address of the service (usually overridden or pre-configured)
        :port           => '9399',        # The port of the service (usually overridden or pre-configured)
        :request        => nil,           # The request object sent by the client
        :request_type   => nil,           # The request type expected by the client
        :response_type  => nil,           # The response type expected by the client
        :timeout        => 300,           # The default timeout for the request, also handled by client.rb
        :client_host    => nil            # The hostname or address of this client
      }

      class Base
        include Protobuf::Logger::LogMethods

        attr_reader :options
        attr_accessor :success_cb, :failure_cb, :complete_cb

        def initialize(options)
          @options = DEFAULT_OPTIONS.merge(options)
        end

        def send_request
          raise 'If you inherit a Connector from Base you must implement send_request'
        end

        def ping_port
          @ping_port ||= ENV["PB_RPC_PING_PORT"]
        end

        def ping_port_enabled?
          ENV.has_key?("PB_RPC_PING_PORT")
        end
      end
    end
  end
end

Version data entries

19 entries across 19 versions & 1 rubygems

Version Path
protobuf-2.8.13 lib/protobuf/rpc/connectors/base.rb
protobuf-3.0.0.rc1 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.12 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.11 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.10 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.9 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.8 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.7 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.6 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.5 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.4 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.3 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.2 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.1 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.0 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.0.beta9-java lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.0.beta9 lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.0.beta8-java lib/protobuf/rpc/connectors/base.rb
protobuf-2.8.0.beta8 lib/protobuf/rpc/connectors/base.rb