Sha256: d5ad5b1b3b7c3202d079d50fd2328ced23c727b09783a24b74394e151f5c20d2

Contents?: true

Size: 1.16 KB

Versions: 4

Compression:

Stored size: 1.16 KB

Contents

require 'rubygems'
require 'openwfe/def'
require 'openwfe/workitem'
require 'openwfe/engine/engine'

#
# instantiating an engine

engine = OpenWFE::Engine.new

#
# adding some participants

engine.register_participant :alice do |workitem|
    puts "alice got a workitem..."
    workitem.alice_comment = "this thing looks interesting"
end

engine.register_participant :bob do |workitem|
    puts "bob got a workitem..."
    workitem.bob_comment = "not for me, I prefer VB"
    workitem.bob_comment2 = "Bob rules"
end

engine.register_participant :summarize do |workitem|
    puts 
    puts "summary of process #{workitem.fei.workflow_instance_id}"
    workitem.attributes.each do |k, v|
        next unless k.match ".*_comment$"
        puts " - #{k} : '#{v}'"
    end
end

#
# a process definition

class TheProcessDefinition0 < OpenWFE::ProcessDefinition
    sequence do
        concurrence do
            participant :alice
            participant :bob
        end
        participant :summarize
    end
end

#
# launching the process

li = OpenWFE::LaunchItem.new(TheProcessDefinition0)

li.initial_comment = "please give your impressions about http://ruby-lang.org"

engine.launch(li)

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
openwferu-0.9.10 examples/openwferu.rb
openwferu-0.9.10.653 examples/openwferu.rb
openwferu-0.9.8 examples/openwferu.rb
openwferu-0.9.9 examples/openwferu.rb