public async Task QueryAsync(Func <StoredEvent, Task> callback, string property, object value, string position = null, CancellationToken ct = default(CancellationToken)) { var streamName = await projectionClient.CreateProjectionAsync(property, value); var sliceStart = projectionClient.ParsePosition(position); await QueryAsync(callback, streamName, sliceStart, ct); }
public async Task QueryAsync(Func <StoredEvent, Task> callback, string property, object value, string?position = null, CancellationToken ct = default) { Guard.NotNull(callback); Guard.NotNullOrEmpty(property); Guard.NotNull(value); using (Profiler.TraceMethod <GetEventStore>()) { var streamName = await projectionClient.CreateProjectionAsync(property, value); var sliceStart = projectionClient.ParsePosition(position); await QueryAsync(callback, streamName, sliceStart, ct); } }
public async Task QueryAsync(Func <StoredEvent, Task> callback, string?streamFilter = null, string?position = null, CancellationToken ct = default) { Guard.NotNull(callback, nameof(callback)); using (Profiler.TraceMethod <GetEventStore>()) { var streamName = await projectionClient.CreateProjectionAsync(streamFilter); var sliceStart = projectionClient.ParsePosition(position); await QueryAsync(callback, streamName, sliceStart, ct); } }
public async IAsyncEnumerable <StoredEvent> QueryAllReverseAsync(string?streamFilter = null, string?position = null, long take = long.MaxValue, [EnumeratorCancellation] CancellationToken ct = default) { if (take <= 0) { yield break; } var streamName = await projectionClient.CreateProjectionAsync(streamFilter); var sliceStart = ProjectionClient.ParsePosition(position); await foreach (var storedEvent in QueryAsync(streamName, sliceStart, take, ct)) { yield return(storedEvent); } }