javax.jms.Message.setJMSCorrelationIDAsBytes()方法的使用及代码示例

x33g5p2x  于2022-01-24 转载在 其他  
字(8.7k)|赞(0)|评价(0)|浏览(221)

本文整理了Java中javax.jms.Message.setJMSCorrelationIDAsBytes()方法的一些代码示例,展示了Message.setJMSCorrelationIDAsBytes()的具体用法。这些代码示例主要来源于Github/Stackoverflow/Maven等平台,是从一些精选项目中提取出来的代码,具有较强的参考意义,能在一定程度帮忙到你。Message.setJMSCorrelationIDAsBytes()方法的具体详情如下:
包路径:javax.jms.Message
类名称:Message
方法名:setJMSCorrelationIDAsBytes

Message.setJMSCorrelationIDAsBytes介绍

[英]Sets the correlation ID as an array of bytes for the message.

The array is copied before the method returns, so future modifications to the array will not alter this message header.

If a provider supports the native concept of correlation ID, a JMS client may need to assign specific JMSCorrelationID values to match those expected by native messaging clients. JMS providers without native correlation ID values are not required to support this method and its corresponding get method; their implementation may throw a java.lang.UnsupportedOperationException.

The use of a byte[] value for JMSCorrelationID is non-portable.
[中]将相关ID设置为消息的字节数组。
在方法返回之前复制数组,因此以后对数组的修改不会改变此消息头。
如果提供者支持关联ID的本机概念,JMS客户机可能需要分配特定的JMSCorrelationID值,以匹配本机消息传递客户机期望的值。没有本机关联ID值的JMS提供程序不需要支持此方法及其相应的get方法;它们的实现可能会抛出一个java。lang.UnsupportedOperationException。
JMSCorrelationID使用byte[]值是不可移植的。

代码示例

代码示例来源:origin: wildfly/wildfly

  1. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);

代码示例来源:origin: org.jboss.jbossas/jboss-as-connector

  1. public void setJMSCorrelationIDAsBytes(byte[] correlationID) throws JMSException
  2. {
  3. message.setJMSCorrelationIDAsBytes(correlationID);
  4. }

代码示例来源:origin: org.apache.tomee/openejb-core

  1. @Override
  2. public void setJMSCorrelationIDAsBytes(final byte[] correlationID) throws JMSException {
  3. message.setJMSCorrelationIDAsBytes(correlationID);
  4. }

代码示例来源:origin: org.jboss.genericjms/generic-jms-ra-jar

  1. public void setJMSCorrelationIDAsBytes(byte[] correlationID) throws JMSException {
  2. message.setJMSCorrelationIDAsBytes(correlationID);
  3. }

代码示例来源:origin: org.apache.qpid/qpid-jca

  1. /**
  2. * Set correlation id
  3. * @param correlationID The value
  4. * @exception JMSException Thrown if an error occurs
  5. */
  6. public void setJMSCorrelationIDAsBytes(final byte[] correlationID) throws JMSException
  7. {
  8. if (_log.isTraceEnabled())
  9. {
  10. _log.trace("setJMSCorrelationIDAsBytes(" + correlationID + ")");
  11. }
  12. _message.setJMSCorrelationIDAsBytes(correlationID);
  13. }

代码示例来源:origin: org.apache.activemq/artemis-ra

  1. /**
  2. * Set correlation id
  3. *
  4. * @param correlationID The value
  5. * @throws JMSException Thrown if an error occurs
  6. */
  7. @Override
  8. public void setJMSCorrelationIDAsBytes(final byte[] correlationID) throws JMSException {
  9. if (ActiveMQRALogger.LOGGER.isTraceEnabled()) {
  10. ActiveMQRALogger.LOGGER.trace("setJMSCorrelationIDAsBytes(" + Arrays.toString(correlationID) + ")");
  11. }
  12. message.setJMSCorrelationIDAsBytes(correlationID);
  13. }

代码示例来源:origin: apache/activemq-artemis

  1. /**
  2. * Set correlation id
  3. *
  4. * @param correlationID The value
  5. * @throws JMSException Thrown if an error occurs
  6. */
  7. @Override
  8. public void setJMSCorrelationIDAsBytes(final byte[] correlationID) throws JMSException {
  9. if (ActiveMQRALogger.LOGGER.isTraceEnabled()) {
  10. ActiveMQRALogger.LOGGER.trace("setJMSCorrelationIDAsBytes(" + Arrays.toString(correlationID) + ")");
  11. }
  12. message.setJMSCorrelationIDAsBytes(correlationID);
  13. }

代码示例来源:origin: axis/axis

  1. private void setProperty(String property, Object value, Message message)
  2. throws JMSException
  3. {
  4. if(property == null)
  5. return;
  6. if(property.equals(JMSConstants.JMS_CORRELATION_ID))
  7. message.setJMSCorrelationID((String)value);
  8. else if(property.equals(JMSConstants.JMS_CORRELATION_ID_AS_BYTES))
  9. message.setJMSCorrelationIDAsBytes((byte[])value);
  10. else if(property.equals(JMSConstants.JMS_TYPE))
  11. message.setJMSType((String)value);
  12. else
  13. message.setObjectProperty(property, value);
  14. }
  15. }

代码示例来源:origin: org.apache.axis/axis

  1. private void setProperty(String property, Object value, Message message)
  2. throws JMSException
  3. {
  4. if(property == null)
  5. return;
  6. if(property.equals(JMSConstants.JMS_CORRELATION_ID))
  7. message.setJMSCorrelationID((String)value);
  8. else if(property.equals(JMSConstants.JMS_CORRELATION_ID_AS_BYTES))
  9. message.setJMSCorrelationIDAsBytes((byte[])value);
  10. else if(property.equals(JMSConstants.JMS_TYPE))
  11. message.setJMSType((String)value);
  12. else
  13. message.setObjectProperty(property, value);
  14. }
  15. }

代码示例来源:origin: org.apache.axis/com.springsource.org.apache.axis

  1. private void setProperty(String property, Object value, Message message)
  2. throws JMSException
  3. {
  4. if(property == null)
  5. return;
  6. if(property.equals(JMSConstants.JMS_CORRELATION_ID))
  7. message.setJMSCorrelationID((String)value);
  8. else if(property.equals(JMSConstants.JMS_CORRELATION_ID_AS_BYTES))
  9. message.setJMSCorrelationIDAsBytes((byte[])value);
  10. else if(property.equals(JMSConstants.JMS_TYPE))
  11. message.setJMSType((String)value);
  12. else
  13. message.setObjectProperty(property, value);
  14. }
  15. }

代码示例来源:origin: org.seasar.jms/s2jms-core

  1. /**
  2. * JMSメッセージのメッセージヘッダを設定します。
  3. * <p>
  4. * このインスタンスのプロパティの値をJMSメッセージのヘッダに設定します。<br>
  5. * 現在対応しているヘッダは{@link javax.jms.Message#setJMSCorrelationID}および
  6. * {@link javax.jms.Message#setJMSCorrelationIDAsBytes}だけです。
  7. * </p>
  8. *
  9. * @param message
  10. * JMSメッセージ
  11. * @throws JMSException
  12. * JMSメッセージにヘッダを設定できなかった場合にスローされます
  13. */
  14. protected void setupHeader(final Message message) throws JMSException {
  15. if (correlationID != null) {
  16. message.setJMSCorrelationID(correlationID);
  17. } else if (correlationIDAsBytes != null) {
  18. message.setJMSCorrelationIDAsBytes(correlationIDAsBytes);
  19. }
  20. if (replyTo != null) {
  21. message.setJMSReplyTo(replyTo);
  22. }
  23. }

代码示例来源:origin: org.apache.qpid/qpid-jms-client

  1. private void doSend(Destination destination, Message message) throws JMSException {
  2. if (message == null) {
  3. throw new MessageFormatException("Message must not be null");
  4. }
  5. for (Map.Entry<String, Object> entry : messageProperties.entrySet()) {
  6. message.setObjectProperty(entry.getKey(), entry.getValue());
  7. }
  8. if (correlationId != null) {
  9. message.setJMSCorrelationID(correlationId);
  10. }
  11. if (correlationIdBytes != null) {
  12. message.setJMSCorrelationIDAsBytes(correlationIdBytes);
  13. }
  14. if (type != null) {
  15. message.setJMSType(type);
  16. }
  17. if (replyTo != null) {
  18. message.setJMSReplyTo(replyTo);
  19. }
  20. session.send(producer, destination, message, deliveryMode, priority, timeToLive, disableMessageId, disableTimestamp, deliveryDelay, completionListener);
  21. }

代码示例来源:origin: apache/qpid-jms

  1. private void doSend(Destination destination, Message message) throws JMSException {
  2. if (message == null) {
  3. throw new MessageFormatException("Message must not be null");
  4. }
  5. for (Map.Entry<String, Object> entry : messageProperties.entrySet()) {
  6. message.setObjectProperty(entry.getKey(), entry.getValue());
  7. }
  8. if (correlationId != null) {
  9. message.setJMSCorrelationID(correlationId);
  10. }
  11. if (correlationIdBytes != null) {
  12. message.setJMSCorrelationIDAsBytes(correlationIdBytes);
  13. }
  14. if (type != null) {
  15. message.setJMSType(type);
  16. }
  17. if (replyTo != null) {
  18. message.setJMSReplyTo(replyTo);
  19. }
  20. session.send(producer, destination, message, deliveryMode, priority, timeToLive, disableMessageId, disableTimestamp, deliveryDelay, completionListener);
  21. }

代码示例来源:origin: org.apache.tomee/openejb-core

  1. @Override
  2. public JMSProducer send(final Destination destination, final Message message) {
  3. if (message == null) {
  4. throw new MessageFormatRuntimeException("null message");
  5. }
  6. try {
  7. if (jmsHeaderCorrelationID != null) {
  8. message.setJMSCorrelationID(jmsHeaderCorrelationID);
  9. }
  10. if (jmsHeaderCorrelationIDAsBytes != null && jmsHeaderCorrelationIDAsBytes.length > 0) {
  11. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);
  12. }
  13. if (jmsHeaderReplyTo != null) {
  14. message.setJMSReplyTo(jmsHeaderReplyTo);
  15. }
  16. if (jmsHeaderType != null) {
  17. message.setJMSType(jmsHeaderType);
  18. }
  19. setProperties(message);
  20. if (completionListener != null) {
  21. producer.send(destination, message, completionListener);
  22. } else {
  23. producer.send(destination, message);
  24. }
  25. } catch (final JMSException e) {
  26. throw toRuntimeException(e);
  27. }
  28. return this;
  29. }

代码示例来源:origin: apache/activemq-artemis

  1. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);

代码示例来源:origin: org.apache.activemq/artemis-jms-client-all

  1. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);

代码示例来源:origin: apache/activemq-artemis

  1. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);

代码示例来源:origin: org.jboss.eap/wildfly-client-all

  1. message.setJMSCorrelationIDAsBytes(jmsHeaderCorrelationIDAsBytes);

代码示例来源:origin: apache/activemq-artemis

  1. @Test
  2. public void testJMSDestination() throws Exception {
  3. Message m1 = queueProducerSession.createMessage();
  4. // Test with correlation id containing a message id
  5. final String messageID = "ID:812739812378";
  6. m1.setJMSCorrelationID(messageID);
  7. queueProducer.send(m1);
  8. Message m2 = queueConsumer.receive();
  9. ProxyAssertSupport.assertEquals(messageID, m2.getJMSCorrelationID());
  10. // Test with correlation id containing an application defined string
  11. Message m3 = queueProducerSession.createMessage();
  12. final String appDefinedID = "oiwedjiwjdoiwejdoiwjd";
  13. m3.setJMSCorrelationID(appDefinedID);
  14. queueProducer.send(m3);
  15. Message m4 = queueConsumer.receive();
  16. ProxyAssertSupport.assertEquals(appDefinedID, m4.getJMSCorrelationID());
  17. // Test with correlation id containing a byte[]
  18. Message m5 = queueProducerSession.createMessage();
  19. final byte[] bytes = new byte[]{-111, 45, 106, 3, -44};
  20. m5.setJMSCorrelationIDAsBytes(bytes);
  21. queueProducer.send(m5);
  22. Message m6 = queueConsumer.receive();
  23. assertByteArraysEqual(bytes, m6.getJMSCorrelationIDAsBytes());
  24. }

相关文章