Class: LittleGhost::WorkflowBuilder

Inherits:
AssemblyBuilder show all
Defined in:
lib/little_ghost/assembly_builder.rb

Overview

Builds a Workflow whose Ruby composition block is supplied at runtime.

Instance Attribute Summary

Attributes inherited from AssemblyBuilder

#runtime

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from AssemblyBuilder

#as_tool, #ask, #assembly_id, #assembly_kind, #build, #call, #definition, #description, #initialize, #start_execution, #stream, #stream_ask, #validate!

Constructor Details

This class inherits a constructor from LittleGhost::AssemblyBuilder

Class Method Details

.assembly_kindObject

:nodoc:



314
# File 'lib/little_ghost/assembly_builder.rb', line 314

def assembly_kind = :workflow

Instance Method Details

#perform(&block) ⇒ Object

Declares the Ruby composition body for dynamic Workflow executions.

Raises:

  • (ArgumentError)


318
319
320
321
322
323
# File 'lib/little_ghost/assembly_builder.rb', line 318

def perform(&block)
  raise ArgumentError, "perform requires a block" unless block

  @mutex.synchronize { @performer = block }
  self
end