Module: AggregateStreams

Defined in:
lib/aggregate_streams/store.rb,
lib/aggregate_streams/handle.rb,
lib/aggregate_streams/consumer.rb,
lib/aggregate_streams/projection.rb,
lib/aggregate_streams/aggregation.rb,
lib/aggregate_streams/controls/store.rb,
lib/aggregate_streams/position_store.rb,
lib/aggregate_streams/controls/handler.rb,
lib/aggregate_streams/aggregate_streams.rb,
lib/aggregate_streams/controls/category.rb,
lib/aggregate_streams/controls/position.rb,
lib/aggregate_streams/controls/aggregation.rb,
lib/aggregate_streams/controls/stream_name.rb,
lib/aggregate_streams/controls/message_data.rb,
lib/aggregate_streams/controls/message_data/metadata.rb

Defined Under Namespace

Modules: Controls Classes: Aggregation, Consumer, Handle, PositionStore, Projection, Store

Class Method Summary collapse

Class Method Details

.start(input_categories, output_category, writer_session: nil, snapshot_interval: nil, **consumer_args, &transform_action) ⇒ Object



2
3
4
5
6
7
8
9
10
11
12
13
# File 'lib/aggregate_streams/aggregate_streams.rb', line 2

def self.start(input_categories, output_category, writer_session: nil, snapshot_interval: nil, **consumer_args, &transform_action)
  settings = {
    :category => output_category,
    :writer_session => writer_session,
    :snapshot_interval => snapshot_interval,
    :transform_action => transform_action
  }

  input_categories.each do |input_category|
    Consumer.start(input_category, output_category: output_category, supplemental_settings: settings, **consumer_args)
  end
end