Class: FFWD::Plugin::Kafka::Setup

Inherits:
Object
  • Object
show all
Defined in:
lib/ffwd/plugin/kafka.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ Setup

Returns a new instance of Setup.



64
65
66
67
68
69
70
71
# File 'lib/ffwd/plugin/kafka.rb', line 64

def initialize config
  @config = Output.prepare Hash[config]
  @config = FFWD.prepare_schema @config
  @config[:partitioner] = FFWD::Plugin::Kafka.prepare_partitioner(
    @config[:partitioner] || {})
  @config[:router] = FFWD::Plugin::Kafka.prepare_router(
    @config[:router] || {})
end

Instance Attribute Details

#configObject (readonly)

Returns the value of attribute config.



62
63
64
# File 'lib/ffwd/plugin/kafka.rb', line 62

def config
  @config
end

Instance Method Details

#connect(core) ⇒ Object



73
74
75
76
77
78
79
# File 'lib/ffwd/plugin/kafka.rb', line 73

def connect core
  partitioner = FFWD::Plugin::Kafka.build_partitioner @config[:partitioner]
  router = FFWD::Plugin::Kafka.build_router @config[:router]
  schema = FFWD.parse_schema @config
  output = Output.new schema, router, partitioner, @config
  FFWD.producing_client core.output, output, @config
end