Search in sources :

Example 11 with Header

use of org.apache.qpid.proton.amqp.messaging.Header in project activemq-artemis by apache.

the class AMQPToOpenwireTest method testDeliveryCountMessage.

@Test
public void testDeliveryCountMessage() throws Exception {
    AmqpClient client = new AmqpClient(new URI("tcp://127.0.0.1:61616"), null, null);
    AmqpConnection amqpconnection = client.connect();
    try {
        AmqpSession session = amqpconnection.createSession();
        AmqpSender sender = session.createSender(queueName);
        AmqpMessage message = new AmqpMessage();
        message.setMessageId("MessageID:" + 0);
        message.getWrappedMessage().setHeader(new Header());
        message.getWrappedMessage().getHeader().setDeliveryCount(new UnsignedInteger(2));
        sender.send(message);
    } finally {
        amqpconnection.close();
    }
    Connection connection = null;
    try {
        connection = factory.createConnection();
        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        Queue queue = session.createQueue(queueName);
        MessageConsumer consumer = session.createConsumer(queue);
        connection.start();
        Message receive = consumer.receive(5000);
        assertNotNull(receive);
    } finally {
        if (connection != null) {
            connection.close();
        }
    }
}
Also used : AmqpConnection(org.apache.activemq.transport.amqp.client.AmqpConnection) MessageConsumer(javax.jms.MessageConsumer) ObjectMessage(javax.jms.ObjectMessage) AmqpMessage(org.apache.activemq.transport.amqp.client.AmqpMessage) Message(javax.jms.Message) BytesMessage(javax.jms.BytesMessage) AmqpConnection(org.apache.activemq.transport.amqp.client.AmqpConnection) Connection(javax.jms.Connection) AmqpClient(org.apache.activemq.transport.amqp.client.AmqpClient) AmqpSender(org.apache.activemq.transport.amqp.client.AmqpSender) URI(java.net.URI) AmqpMessage(org.apache.activemq.transport.amqp.client.AmqpMessage) AmqpSession(org.apache.activemq.transport.amqp.client.AmqpSession) Header(org.apache.qpid.proton.amqp.messaging.Header) UnsignedInteger(org.apache.qpid.proton.amqp.UnsignedInteger) Queue(javax.jms.Queue) Session(javax.jms.Session) AmqpSession(org.apache.activemq.transport.amqp.client.AmqpSession) Test(org.junit.Test)

Example 12 with Header

use of org.apache.qpid.proton.amqp.messaging.Header in project activemq-artemis by apache.

the class AMQPToJMSCoreTest method testMessageDestination.

@Test
public void testMessageDestination() throws Exception {
    System.out.println("foo");
    AmqpClient client = new AmqpClient(new URI("tcp://127.0.0.1:61616"), null, null);
    AmqpConnection amqpconnection = client.connect();
    try {
        AmqpSession session = amqpconnection.createSession();
        AmqpSender sender = session.createSender(queueName);
        AmqpMessage message = new AmqpMessage();
        message.setMessageId("MessageID:" + 0);
        // message.setApplicationProperty("_AMQ_ROUTING_TYPE", (byte) 1);
        message.getWrappedMessage().setHeader(new Header());
        message.getWrappedMessage().getHeader().setDeliveryCount(new UnsignedInteger(2));
        sender.send(message);
    } finally {
        amqpconnection.close();
    }
    ActiveMQConnectionFactory factory = new ActiveMQConnectionFactory("tcp://127.0.0.1:61616");
    Connection connection = null;
    try {
        connection = factory.createConnection();
        Session session = connection.createSession(false, Session.AUTO_ACKNOWLEDGE);
        MessageConsumer consumer = session.createConsumer(ActiveMQJMSClient.createQueue(queueName));
        connection.start();
        Message message = consumer.receive(2000);
        Assert.assertNotNull(message);
        ActiveMQDestination jmsDestination = (ActiveMQDestination) message.getJMSDestination();
        Assert.assertEquals(queueName, jmsDestination.getAddress());
    } finally {
        if (connection != null) {
            connection.close();
        }
    }
}
Also used : AmqpConnection(org.apache.activemq.transport.amqp.client.AmqpConnection) MessageConsumer(javax.jms.MessageConsumer) AmqpMessage(org.apache.activemq.transport.amqp.client.AmqpMessage) Message(javax.jms.Message) AmqpConnection(org.apache.activemq.transport.amqp.client.AmqpConnection) Connection(javax.jms.Connection) AmqpClient(org.apache.activemq.transport.amqp.client.AmqpClient) AmqpSender(org.apache.activemq.transport.amqp.client.AmqpSender) URI(java.net.URI) AmqpMessage(org.apache.activemq.transport.amqp.client.AmqpMessage) ActiveMQDestination(org.apache.activemq.artemis.jms.client.ActiveMQDestination) ActiveMQConnectionFactory(org.apache.activemq.artemis.jms.client.ActiveMQConnectionFactory) AmqpSession(org.apache.activemq.transport.amqp.client.AmqpSession) Header(org.apache.qpid.proton.amqp.messaging.Header) UnsignedInteger(org.apache.qpid.proton.amqp.UnsignedInteger) Session(javax.jms.Session) AmqpSession(org.apache.activemq.transport.amqp.client.AmqpSession) Test(org.junit.Test)

Example 13 with Header

use of org.apache.qpid.proton.amqp.messaging.Header in project activemq-artemis by apache.

the class AmqpSendReceiveInterceptorTest method checkMessageProperties.

private boolean checkMessageProperties(AMQPMessage message, Map<String, Object> expectedProperties) {
    assertNotNull(message);
    assertNotNull(server.getNodeID());
    assertNotNull(message.getConnectionID());
    assertEquals(message.getAddress(), expectedProperties.get(ADDRESS));
    assertEquals(message.isDurable(), expectedProperties.get(DURABLE));
    Properties props = message.getProperties();
    assertEquals(props.getCorrelationId(), expectedProperties.get(CORRELATION_ID));
    assertEquals(props.getReplyTo(), expectedProperties.get(REPLY_TO));
    assertEquals(props.getMessageId(), expectedProperties.get(MESSAGE_ID));
    Header header = message.getHeader();
    assertEquals(header.getDurable(), expectedProperties.get(DURABLE));
    assertEquals(header.getTtl().toString(), expectedProperties.get(TIME_TO_LIVE).toString());
    assertEquals(header.getPriority().toString(), expectedProperties.get(PRIORITY).toString());
    return true;
}
Also used : Header(org.apache.qpid.proton.amqp.messaging.Header) Properties(org.apache.qpid.proton.amqp.messaging.Properties)

Example 14 with Header

use of org.apache.qpid.proton.amqp.messaging.Header in project activemq-artemis by apache.

the class AMQPMessageTest method testGetAddressFromMessage.

@Test
public void testGetAddressFromMessage() {
    final String ADDRESS = "myQueue";
    MessageImpl protonMessage = (MessageImpl) Message.Factory.create();
    protonMessage.setHeader(new Header());
    protonMessage.setAddress(ADDRESS);
    AMQPMessage decoded = encodeAndDecodeMessage(protonMessage);
    assertEquals(ADDRESS, decoded.getAddress());
}
Also used : Header(org.apache.qpid.proton.amqp.messaging.Header) SimpleString(org.apache.activemq.artemis.api.core.SimpleString) MessageImpl(org.apache.qpid.proton.message.impl.MessageImpl) AMQPMessage(org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage) Test(org.junit.Test)

Example 15 with Header

use of org.apache.qpid.proton.amqp.messaging.Header in project activemq-artemis by apache.

the class AMQPMessageTest method testGetTimestampFromMessage.

@Test
public void testGetTimestampFromMessage() {
    Date timestamp = new Date(System.currentTimeMillis());
    MessageImpl protonMessage = (MessageImpl) Message.Factory.create();
    protonMessage.setHeader(new Header());
    Properties properties = new Properties();
    properties.setCreationTime(timestamp);
    protonMessage.setProperties(properties);
    AMQPMessage decoded = encodeAndDecodeMessage(protonMessage);
    assertEquals(timestamp.getTime(), decoded.getTimestamp());
}
Also used : Header(org.apache.qpid.proton.amqp.messaging.Header) Properties(org.apache.qpid.proton.amqp.messaging.Properties) ApplicationProperties(org.apache.qpid.proton.amqp.messaging.ApplicationProperties) MessageImpl(org.apache.qpid.proton.message.impl.MessageImpl) AMQPMessage(org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage) Date(java.util.Date) Test(org.junit.Test)

Aggregations

Header (org.apache.qpid.proton.amqp.messaging.Header)19 Test (org.junit.Test)12 AMQPMessage (org.apache.activemq.artemis.protocol.amqp.broker.AMQPMessage)11 MessageImpl (org.apache.qpid.proton.message.impl.MessageImpl)10 Properties (org.apache.qpid.proton.amqp.messaging.Properties)8 ApplicationProperties (org.apache.qpid.proton.amqp.messaging.ApplicationProperties)7 SimpleString (org.apache.activemq.artemis.api.core.SimpleString)5 UnsignedInteger (org.apache.qpid.proton.amqp.UnsignedInteger)5 HashMap (java.util.HashMap)4 NettyWritable (org.apache.activemq.artemis.protocol.amqp.util.NettyWritable)3 TypedProperties (org.apache.activemq.artemis.utils.collections.TypedProperties)3 DeliveryAnnotations (org.apache.qpid.proton.amqp.messaging.DeliveryAnnotations)3 MessageAnnotations (org.apache.qpid.proton.amqp.messaging.MessageAnnotations)3 ByteBuf (io.netty.buffer.ByteBuf)2 URI (java.net.URI)2 Date (java.util.Date)2 Connection (javax.jms.Connection)2 Message (javax.jms.Message)2 MessageConsumer (javax.jms.MessageConsumer)2 Session (javax.jms.Session)2