class StructuredNoise::Options

Attributes

base64[RW]
messages_per_second[RW]
parser[R]
schema[RW]

Public Class Methods

new(scriptname, args) click to toggle source
# File lib/structured_noise/options.rb, line 8
def initialize(scriptname, args)
  @base64 = false
  @parser = build_parser(scriptname)
  @parser.parse!(args)
end

Private Instance Methods

build_parser(scriptname) click to toggle source
# File lib/structured_noise/options.rb, line 16
def build_parser(scriptname)
  this = self
  OptionParser.new do |opt|
    opt.banner = "Usage: #{scriptname} [OPTIONS]"
    opt.separator ""
    opt.separator "Options:"

    opt.on("--schema SCHEMA", "avro schema (.avsc) file to load") do |schema_file|
      this.schema = schema_file
    end

    opt.on("--base64", "encode output as base64") do |b64|
      this.base64 = true
    end

    opt.on("--messages-per-second SECONDS", "how many messages to send per second") do |mps|
      this.messages_per_second = mps.to_f
    end
  end
end