public StreamConsumerSettings( [NotNull] string streamName, [NotNull] IHerculesStreamClient <T> streamClient, [NotNull] IStreamEventsHandler <T> eventsHandler, [NotNull] IStreamCoordinatesStorage coordinatesStorage, [NotNull] Func <StreamShardingSettings> shardingSettingsProvider) { StreamName = streamName ?? throw new ArgumentNullException(nameof(streamName)); StreamClient = streamClient ?? throw new ArgumentNullException(nameof(streamClient)); EventsHandler = eventsHandler ?? throw new ArgumentNullException(nameof(eventsHandler)); CoordinatesStorage = coordinatesStorage ?? throw new ArgumentNullException(nameof(coordinatesStorage)); ShardingSettingsProvider = shardingSettingsProvider ?? throw new ArgumentNullException(nameof(shardingSettingsProvider)); }
public StreamConsumerSettings( [NotNull] string streamName, [NotNull] IHerculesStreamClient streamClient, [NotNull] IStreamEventsHandler eventsHandler, [NotNull] IStreamCoordinatesStorage coordinatesStorage, [NotNull] Func <StreamShardingSettings> shardingSettingsProvider) : base( streamName, streamClient.ToGenericClient(), eventsHandler.ToGenericHandler(), coordinatesStorage, shardingSettingsProvider) { }
public GenericAdapter(IStreamEventsHandler streamEventsHandler) => this.streamEventsHandler = streamEventsHandler;
public static IStreamEventsHandler <HerculesEvent> ToGenericHandler(this IStreamEventsHandler streamEventsHandler) => new GenericAdapter(streamEventsHandler);