private PersistentSubscription(IPersistentSubscriptionsClient persistentSubscriptionsClient, PersistentSubscriptionDetails persistentSubscriptionDetails, IDomainEventHandlerResolver domainEventHandlerResolver, String username, String password) { this.PersistentSubscriptionsClient = persistentSubscriptionsClient; this.PersistentSubscriptionDetails = persistentSubscriptionDetails; UserCredentials userCredentials = new(username, password); Func <global::EventStore.Client.PersistentSubscription, ResolvedEvent, Int32?, CancellationToken, Task> eventAppeared = (ps, re, retryCount, ct) => PersistentSubscription.EventAppeared(ps, re, retryCount, domainEventHandlerResolver, ct); this.Subscribe = ct => persistentSubscriptionsClient.SubscribeAsync(this.PersistentSubscriptionDetails.StreamName, this.PersistentSubscriptionDetails.GroupName, eventAppeared, this.SubscriptionDropped, userCredentials, persistentSubscriptionDetails.InflightMessages, ct); }
public static PersistentSubscription Create(IPersistentSubscriptionsClient persistentSubscriptionsClient, PersistentSubscriptionDetails persistentSubscriptionDetails, IDomainEventHandlerResolver domainEventHandlerResolver, String username = "******", String password = "******") => new(persistentSubscriptionsClient, persistentSubscriptionDetails, domainEventHandlerResolver, username, password);