javax.jms.BytesMessage#writeByte ( )源码实例Demo

下面列出了javax.jms.BytesMessage#writeByte ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

源代码1 项目: activemq-artemis   文件: JmsContextTest.java
@Test
public void bytesMessage() throws Exception {
   context = cf.createContext();
   try {
      JMSProducer producer = context.createProducer();
      BytesMessage bMsg = context.createBytesMessage();
      bMsg.setStringProperty("COM_SUN_JMS_TESTNAME", "sendAndRecvMsgOfEachTypeCLTest");
      bMsg.writeByte((byte) 1);
      bMsg.writeInt(22);
      CountDownLatch latch = new CountDownLatch(1);
      SimpleCompletionListener listener = new SimpleCompletionListener(latch);
      producer.setAsync(listener);
      producer.send(queue1, bMsg);
      assertTrue(latch.await(5, TimeUnit.SECONDS));
      assertEquals(listener.message.readByte(), (byte) 1);
      assertEquals(listener.message.readInt(), 22);
   } finally {
      context.close();
   }
}
 
源代码2 项目: activemq-artemis   文件: BytesMessageTest.java
@Override
protected void prepareMessage(final Message m) throws JMSException {
   super.prepareMessage(m);

   BytesMessage bm = (BytesMessage) m;

   bm.writeBoolean(true);
   bm.writeByte((byte) 3);
   bm.writeBytes(new byte[]{(byte) 4, (byte) 5, (byte) 6});
   bm.writeChar((char) 7);
   bm.writeDouble(8.0);
   bm.writeFloat(9.0f);
   bm.writeInt(10);
   bm.writeLong(11L);
   bm.writeShort((short) 12);
   bm.writeUTF("this is an UTF String");
   bm.reset();
}
 
源代码3 项目: activemq-artemis   文件: MessageHeaderTest.java
@Test
public void testCopyOnForeignBytesMessage() throws JMSException {
   ClientMessage clientMessage = new ClientMessageImpl(ActiveMQTextMessage.TYPE, true, 0, System.currentTimeMillis(), (byte) 4, 1000);
   ClientSession session = new FakeSession(clientMessage);

   BytesMessage foreignBytesMessage = new SimpleJMSBytesMessage();
   for (int i = 0; i < 20; i++) {
      foreignBytesMessage.writeByte((byte) i);
   }

   ActiveMQBytesMessage copy = new ActiveMQBytesMessage(foreignBytesMessage, session);

   foreignBytesMessage.reset();
   copy.reset();

   MessageHeaderTestBase.ensureEquivalent(foreignBytesMessage, copy);
}
 
源代码4 项目: activemq-artemis   文件: JmsContextTest.java
@Test
public void testReceiveBytes() throws Exception {
   JMSProducer producer = context.createProducer();

   JMSConsumer consumer = context.createConsumer(queue1);

   BytesMessage bytesSend = context.createBytesMessage();
   bytesSend.writeByte((byte) 1);
   bytesSend.writeLong(2L);
   producer.send(queue1, bytesSend);

   BytesMessage msgReceived = (BytesMessage) consumer.receiveNoWait();

   byte[] bytesArray = msgReceived.getBody(byte[].class);

   assertEquals((byte) 1, msgReceived.readByte());
   assertEquals(2L, msgReceived.readLong());

   DataInputStream dataInputStream = new DataInputStream(new ByteArrayInputStream(bytesArray));

   assertEquals((byte) 1, dataInputStream.readByte());
   assertEquals(2L, dataInputStream.readLong());

}
 
/**
 * @param type
 * @throws JMSException
 */
private Object createBodySendAndReceive(JmsMessageType type) throws JMSException {
   Object res = null;
   Message msg = null;
   switch (type) {
      case BYTE:
         BytesMessage mByte = queueProducerSession.createBytesMessage();
         final int size = 20;
         byte[] resByte = new byte[size];
         for (int i = 0; i < size; i++) {
            resByte[i] = (byte) i;
            mByte.writeByte((byte) i);
         }
         msg = mByte;
         res = resByte;
         break;
      case TEXT:
         res = "JMS2";
         msg = queueProducerSession.createTextMessage("JMS2");
         break;
      case STREAM:
         msg = queueProducerSession.createStreamMessage();
         break;
      case OBJECT:
         res = new Double(37.6);
         msg = queueProducerSession.createObjectMessage(new Double(37.6));
         break;
      case MAP:
         MapMessage msg1 = queueProducerSession.createMapMessage();
         msg1.setInt("int", 13);
         msg1.setLong("long", 37L);
         msg1.setString("string", "crocodile");
         msg = msg1;
         Map<String, Object> map = new HashMap<>();
         map.put("int", Integer.valueOf(13));
         map.put("long", Long.valueOf(37L));
         map.put("string", "crocodile");
         res = map;
         break;
      default:
         Assert.fail("no default...");
   }
   Assert.assertNotNull(msg);
   msg.setStringProperty("type", type.toString());
   queueProducer.send(msg);
   return res;
}