Exemplo n.º 1
0
 public InProcessQueueSender(ISerializer serializer, Queue queue, InProcessMessageStore messageStore, ILogger logger)
 {
     _serializer   = serializer;
     _queue        = queue;
     _messageStore = messageStore;
     _logger       = logger;
 }
Exemplo n.º 2
0
 public InProcessTopicSender(ISerializer serializer, Topic topic, InProcessMessageStore messageStore, ILogger logger)
 {
     _serializer   = serializer;
     _topic        = topic;
     _messageStore = messageStore;
     _logger       = logger;
 }
            public void ReturnsNoMessagesWhenThereAreNoMessages()
            {
                var store = new InProcessMessageStore(false);

                var result = store.GetAllSince(new[] { "foo" }, "1").Result.ToList();

                Assert.Equal(0, result.Count);
            }
        public void GetLastIdReturnsMaxMessageId()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            store.Save("a", "1").Wait();
            store.Save("a", "2").Wait();
            store.Save("a", "3").Wait();

            Assert.Equal("3", store.GetLastId().Result);
        }
Exemplo n.º 5
0
        public void GetLastIdReturnsMaxMessageId()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            store.Save("a", "1").Wait();
            store.Save("a", "2").Wait();
            store.Save("a", "3").Wait();

            Assert.Equal("3", store.GetLastId().Result);
        }
Exemplo n.º 6
0
        public InProcessQueueReceiver(string queuePath,
                                      ConcurrentHandlerLimitSetting concurrentHandlerLimit,
                                      InProcessMessageStore messageStore,
                                      IGlobalHandlerThrottle globalHandlerThrottle,
                                      ILogger logger) : base(concurrentHandlerLimit, globalHandlerThrottle, logger)
        {
            _queuePath    = queuePath;
            _messageStore = messageStore;

            _messageQueue = new ThreadSafeLazy <AsyncBlockingCollection <NimbusMessage> >(() => _messageStore.GetOrCreateMessageQueue(_queuePath));
        }
        public void GetAllSinceReturnsAllMessagesAfterIdOrderedById()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            store.Save("a", "1").Wait();
            store.Save("a", "2").Wait();
            store.Save("a", "3").Wait();

            var messages = store.GetAllSince("a", 1).Result.ToList();
            Assert.Equal(2, messages.Count);
            Assert.Equal("2", messages[0].Value);
            Assert.Equal("3", messages[1].Value);
        }
Exemplo n.º 8
0
            public void ReturnsNoMessagesWhenLastMessageIdIsEqualToLastMessage()
            {
                // id = 27
                // 24, 25, 27
                //         ^

                var store = new InProcessMessageStore(false);
                store.Save("foo", "1").Wait();
                store.Save("foo", "2").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "2").Result.ToList();
                Assert.Equal(0, result.Count);
            }
Exemplo n.º 9
0
        public void GetAllSinceReturnsAllMessagesAfterIdOrderedById()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            store.Save("a", "1").Wait();
            store.Save("a", "2").Wait();
            store.Save("a", "3").Wait();

            var messages = store.GetAllSince("a", 1).Result.ToList();

            Assert.Equal(2, messages.Count);
            Assert.Equal("2", messages[0].Value);
            Assert.Equal("3", messages[1].Value);
        }
Exemplo n.º 10
0
 public InProcessSubscriptionReceiver(Subscription subscription,
                                      ConcurrentHandlerLimitSetting concurrentHandlerLimit,
                                      InProcessMessageStore messageStore,
                                      IGlobalHandlerThrottle globalHandlerThrottle,
                                      ILogger logger)
     : base(
         InProcessTransport.FullyQualifiedSubscriptionPath(subscription.TopicPath, subscription.SubscriptionName),
         concurrentHandlerLimit,
         messageStore,
         globalHandlerThrottle,
         logger)
 {
     _subscription = subscription;
     _messageStore = messageStore;
 }
Exemplo n.º 11
0
            public void ReturnsAllMessagesWhenLastMessageIdIsLessThanAllMessages()
            {
                //    id = 27
                // _, 28, 29, 32
                // ^

                var store = new InProcessMessageStore(false);
                store.Save("bar", "1").Wait();
                store.Save("bar", "2").Wait();
                store.Save("foo", "3").Wait();
                store.Save("foo", "4").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "1").Result.ToList();
                Assert.Equal(2, result.Count);
            }
            public void ReturnsNoMessagesWhenLastMessageIdIsOnlyMessage()
            {
                // id = 27
                // 27
                // ^

                var store = new InProcessMessageStore(false);

                store.Save("bar", "1").Wait();
                store.Save("foo", "2").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "2").Result.ToList();

                Assert.Equal(0, result.Count);
            }
        public void GetAllSinceReturnsAllMessagesIfIdGreaterThanMaxId()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            for (int i = 0; i < 10; i++)
            {
                store.Save("a", i).Wait();
            }

            var messages = store.GetAllSince("a", 100).Result.ToList();
            Assert.Equal(10, messages.Count);
            for (int i = 0; i < 10; i++)
            {
                Assert.Equal(i, messages[i].Value);
            }
        }
Exemplo n.º 14
0
            public void ReturnsMessagesGreaterThanLastMessageIdWhenLastMessageIdNotInStore()
            {
                // id = 27
                // 24, 25, 28, 30, 45
                //     ^

                var store = new InProcessMessageStore(false);
                store.Save("bar", "1").Wait();
                store.Save("foo", "2").Wait();
                store.Save("bar", "3").Wait();
                store.Save("foo", "4").Wait();
                store.Save("bar", "5").Wait();
                store.Save("foo", "6").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "3").Result.ToList();
                Assert.Equal(2, result.Count);
            }
Exemplo n.º 15
0
        public void GetAllSinceReturnsAllMessagesIfIdGreaterThanMaxId()
        {
            var store = new InProcessMessageStore(garbageCollectMessages: false);

            for (int i = 0; i < 10; i++)
            {
                store.Save("a", i.ToString(CultureInfo.InvariantCulture)).Wait();
            }

            var messages = store.GetAllSince("a", 100).Result.ToList();

            Assert.Equal(10, messages.Count);
            for (int i = 0; i < 10; i++)
            {
                Assert.Equal(i, messages[i].Value);
            }
        }
            public void ReturnsAllMessagesWhenLastMessageIdIsLessThanAllMessages()
            {
                //    id = 27
                // _, 28, 29, 32
                // ^

                var store = new InProcessMessageStore(false);

                store.Save("bar", "1").Wait();
                store.Save("bar", "2").Wait();
                store.Save("foo", "3").Wait();
                store.Save("foo", "4").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "1").Result.ToList();

                Assert.Equal(2, result.Count);
            }
            public void ReturnsMessagesGreaterThanLastMessageIdWhenLastMessageIdNotInStore()
            {
                // id = 27
                // 24, 25, 28, 30, 45
                //     ^

                var store = new InProcessMessageStore(false);

                store.Save("bar", "1").Wait();
                store.Save("foo", "2").Wait();
                store.Save("bar", "3").Wait();
                store.Save("foo", "4").Wait();
                store.Save("bar", "5").Wait();
                store.Save("foo", "6").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "3").Result.ToList();

                Assert.Equal(2, result.Count);
            }
 public InProcessDelayedDeliveryService(InProcessMessageStore messageStore, IClock clock)
 {
     _messageStore = messageStore;
     _clock        = clock;
 }
Exemplo n.º 19
0
            public void ReturnsNoMessagesWhenThereAreNoMessages()
            {
                var store = new InProcessMessageStore(false);

                var result = store.GetAllSince(new[] { "foo" }, "1").Result.ToList();
                Assert.Equal(0, result.Count);
            }
Exemplo n.º 20
0
 public InProcessTransport(InProcessMessageStore messageStore, PoorMansIoC container)
 {
     _messageStore = messageStore;
     _container    = container;
 }
Exemplo n.º 21
0
            public void ReturnsNoMessagesWhenLastMessageIdIsGreaterThanAllMessages()
            {
                // id = 27
                // 14, 18, 25, 26
                //             ^

                var store = new InProcessMessageStore(false);
                store.Save("foo", "1").Wait();
                store.Save("foo", "2").Wait();
                store.Save("bar", "3").Wait();
                store.Save("bar", "4").Wait();

                var result = store.GetAllSince(new[] { "foo" }, "3").Result.ToList();
                Assert.Equal(0, result.Count);
            }