Sha256: ab6d2c55afc7e3883583b8841ad22552f2312a9e697b87b5ee5f611a99edbb69

Contents?: true

Size: 719 Bytes

Versions: 1

Compression:

Stored size: 719 Bytes

Contents

require 'cellect'

module Cellect
  module Client
    require 'cellect/client/node_set'
    require 'cellect/client/connection'
    
    class << self
      attr_accessor :connection, :_node_set
    end
    
    def self.node_set(zk_url=nil)
      self._node_set ||= NodeSet.supervise(zk_url)
      _node_set.actors.first
    end
    
    def self.ready?
      node_set.ready?
    end
    
    def self.choose_host
      node_set.nodes.values.sample
    end
    
    def self.mock_zookeeper?
      false
    end
    
    if defined?(::Rails)
      require 'cellect/client/railtie'
    else
      Client.node_set
      Client.connection = Connection.pool size: ENV.fetch('CELLECT_POOL_SIZE', 100).to_i
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
cellect-client-0.0.5 lib/cellect/client.rb