e5b82a08-d6bc-4043-aafc-a81691abea87
Plain Instance
CPEE
default
finished
DefaultHandlerWrapper
0
Visa_12345
American Airlines
["Rathaus","Mariott","Rathaus"]
Vienna
Prague
1072.0
http://gruppe.wst.univie.ac.at/~mangler/services/airline.php
http://gruppe.wst.univie.ac.at/~mangler/services/hotel.php
http://gruppe.wst.univie.ac.at/~mangler/services/approval.php
call :a1, :bookAir, parameters: { :label => "Book Airline", :method => :post, :arguments => [⭐(:name => :from, :value => "data.from"), ⭐(:name => :to, :value => "data.to"), ⭐(:name => :persons, :value => "data.persons")] }, finalize: <<-END
data.airline = result.value('id')
data.costs += result.value('costs').to_f
status.update 1, 'Hotel'
END
parallel do
loop pre_test("data.persons > 0") do
parallel_branch data.persons do |p|
call :a2, :bookHotel, parameters: { :label => "Book Hotel", :method => :post, :arguments => [⭐(:name => :to, :value => "data.to")] }, finalize: <<-END
data.hotels << result.value('id')
data.costs += result.value('costs').to_f
END
end
manipulate :a3, <<-END
data.persons -= 1
END
end
end
choose :inclusive do
alternative test("data.costs > 700") do
call :a4, :approve, parameters: { :label => "Approve Hotel", :method => :post, :arguments => [⭐(:name => :costs, :value => "data.costs")] }
end
end
:post
data.from
data.to
data.persons
data.airline = result.value('id')
data.costs += result.value('costs').to_f
status.update 1, 'Hotel'
:post
data.to
data.hotels << result.value('id')
data.costs += result.value('costs').to_f
data.persons -= 1
:post
data.costs
1
Hotel
:post
data.from
data.to
data.persons
data.airline = result.value('id')
data.costs += result.value('costs').to_f
status.update 1, 'Hotel'
:post
data.to
data.hotels << result.value('id')
data.costs += result.value('costs').to_f
data.persons -= 1
:post
data.costs