class Syskit::Coordination::InputPort

Public Instance Methods

writer(policy = Hash.new) click to toggle source
Calls superclass method Syskit::InputPort#writer
# File lib/syskit/coordination/port_handling.rb, line 60
def writer(policy = Hash.new)
    # The 'rescue' case is used only on first evaluation of the
    # block, when Roby instanciates it to check syntax.
    # The script blocks have to be re-instanciated for each
    # task they get applied on
    begin
        component.resolve
        root_task = component.root_task.resolve
        writer = super
        root_task.stop_event.on { |_| writer.disconnect }
        writer
    rescue Roby::Coordination::ResolvingUnboundObject
        Syskit::Models::InputWriter.new(self, policy)
    end
end