コード例 #1
0
        public IObservable <Unit> CreateDeal(CreateDealCommand command)
        {
            return(Observable.Create <Unit>(
                       obs =>
            {
                var subscription = GetDealUpdates(command.DealId)
                                   .Select(_ => Unit.Default)
                                   .Take(1)
                                   .Timeout(TimeSpan.FromSeconds(5), Scheduler.Default)
                                   .Subscribe(obs);

                //Send the command
                _messageBusClient.Enqueue(command);

                return subscription;
            }));
        }
コード例 #2
0
        public static Task Enqueue <T>(this IMessageBusClient client, T message)
        {
            var payload = message.ToJson();

            return(client.Enqueue(message.GetType().Name, payload));
        }