|
|
|
if results.include? :command_result
|
|
store.batch_result << results[:command_result]
|
|
end
|
|
|
|
command = store.remaining_commands.shift
|
|
if command.nil?
|
|
store.request.reply.results = store.batch_result
|
|
store.request.send_reply
|
|
else
|
|
command = command.join('/') if command.is_a? Array
|
|
|
|
ask :self, :command_result, "/Commands/" + command
|
|
|
|
on_success :file => '_batch_run_loop'
|
|
end
|
|
|
|
on_error do
|
|
options = store.request.args.first[:options]
|
|
soe = options.include?(:stop_on_error) ? options[:stop_on_error] : true
|
|
|
|
if soe
|
|
store.request.reply.errors << errors
|
|
store.request.send_reply
|
|
else
|
|
store.batch_result << nil
|
|
# TODO: error handling needs rework
|
|
#store.request.reply.errors << errors
|
|
# continue
|
|
on_success :file => '_batch_run_loop'
|
|
end
|
|
end
|