Ejemplo n.º 1
0
        public Task <ListStreamsPage> ListStreams(
            int maxCount                        = 100,
            string continuationToken            = default,
            CancellationToken cancellationToken = default)
        {
            Ensure.That(maxCount).IsGt(0);

            return(ListStreams(Pattern.Anything(), maxCount, continuationToken, cancellationToken));
        }
        public async Task When_list_streams_after_deletion_empty_results_should_not_be_returned()
        {
            await store.AppendToStream("stream-1", ExpectedVersion.Any, CreateNewStreamMessages(1));

            await store.AppendToStream("stream-2", ExpectedVersion.Any, CreateNewStreamMessages(2));

            await store.DeleteStream("stream-1");

            var page = await store.ListStreams(Pattern.Anything());

            page.StreamIds.ShouldNotContain((string)default);
        public ListStreamsOperation(HttpRequest request)
        {
            Path = request.Path;
            if (request.Query.TryGetValueCaseInsensitive('t', out var patternType))
            {
                PatternType = patternType;
            }

            if (!request.Query.TryGetValueCaseInsensitive('p', out var pattern))
            {
                Pattern = Pattern.Anything();
            }
            else
            {
                switch (PatternType)
                {
                case "s":
                    Pattern = Pattern.StartsWith(pattern);
                    break;

                case "e":
                    Pattern = Pattern.EndsWith(pattern);
                    break;

                default:
                    Pattern = Pattern.Anything();
                    break;
                }
            }

            if (request.Query.TryGetValueCaseInsensitive('c', out var continuationToken))
            {
                ContinuationToken = continuationToken;
            }

            MaxCount = request.Query.TryGetValueCaseInsensitive('m', out var m) &&
                       int.TryParse(m, out var maxCount)
                ? maxCount
                : 100;
        }
Ejemplo n.º 4
0
 /// <inheritdoc />
 protected override async Task ListStreamsObservable(IObserver <IStream> observer, Func <string, bool> predicate, CancellationToken token)
 {
     var page = await _streamStore.ListStreams(Pattern.Anything(), Configuration.BatchSize, default, token);