Enter info here CPEE default ready DefaultHandlerWrapper 3 Visa_12345 null [] Vienna Prague 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: { :method => :post, :arguments => {:from => data.from, :to => data.to, :persons => 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: { :method => :post, :arguments => {:to => 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 "data.costs > 700" do call :a4, :approve, parameters: { :method => :post, :arguments => {:costs => 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 0 undefined :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