Class: Rasti::App::Interaction

Inherits:
Object
  • Object
show all
Includes:
Form::Validable
Defined in:
lib/rasti/app/interaction.rb

Direct Known Subclasses

AsynchronicInteraction

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(environment, session) ⇒ Interaction

Returns a new instance of Interaction.



15
16
17
18
19
# File 'lib/rasti/app/interaction.rb', line 15

def initialize(environment, session)
  @environment = environment
  @session = session
  @uuid = SecureRandom.uuid
end

Class Method Details

.asynchronic?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/rasti/app/interaction.rb', line 11

def self.asynchronic?
  false
end

.build_form(params) ⇒ Object



7
8
9
# File 'lib/rasti/app/interaction.rb', line 7

def self.build_form(params)
  constants.include?(:Form) ? const_get(:Form).new(params) : Form.new
end

Instance Method Details

#call(form) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/rasti/app/interaction.rb', line 21

def call(form)
  thread_cache[:form] = form
  validate!
  execute
ensure
  thread_cache[:form] = nil
end