Sha256: 1e42188630b66edcd962d5858bc4d84f94e854226c943cb59a9709f09d23db5c

Contents?: true

Size: 1.26 KB

Versions: 24

Compression:

Stored size: 1.26 KB

Contents

require 'toq'
require_relative '../serializer'

module Cuboid
module RPC
class Client

# @author Tasos "Zapotek" Laskos <tasos.laskos@gmail.com>
class Base < Toq::Client
    attr_reader :url

    # @param    [String]    url
    #   Server URL in `address:port` format.
    # @param    [String]    token
    #   Optional authentication token.
    # @param    [Hash]   options
    # @option options [Integer]  :connection_pool_size
    # @option options [Integer]  :max_retries
    # @option options [Integer]  :ssl_ca
    # @option options [Integer]  :ssl_pkey
    # @option options [Integer]  :ssl_cert
    def initialize( url, token = nil, options = nil )
        @url = url

        socket, host, port = nil
        if url.include? ':'
            host, port = url.split( ':' )
        else
            socket = url
        end

        @address = host
        @port    = port

        # If given nil use the global defaults.
        options ||= Options.rpc.to_client_options

        super( options.merge(
            serializer: Serializer,
            host:       host,
            port:       port.to_i,
            socket:     socket,
            token:      token
        ))
    end

    def address
        @address
    end

    def port
        @port
    end

end
end
end
end

Version data entries

24 entries across 24 versions & 1 rubygems

Version Path
cuboid-0.2.13 lib/cuboid/rpc/client/base.rb
cuboid-0.2.12 lib/cuboid/rpc/client/base.rb
cuboid-0.2.11 lib/cuboid/rpc/client/base.rb
cuboid-0.2.10 lib/cuboid/rpc/client/base.rb
cuboid-0.2.9 lib/cuboid/rpc/client/base.rb
cuboid-0.2.8 lib/cuboid/rpc/client/base.rb
cuboid-0.2.7 lib/cuboid/rpc/client/base.rb
cuboid-0.2.6 lib/cuboid/rpc/client/base.rb
cuboid-0.2.5 lib/cuboid/rpc/client/base.rb
cuboid-0.2.4.2 lib/cuboid/rpc/client/base.rb
cuboid-0.2.4.1 lib/cuboid/rpc/client/base.rb
cuboid-0.2.4 lib/cuboid/rpc/client/base.rb
cuboid-0.2.3 lib/cuboid/rpc/client/base.rb
cuboid-0.2.2 lib/cuboid/rpc/client/base.rb
cuboid-0.2.1 lib/cuboid/rpc/client/base.rb
cuboid-0.2 lib/cuboid/rpc/client/base.rb
cuboid-0.1.9.1 lib/cuboid/rpc/client/base.rb
cuboid-0.1.9 lib/cuboid/rpc/client/base.rb
cuboid-0.1.8 lib/cuboid/rpc/client/base.rb
cuboid-0.1.7 lib/cuboid/rpc/client/base.rb