class Orocos::RubyTasks::StubTaskContext
Public Instance Methods
has_operation?(name, with_stubs: true)
click to toggle source
Calls superclass method
# File lib/orocos/ruby_tasks/stub_task_context.rb, line 34 def has_operation?(name, with_stubs: true) super(name) || (with_stubs && !!model.find_operation(name)) end
operation(name)
click to toggle source
Calls superclass method
# File lib/orocos/ruby_tasks/stub_task_context.rb, line 81 def operation(name) super rescue NotFound if model.find_operation(name) Operation.new(name, self) else raise end end
setup_from_orogen_model(orogen_model)
click to toggle source
Calls superclass method
Orocos::RubyTasks::TaskContext#setup_from_orogen_model
# File lib/orocos/ruby_tasks/stub_task_context.rb, line 4 def setup_from_orogen_model(orogen_model) setter_operations = Hash.new orogen_model.each_property.each do |prop| if op = prop.setter_operation setter_operations[op.name] = prop end end stubbed_operations = Module.new orogen_model.each_operation do |op| next if has_operation?(op.name, with_stubs: false) if property = setter_operations[op.name] stubbed_operations.class_eval do define_method(op.name) do |value| self.property(property.name).write(value, Time.now, direct: true) true end end else stubbed_operations.class_eval do define_method(op.name) do |*args| end end end end extend stubbed_operations super end