class DRbQS::Test::Node
Public Class Methods
new(log_level, transfer, queue)
click to toggle source
Calls superclass method
DRbQS::Node::new
# File lib/drbqs/server/test/node.rb, line 6 def initialize(log_level, transfer, queue) super(nil, :log_file => $stdout, :log_level => log_level) DRbQS::Transfer::Client.set(transfer.get_client(true)) if transfer @task_client = DRbQS::Node::TaskClient.new(nil, queue, nil, [DRbQS::Node::SAME_HOST_GROUP], 1) @special_task_number = 0 end
Public Instance Methods
calc()
click to toggle source
# File lib/drbqs/server/test/node.rb, line 39 def calc if ary = @task_client.get_task task_id, marshal_obj, method_sym, args = ary result = execute_task(task_id, marshal_obj, method_sym, args) return [task_id, result] end nil end
finalize(finalization_task_ary)
click to toggle source
# File lib/drbqs/server/test/node.rb, line 48 def finalize(finalization_task_ary) if finalization_task_ary finalization_task_ary.each do |task| args = task.simple_drb_args execute_task(nil, *args) end end clear_node_files end
server_on_same_host?()
click to toggle source
# File lib/drbqs/server/test/node.rb, line 13 def server_on_same_host? true end
Private Instance Methods
execute_task(task_id, marshal_obj, method_sym, args)
click to toggle source
# File lib/drbqs/server/test/node.rb, line 26 def execute_task(task_id, marshal_obj, method_sym, args) DRbQS::Temporary.set_sub_directory(subdirectory_name(task_id)) result = DRbQS::Task.execute_task(marshal_obj, method_sym, args) if files = DRbQS::Transfer.dequeue_all transfer_file(files) end if subdir = DRbQS::Temporary.subdirectory FileUtils.rm_r(subdir) end result end
subdirectory_name(task_id)
click to toggle source
# File lib/drbqs/server/test/node.rb, line 17 def subdirectory_name(task_id) if task_id sprintf("T%08d", task_id) else sprintf("S%08d", (@special_task_number += 1)) end end