Class: Karafka::Pro::Cli::ParallelSegments

Inherits:
Cli::Base
  • Object
show all
Includes:
Helpers::Colorize
Defined in:
lib/karafka/pro/cli/parallel_segments.rb,
lib/karafka/pro/cli/parallel_segments/base.rb,
lib/karafka/pro/cli/parallel_segments/collapse.rb,
lib/karafka/pro/cli/parallel_segments/distribute.rb

Overview

CLI entry-point for parallel segments management commands

Defined Under Namespace

Classes: Base, Collapse, Distribute

Instance Attribute Summary

Attributes inherited from Cli::Base

#options

Instance Method Summary collapse

Methods included from Helpers::Colorize

#green, #grey, #red, #yellow

Methods inherited from Cli::Base

aliases, commands, desc, #initialize, load, name, names, option, parse_options

Constructor Details

This class inherits a constructor from Karafka::Cli::Base

Instance Method Details

#call(action = 'distribute') ⇒ Object

Parameters:

  • action (String) (defaults to: 'distribute')

    action we want to take



44
45
46
47
48
49
50
51
52
53
54
55
56
# File 'lib/karafka/pro/cli/parallel_segments.rb', line 44

def call(action = 'distribute')
  case action
  when 'distribute'
    Distribute.new(options).call
  when 'collapse'
    Collapse.new(options).call
  when 'reset'
    Collapse.new(options).call
    Distribute.new(options).call
  else
    raise ::ArgumentError, "Invalid topics action: #{action}"
  end
end