Here are the examples of the java api class org.apache.activemq.artemis.core.protocol.proton.converter.message.EncodedMessage taken from open source projects.
1. TestConversions#testSimpleConversionText()
Project: activemq-artemis
File: TestConversions.java
File: TestConversions.java
@Test public void testSimpleConversionText() throws Exception { Map<String, Object> mapprop = createPropertiesMap(); ApplicationProperties properties = new ApplicationProperties(mapprop); MessageImpl message = (MessageImpl) Message.Factory.create(); message.setApplicationProperties(properties); String text = "someText"; message.setBody(new AmqpValue(text)); EncodedMessage encodedMessage = encodeMessage(message); ProtonMessageConverter converter = new ProtonMessageConverter(new SimpleIDGenerator(0)); ServerJMSTextMessage serverMessage = (ServerJMSTextMessage) converter.inboundJMSType(encodedMessage); simulatePersistence(serverMessage); verifyProperties(serverMessage); Assert.assertEquals(text, serverMessage.getText()); Object obj = converter.outbound((ServerMessage) serverMessage.getInnerMessage(), 0); reEncodeMsg(obj); MessageImpl outMessage = (MessageImpl) obj; AmqpValue value = (AmqpValue) outMessage.getBody(); String textValue = (String) value.getValue(); Assert.assertEquals(text, textValue); System.out.println("output = " + obj); }
2. TestConversions#testSimpleConversionStream()
Project: activemq-artemis
File: TestConversions.java
File: TestConversions.java
@Test public void testSimpleConversionStream() throws Exception { Map<String, Object> mapprop = createPropertiesMap(); ApplicationProperties properties = new ApplicationProperties(mapprop); MessageImpl message = (MessageImpl) Message.Factory.create(); message.setApplicationProperties(properties); List<Object> objects = new LinkedList<>(); objects.add(new Integer(10)); objects.add("10"); message.setBody(new AmqpSequence(objects)); EncodedMessage encodedMessage = encodeMessage(message); ProtonMessageConverter converter = new ProtonMessageConverter(new SimpleIDGenerator(0)); ServerJMSStreamMessage serverMessage = (ServerJMSStreamMessage) converter.inboundJMSType(encodedMessage); simulatePersistence(serverMessage); verifyProperties(serverMessage); serverMessage.reset(); assertEquals(10, serverMessage.readInt()); assertEquals("10", serverMessage.readString()); Object obj = converter.outbound((ServerMessage) serverMessage.getInnerMessage(), 0); reEncodeMsg(obj); MessageImpl outMessage = (MessageImpl) obj; List list = ((AmqpSequence) outMessage.getBody()).getValue(); Assert.assertEquals(Integer.valueOf(10), list.get(0)); Assert.assertEquals("10", list.get(1)); }
3. TestConversions#testSimpleConversionMap()
Project: activemq-artemis
File: TestConversions.java
File: TestConversions.java
@Test public void testSimpleConversionMap() throws Exception { Map<String, Object> mapprop = createPropertiesMap(); ApplicationProperties properties = new ApplicationProperties(mapprop); MessageImpl message = (MessageImpl) Message.Factory.create(); message.setApplicationProperties(properties); Map<String, Object> mapValues = new HashMap<>(); mapValues.put("somestr", "value"); mapValues.put("someint", Integer.valueOf(1)); message.setBody(new AmqpValue(mapValues)); EncodedMessage encodedMessage = encodeMessage(message); ProtonMessageConverter converter = new ProtonMessageConverter(new SimpleIDGenerator(0)); ServerJMSMapMessage serverMessage = (ServerJMSMapMessage) converter.inboundJMSType(encodedMessage); verifyProperties(serverMessage); Assert.assertEquals(1, serverMessage.getInt("someint")); Assert.assertEquals("value", serverMessage.getString("somestr")); Object obj = converter.outbound((ServerMessage) serverMessage.getInnerMessage(), 0); reEncodeMsg(obj); MessageImpl outMessage = (MessageImpl) obj; AmqpValue value = (AmqpValue) outMessage.getBody(); Map mapoutput = (Map) value.getValue(); assertEquals(Integer.valueOf(1), mapoutput.get("someint")); System.out.println("output = " + obj); }
4. TestConversions#testSimpleConversionBytes()
Project: activemq-artemis
File: TestConversions.java
File: TestConversions.java
@Test public void testSimpleConversionBytes() throws Exception { Map<String, Object> mapprop = createPropertiesMap(); ApplicationProperties properties = new ApplicationProperties(mapprop); MessageImpl message = (MessageImpl) Message.Factory.create(); message.setApplicationProperties(properties); byte[] bodyBytes = new byte[4]; for (int i = 0; i < bodyBytes.length; i++) { bodyBytes[i] = (byte) 0xff; } message.setBody(new Data(new Binary(bodyBytes))); EncodedMessage encodedMessage = encodeMessage(message); ProtonMessageConverter converter = new ProtonMessageConverter(new SimpleIDGenerator(0)); ServerJMSBytesMessage serverMessage = (ServerJMSBytesMessage) converter.inboundJMSType(encodedMessage); verifyProperties(serverMessage); assertEquals(bodyBytes.length, serverMessage.getBodyLength()); byte[] newBodyBytes = new byte[4]; serverMessage.readBytes(newBodyBytes); Assert.assertArrayEquals(bodyBytes, newBodyBytes); Object obj = converter.outbound((ServerMessage) serverMessage.getInnerMessage(), 0); System.out.println("output = " + obj); }
5. ProtonSessionIntegrationCallback#serverSend()
Project: activemq-artemis
File: ProtonSessionIntegrationCallback.java
File: ProtonSessionIntegrationCallback.java
@Override public void serverSend(final Receiver receiver, final Delivery delivery, String address, int messageFormat, ByteBuf messageEncoded) throws Exception { EncodedMessage encodedMessage = new EncodedMessage(messageFormat, messageEncoded.array(), messageEncoded.arrayOffset(), messageEncoded.writerIndex()); ServerMessage message = manager.getConverter().inbound(encodedMessage); //use the address on the receiver if not null, if null let's hope it was set correctly on the message if (address != null) { message.setAddress(new SimpleString(address)); } recoverContext(); try { serverSession.send(message, false); manager.getServer().getStorageManager().afterCompleteOperations(new IOCallback() { @Override public void done() { synchronized (connection.getLock()) { delivery.settle(); connection.flush(); } } @Override public void onError(int errorCode, String errorMessage) { synchronized (connection.getLock()) { receiver.setCondition(new ErrorCondition(AmqpError.ILLEGAL_STATE, errorCode + ":" + errorMessage)); connection.flush(); } } }); } finally { resetContext(); } }
6. ProtonMessageConverter#inboundJMSType()
Project: activemq-artemis
File: ProtonMessageConverter.java
File: ProtonMessageConverter.java
/** * Just create the JMS Part of the inbound (for testing) * * @param messageSource * @return * @throws Exception https://issues.jboss.org/browse/ENTMQ-1560 */ public ServerJMSMessage inboundJMSType(EncodedMessage messageSource) throws Exception { EncodedMessage encodedMessageSource = messageSource; ServerJMSMessage transformedMessage = null; InboundTransformer transformer = inboundTransformer; while (transformer != null) { try { transformedMessage = (ServerJMSMessage) transformer.transform(encodedMessageSource); break; } catch (Exception e) { ActiveMQClientLogger.LOGGER.debug("Transform of message using [{}] transformer, failed" + inboundTransformer.getTransformerName()); ActiveMQClientLogger.LOGGER.trace("Transformation error:", e); transformer = transformer.getFallbackTransformer(); } } if (transformedMessage == null) { throw new IOException("Failed to transform incoming delivery, skipping."); } transformedMessage.encode(); return transformedMessage; }