예제 #1
0
 public IpcQueueSpecifier(IpcMessageBus parent, ReadAtom <MessageExchangeDeclaration> declSpec,
                          MessageQueueDeclaration queueSpec)
 {
     _parent    = parent;
     _declSpec  = declSpec;
     _queueSpec = queueSpec;
 }
예제 #2
0
        internal void UpdateExchange(ReadAtom <MessageExchangeDeclaration> exchangeSpec)
        {
            var exchanges = _client.OpenTable <MessageExchangeDeclaration>(AMQPDeclarations.MessageExchange);

            using (_client.BeginTransaction())
            {
                var check = exchanges.Fetch(exchangeSpec.Key);
                if (!check.Any(d => d.Key == exchangeSpec.Key))
                {
                    exchanges.Update(exchangeSpec.Key, exchangeSpec.Data, exchangeSpec.ETag);
                    _client.Commit();
                }
            }
        }
예제 #3
0
 internal IpcExchange(IpcMessageBus parent, ReadAtom <MessageExchangeDeclaration> declSpec)
 {
     _parent   = parent;
     _declSpec = declSpec;
 }