Module: Micro::Cases

Defined in:
lib/micro/cases.rb,
lib/micro/cases/map.rb,
lib/micro/cases/flow.rb,
lib/micro/cases/error.rb,
lib/micro/cases/utils.rb,
lib/micro/cases/safe/flow.rb

Defined Under Namespace

Modules: Error, Safe, Utils Classes: Flow, Map

Class Method Summary collapse

Class Method Details

.flow(args = nil, transaction: nil, steps: nil) ⇒ Object



11
12
13
14
15
16
17
# File 'lib/micro/cases.rb', line 11

def self.flow(args = nil, transaction: nil, steps: nil)
  args = nil if args.is_a?(Array) && args.empty?

  ::Micro::Case.check.flow_steps_kwarg!(args, steps, 'Micro::Cases.flow')

  Flow.build(steps || args, transaction: transaction)
end

.map(args) ⇒ Object



31
32
33
# File 'lib/micro/cases.rb', line 31

def self.map(args)
  Map.build(args)
end

.safe_flow(args = nil, transaction: nil, steps: nil) ⇒ Object



19
20
21
22
23
24
25
26
27
28
29
# File 'lib/micro/cases.rb', line 19

def self.safe_flow(args = nil, transaction: nil, steps: nil)
  if Case::Config.instance.disable_safe_features
    raise Case::Error::SafeFeaturesDisabled.new('Micro::Cases.safe_flow')
  end

  args = nil if args.is_a?(Array) && args.empty?

  ::Micro::Case.check.flow_steps_kwarg!(args, steps, 'Micro::Cases.safe_flow')

  Safe::Flow.build(steps || args, transaction: transaction)
end