module Kazoo::CLI::Common

Public Class Methods

included(base) click to toggle source
# File lib/kazoo/cli/common.rb, line 4
def self.included(base)
  base.class_option :zookeeper, type: :string, default: ENV['ZOOKEEPER']
end

Private Instance Methods

broker(name_or_id) click to toggle source
# File lib/kazoo/cli/common.rb, line 16
def broker(name_or_id)
  broker = if name_or_id =~ /\A\d+\z/
    kafka_cluster.brokers[name_or_id.to_i]
  else
    kafka_cluster.brokers.values.detect { |b| b.addr == name_or_id } || kafka_cluster.brokers.values.detect { |b| b.host == name_or_id }
  end

  raise Thor::InvocationError, "Broker #{name_or_id.inspect} not found!" if broker.nil?
  broker
end
kafka_cluster() click to toggle source
# File lib/kazoo/cli/common.rb, line 27
def kafka_cluster
  @kafka_cluster ||= Kazoo::Cluster.new(options[:zookeeper])
end
validate_class_options!() click to toggle source
# File lib/kazoo/cli/common.rb, line 10
def validate_class_options!
  if options[:zookeeper].nil? || options[:zookeeper] == ''
    raise Thor::InvocationError, "Please supply --zookeeper argument, or set the ZOOKEEPER environment variable"
  end
end