@Override protected void handleMessageInternal(Message<?> message) throws Exception { MessageValues messageToSend = serializePayloadIfNecessary(message); if (replyTo != null) { messageToSend.put(AmqpHeaders.REPLY_TO, this.replyTo); } if (this.partitioningMetadata.isPartitionedModule()) { messageToSend.put(PARTITION_HEADER, determinePartition(message, this.partitioningMetadata)); } this.delegate.handleMessage(messageToSend.toMessage(getMessageBuilderFactory())); }
@Override @SuppressWarnings("unchecked") protected Object handleRequestMessage(Message<?> requestMessage) { if (Mode.embeddedHeaders.equals(mode)) { MessageValues messageValues; try { messageValues = embeddedHeadersMessageConverter.extractHeaders( (Message<byte[]>) requestMessage, true); } catch (Exception e) { logger.error(EmbeddedHeadersMessageConverter.decodeExceptionMessage(requestMessage), e); messageValues = new MessageValues(requestMessage); } messageValues = deserializePayloadIfNecessary(messageValues); return MessageBuilder.createMessage( messageValues.getPayload(), new KafkaBinderHeaders(messageValues)); } else { return requestMessage; } }