Class: Interactify::Contracts::Organizing

Inherits:
Object
  • Object
show all
Defined in:
lib/interactify/contracts/organizing.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(interactor, *organizing) ⇒ Organizing

Returns a new instance of Organizing.



16
17
18
19
# File 'lib/interactify/contracts/organizing.rb', line 16

def initialize(interactor, *organizing)
  @interactor = interactor
  @organizing = organizing
end

Instance Attribute Details

#interactorObject (readonly)

Returns the value of attribute interactor.



8
9
10
# File 'lib/interactify/contracts/organizing.rb', line 8

def interactor
  @interactor
end

#organizingObject (readonly)

Returns the value of attribute organizing.



8
9
10
# File 'lib/interactify/contracts/organizing.rb', line 8

def organizing
  @organizing
end

Class Method Details

.validate(interactor, *organizing) ⇒ Object



10
11
12
13
14
# File 'lib/interactify/contracts/organizing.rb', line 10

def self.validate(interactor, *organizing)
  new(interactor, *organizing).validate

  interactor
end

Instance Method Details

#validateObject



21
22
23
24
25
26
27
# File 'lib/interactify/contracts/organizing.rb', line 21

def validate
  return if organizing == organized

  Interactify.trigger_definition_error(
    MismatchingOrganizerError.new(interactor, organizing, organized)
  )
end