public override void Process(ExecutionContext context) { if (EventNamePort.HasData()) { string eventName = EventNamePort.GetData() as string; if (eventName != currentEventName) { if (currentEventName != null) { Graph.AssociatedInterlink.UnsubscribeFromEvent(currentEventName, EventPort); } currentEventName = eventName; Graph.AssociatedInterlink.SubscribeToEvent(currentEventName, EventPort); } while (EventPort.HasData()) { object data = EventPort.GetData(); OutPort.Send(data, context); } } Output.Done(context); }
public override void Process(ExecutionContext context) { if (ObjectPort.HasData()) { object data = ObjectPort.GetData(); for (int i = 0; i < SendPort.GetDataCount(); i++) { OutPort.Send(data, context); } SendPort.ClearData(); } Output.Done(context); }
public void Send(OutPort port, object data, ExecutionContext context) { port.Send(data, context); }