示例#1
0
 public AmqpConnection(AmqpProvider provider, ITransportContext transport, ConnectionInfo info)
 {
     this.Provider       = provider;
     this.transport      = transport;
     this.remoteUri      = provider.RemoteUri;
     this.Info           = info;
     this.messageFactory = new AmqpMessageFactory(this);
 }
        public void TestCreateMessage()
        {
            AmqpMessageFactory factory = new AmqpMessageFactory(CreateMockAmqpConnection());
            NmsMessage         message = factory.CreateMessage();
            INmsMessageFacade  facade  = message.Facade;

            Assert.IsInstanceOf <NmsMessage>(message);
            Assert.IsInstanceOf <AmqpNmsMessageFacade>(facade);
            Assert.AreEqual(MessageSupport.JMS_TYPE_MSG, facade.JmsMsgType);
        }
        public void TestCreateTextMessageString()
        {
            AmqpMessageFactory factory = new AmqpMessageFactory(CreateMockAmqpConnection());
            NmsTextMessage     message = factory.CreateTextMessage("SomeValue");
            INmsMessageFacade  facade  = message.Facade;

            Assert.IsInstanceOf <NmsTextMessage>(message);
            Assert.IsInstanceOf <AmqpNmsTextMessageFacade>(facade);
            Assert.AreEqual(MessageSupport.JMS_TYPE_TXT, facade.JmsMsgType);

            Assert.AreEqual("SomeValue", ((AmqpNmsTextMessageFacade)facade).Text);
        }
        public void TestCreateObjectMessage()
        {
            AmqpMessageFactory factory = new AmqpMessageFactory(CreateMockAmqpConnection());
            NmsObjectMessage   message = factory.CreateObjectMessage();
            INmsMessageFacade  facade  = message.Facade;

            Assert.IsInstanceOf <NmsObjectMessage>(message);
            Assert.IsInstanceOf <AmqpNmsObjectMessageFacade>(facade);
            Assert.IsNull(facade.JmsMsgType);

            Assert.IsNull(((AmqpNmsObjectMessageFacade)facade).Body);
        }
        public void TestCreateObjectMessageSerializable()
        {
            AmqpMessageFactory factory = new AmqpMessageFactory(CreateMockAmqpConnection());
            NmsObjectMessage   message = factory.CreateObjectMessage(new SerializableClass());
            INmsMessageFacade  facade  = message.Facade;

            Assert.IsInstanceOf <NmsObjectMessage>(message);
            Assert.IsInstanceOf <AmqpNmsObjectMessageFacade>(facade);
            Assert.IsNull(facade.JmsMsgType);

            AmqpNmsObjectMessageFacade objectMessageFacade = (AmqpNmsObjectMessageFacade)facade;

            Assert.IsNotNull(objectMessageFacade.Body);
            Assert.IsInstanceOf <SerializableClass>(objectMessageFacade.Body);
        }
        public void TestCreateObjectMessageWithBadTypeThrowsNMSException()
        {
            AmqpMessageFactory factory = new AmqpMessageFactory(CreateMockAmqpConnection());

            Assert.Catch <MessageFormatException>(() => factory.CreateObjectMessage(new NotSerializable()));
        }