Пример #1
0
    // omit for readability
    public void Execute(EventTriggerAction eventTriggerAction, EventContext context)
    {
        // omit for readability

        var action = (ActionBase)Activator.CreateInstance(); // Instantiate the action by its base class, ActionBase

        action.Arguments = data.Arguments;                   // This is a dictionary that contains the arguments of the action
        action.Emailer   = _emailerFactory.Create();
        // omit for readability
    }
        private void AddEventTriggerImpl(EventTrigger <TIdentifier, TEvent> trigger, TAspect aspect)
        {
            EventTriggerAction action = trigger.Action;

            foreach (TEvent eventId in trigger.Events)
            {
                _eventTriggers.Add(eventId,
                                   new TriggerableEventTrigger <TIdentifier, TEvent, TAspect, TFlag, TProperty>(eventId, aspect, action));
            }
        }
Пример #3
0
 public EventTrigger(EventTriggerAction action, params TEvent[] events)
 {
     _action = action;
     _events = events;
 }
 /// <summary>
 /// Creates a trigger that is always active when the other property <see cref="remoteProperty"/> is set.
 /// </summary>
 public NodeEventTrigger(EventTriggerAction action, NodeProperty remoteProperty, params NodeEvent[] events)
     : base(action, events)
 {
     _remoteProperty = remoteProperty;
 }
 /// <summary>
 /// Creates a trigger that is always active when the other flag <see cref="remoteFlag"/> is set.
 /// </summary>
 public NodeEventTrigger(EventTriggerAction action, NodeFlag remoteFlag, params NodeEvent[] events)
     : base(action, events)
 {
     _remoteFlag = remoteFlag;
 }
 /// <summary>
 /// Creates a trigger that is always activ when its flag or property is set
 /// </summary>
 public NodeEventTrigger(EventTriggerAction action, params NodeEvent[] events)
     : base(action, events)
 {
 }
 internal TriggerableEventTrigger(TEvent eventId, TAspect aspect, EventTriggerAction action)
 {
     _event  = eventId;
     _aspect = aspect;
     _action = action;
 }