private static IStatelessServiceHostDelegateReplicator MockDelegateReplicatorForEvent( Action mockDelegate, StatelessServiceLifecycleEvent mockEvent) { var mockDelegateReplicator = new Mock <IStatelessServiceHostDelegateReplicator>(); mockDelegateReplicator.Setup(instance => instance.ReplicateFor(It.IsAny <IStatelessService>())) .Returns( new StatelessServiceDelegate( () => { var mockTask = new TaskCompletionSource <bool>(); var mockDelegateInvoker = new Mock <IStatelessServiceHostDelegateInvoker>(); mockDelegateInvoker .Setup(instance => instance.InvokeAsync(It.IsAny <IStatelessServiceDelegateInvocationContext>(), It.IsAny <CancellationToken>())) .Callback( () => { mockDelegate(); mockTask.SetResult(true); }) .Returns(mockTask.Task); return(mockDelegateInvoker.Object); }, mockEvent)); return(mockDelegateReplicator.Object); }
public StatelessServiceDelegate( Func <IStatelessServiceHostDelegateInvoker> delegateInvokerFunc, StatelessServiceLifecycleEvent @event) { this.Event = @event; this.CreateDelegateInvokerFunc = delegateInvokerFunc ?? throw new ArgumentNullException(nameof(delegateInvokerFunc)); }
public static IStatelessServiceHostDelegateReplicaTemplate UseEvent( this IStatelessServiceHostDelegateReplicaTemplate @this, StatelessServiceLifecycleEvent @event) { @this.ConfigureObject( configurator => configurator.UseEvent(@event)); return(@this); }
public StatelessServiceDelegateInvocationContext( StatelessServiceLifecycleEvent @event) { this.Event = @event; }
public void UseEvent( StatelessServiceLifecycleEvent @event) { this.Event = @event; }