Module: Foobara::CommandPatternImplementation::Concerns::Transactions

Includes:
Foobara::Concern, NestedTransactionable
Included in:
Foobara::CommandPatternImplementation
Defined in:
foobara-0.0.130/projects/command/src/command_pattern_implementation/concerns/transactions.rb

Instance Method Summary collapse

Methods included from NestedTransactionable

#auto_detect_current_transactions, #commit_transaction, #commit_transaction_if_open, #open_transaction, #opened_transactions, relevant_entity_classes_for_type, #relevant_entity_classes_for_type, #rollback_transaction, #transactions, #use_transaction, with_needed_transactions_for_type

Methods included from Foobara::Concern

foobara_class_methods_module_for, foobara_concern?, included

Instance Method Details

#relevant_entity_classesObject



8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
# File 'foobara-0.0.130/projects/command/src/command_pattern_implementation/concerns/transactions.rb', line 8

def relevant_entity_classes
  return @relevant_entity_classes if defined?(@relevant_entity_classes)

  entity_classes = if inputs_type
                     relevant_entity_classes_for_type(inputs_type)
                   else
                     []
                   end

  if result_type
    entity_classes += relevant_entity_classes_for_type(result_type)
  end

  @relevant_entity_classes = [*entity_classes, *self.class.depends_on_entities].uniq
end