Ejemplo n.º 1
0
 /// <summary>
 /// Initializes a new instance of the <see cref="DynamicCommandDataLoaderTrigger"/> class.
 /// </summary>
 /// <param name="command">The dynamic command causing the triggers.</param>
 /// <param name="triggerOptions">The trigger options.</param>
 public DynamicCommandDataLoaderTrigger(IDynamicCommand command, CommandTriggerOptions triggerOptions)
     : base(command?.Name)
 {
     _command                     = command ?? throw new ArgumentNullException(nameof(command));
     _triggerOptions              = triggerOptions;
     _command.IsExecutingChanged += OnIsExecutingChanged;
 }
Ejemplo n.º 2
0
 /// <summary>
 /// Adds a <see cref="IDynamicCommand"/> trigger.
 /// </summary>
 /// <remarks>
 /// The name of the trigger is the name of the <paramref name="command"/>.
 /// </remarks>
 /// <typeparam name="TBuilder">The type of builder.</typeparam>
 /// <param name="dataLoaderBuilder">This builder.</param>
 /// <param name="command">The dynamic command causing the triggers.</param>
 /// <param name="triggerExecution">The trigger options.</param>
 /// <returns><see cref="IDataLoaderBuilder"/></returns>
 public static TBuilder TriggerOnCommandExecution <TBuilder>(
     this TBuilder dataLoaderBuilder,
     IDynamicCommand command,
     CommandTriggerOptions triggerExecution = CommandTriggerOptions.TriggerBeforeCommandExecution)
     where TBuilder : IDataLoaderBuilder
 => dataLoaderBuilder.WithTrigger(new DynamicCommandDataLoaderTrigger(command, triggerExecution));