@Override public Response processMessage(Message send) throws Exception { if (send != null) { if (trackTransactions && send.getTransactionId() != null) { ProducerId producerId = send.getProducerId(); ConnectionId connectionId = producerId.getParentId().getParentId(); if (connectionId != null) { ConnectionState cs = connectionStates.get(connectionId); if (cs != null) { TransactionState transactionState = cs.getTransactionState(send.getTransactionId()); if (transactionState != null) { transactionState.addCommand(send); if (trackTransactionProducers) { // for jmstemplate, track the producer in case it is closed before commit // and needs to be replayed SessionState ss = cs.getSessionState(producerId.getParentId()); ProducerState producerState = ss.getProducerState(producerId); producerState.setTransactionState(transactionState); } } } } return TRACKED_RESPONSE_MARKER; }else if (trackMessages) { messageCache.put(send.getMessageId(), send); } } return null; }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
protected Message configureMessage(MessageDispatch md) throws IOException { Message message = md.getMessage().copy(); // Update the packet to show where it came from. message.setBrokerPath(appendToBrokerPath(message.getBrokerPath(), localBrokerPath)); message.setProducerId(producerInfo.getProducerId()); message.setDestination(md.getDestination()); message.setMemoryUsage(null); if (message.getOriginalTransactionId() == null) { message.setOriginalTransactionId(message.getTransactionId()); } message.setTransactionId(null); if (configuration.isUseCompression()) { message.compress(); } return message; }
if (message.getOriginalDestination() != null) { message.setOriginalDestination(message.getDestination()); if (message.getOriginalTransactionId() != null) { message.setOriginalTransactionId(message.getTransactionId());
public static void doResend(final ConnectionContext context, Message originalMessage, ActiveMQDestination deadLetterDestination, boolean copy) throws Exception { Message message = copy ? originalMessage.copy() : originalMessage; message.setOriginalDestination(message.getDestination()); message.setOriginalTransactionId(message.getTransactionId()); message.setDestination(deadLetterDestination); message.setTransactionId(null); message.setMemoryUsage(null); message.setRedeliveryCounter(0); message.getMessageId().setDataLocator(null); boolean originalFlowControl = context.isProducerFlowControl(); try { context.setProducerFlowControl(false); ProducerInfo info = new ProducerInfo(); ProducerState state = new ProducerState(info); ProducerBrokerExchange producerExchange = new ProducerBrokerExchange(); producerExchange.setProducerState(state); producerExchange.setMutable(true); producerExchange.setConnectionContext(context); context.getBroker().send(producerExchange, message); } finally { context.setProducerFlowControl(originalFlowControl); } }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
protected Message configureMessage(MessageDispatch md) { Message message = md.getMessage().copy(); // Update the packet to show where it came from. message.setBrokerPath(appendToBrokerPath(message.getBrokerPath(), localBrokerPath)); message.setProducerId(producerInfo.getProducerId()); message.setDestination(md.getDestination()); if (message.getOriginalTransactionId() == null) { message.setOriginalTransactionId(message.getTransactionId()); } message.setTransactionId(null); return message; }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
protected Message configureMessage(MessageDispatch md) throws IOException { Message message = md.getMessage().copy(); // Update the packet to show where it came from. message.setBrokerPath(appendToBrokerPath(message.getBrokerPath(), localBrokerPath)); message.setProducerId(producerInfo.getProducerId()); message.setDestination(md.getDestination()); message.setMemoryUsage(null); if (message.getOriginalTransactionId() == null) { message.setOriginalTransactionId(message.getTransactionId()); } message.setTransactionId(null); if (configuration.isUseCompression()) { message.compress(); } return message; }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
protected Message configureMessage(MessageDispatch md) throws IOException { Message message = md.getMessage().copy(); // Update the packet to show where it came from. message.setBrokerPath(appendToBrokerPath(message.getBrokerPath(), localBrokerPath)); message.setProducerId(producerInfo.getProducerId()); message.setDestination(md.getDestination()); message.setMemoryUsage(null); if (message.getOriginalTransactionId() == null) { message.setOriginalTransactionId(message.getTransactionId()); } message.setTransactionId(null); if (configuration.isUseCompression()) { message.compress(); } return message; }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
protected Message configureMessage(MessageDispatch md) throws IOException { Message message = md.getMessage().copy(); // Update the packet to show where it came from. message.setBrokerPath(appendToBrokerPath(message.getBrokerPath(), localBrokerPath)); message.setProducerId(producerInfo.getProducerId()); message.setDestination(md.getDestination()); message.setMemoryUsage(null); if (message.getOriginalTransactionId() == null) { message.setOriginalTransactionId(message.getTransactionId()); } message.setTransactionId(null); if (configuration.isUseCompression()) { message.compress(); } return message; }
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
looseMarshalCachedObject(wireFormat, (DataStructure)info.getProducerId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getDestination(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getTransactionId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut); looseMarshalNestedObject(wireFormat, (DataStructure)info.getMessageId(), dataOut); looseMarshalCachedObject(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut); looseMarshalString(info.getGroupID(), dataOut); dataOut.writeInt(info.getGroupSequence()); looseMarshalString(info.getCorrelationId(), dataOut); dataOut.writeBoolean(info.isPersistent()); looseMarshalLong(wireFormat, info.getExpiration(), dataOut); dataOut.writeByte(info.getPriority()); looseMarshalNestedObject(wireFormat, (DataStructure)info.getReplyTo(), dataOut); looseMarshalLong(wireFormat, info.getTimestamp(), dataOut); looseMarshalString(info.getType(), dataOut); looseMarshalByteSequence(wireFormat, info.getContent(), dataOut); looseMarshalByteSequence(wireFormat, info.getMarshalledProperties(), dataOut); dataOut.writeBoolean(info.isCompressed()); dataOut.writeInt(info.getRedeliveryCounter()); looseMarshalObjectArray(wireFormat, info.getBrokerPath(), dataOut); looseMarshalLong(wireFormat, info.getArrival(), dataOut); looseMarshalString(info.getUserID(), dataOut);
tightMarshalCachedObject2(wireFormat, (DataStructure)info.getProducerId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getDestination(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getTransactionId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut, bs); tightMarshalNestedObject2(wireFormat, (DataStructure)info.getMessageId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut, bs); tightMarshalString2(info.getGroupID(), dataOut, bs); dataOut.writeInt(info.getGroupSequence()); tightMarshalString2(info.getCorrelationId(), dataOut, bs); bs.readBoolean(); tightMarshalLong2(wireFormat, info.getExpiration(), dataOut, bs); dataOut.writeByte(info.getPriority()); tightMarshalNestedObject2(wireFormat, (DataStructure)info.getReplyTo(), dataOut, bs); tightMarshalLong2(wireFormat, info.getTimestamp(), dataOut, bs); tightMarshalString2(info.getType(), dataOut, bs); tightMarshalByteSequence2(info.getContent(), dataOut, bs); tightMarshalByteSequence2(info.getMarshalledProperties(), dataOut, bs); bs.readBoolean(); dataOut.writeInt(info.getRedeliveryCounter()); tightMarshalObjectArray2(wireFormat, info.getBrokerPath(), dataOut, bs); tightMarshalLong2(wireFormat, info.getArrival(), dataOut, bs); tightMarshalString2(info.getUserID(), dataOut, bs);
tightMarshalCachedObject2(wireFormat, (DataStructure)info.getProducerId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getDestination(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getTransactionId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getOriginalDestination(), dataOut, bs); tightMarshalNestedObject2(wireFormat, (DataStructure)info.getMessageId(), dataOut, bs); tightMarshalCachedObject2(wireFormat, (DataStructure)info.getOriginalTransactionId(), dataOut, bs); tightMarshalString2(info.getGroupID(), dataOut, bs); dataOut.writeInt(info.getGroupSequence()); tightMarshalString2(info.getCorrelationId(), dataOut, bs); bs.readBoolean(); tightMarshalLong2(wireFormat, info.getExpiration(), dataOut, bs); dataOut.writeByte(info.getPriority()); tightMarshalNestedObject2(wireFormat, (DataStructure)info.getReplyTo(), dataOut, bs); tightMarshalLong2(wireFormat, info.getTimestamp(), dataOut, bs); tightMarshalString2(info.getType(), dataOut, bs); tightMarshalByteSequence2(info.getContent(), dataOut, bs); tightMarshalByteSequence2(info.getMarshalledProperties(), dataOut, bs); bs.readBoolean(); dataOut.writeInt(info.getRedeliveryCounter()); tightMarshalObjectArray2(wireFormat, info.getBrokerPath(), dataOut, bs); tightMarshalLong2(wireFormat, info.getArrival(), dataOut, bs); tightMarshalString2(info.getUserID(), dataOut, bs);
rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getProducerId(), bs); rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getDestination(), bs); rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getTransactionId(), bs); rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getOriginalDestination(), bs); rc += tightMarshalNestedObject1(wireFormat, (DataStructure)info.getMessageId(), bs); rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getOriginalTransactionId(), bs); rc += tightMarshalString1(info.getGroupID(), bs); rc += tightMarshalString1(info.getCorrelationId(), bs); bs.writeBoolean(info.isPersistent()); rc += tightMarshalLong1(wireFormat, info.getExpiration(), bs); rc += tightMarshalNestedObject1(wireFormat, (DataStructure)info.getReplyTo(), bs); rc += tightMarshalLong1(wireFormat, info.getTimestamp(), bs); rc += tightMarshalString1(info.getType(), bs); rc += tightMarshalByteSequence1(info.getContent(), bs); rc += tightMarshalByteSequence1(info.getMarshalledProperties(), bs); rc += tightMarshalCachedObject1(wireFormat, (DataStructure)info.getTargetConsumerId(), bs); bs.writeBoolean(info.isCompressed()); rc += tightMarshalObjectArray1(wireFormat, info.getBrokerPath(), bs); rc += tightMarshalLong1(wireFormat, info.getArrival(), bs); rc += tightMarshalString1(info.getUserID(), bs);