
pl.allegro.tech.hermes.consumers.consumer.sender.jms.JmsMetadataAppender Maven / Gradle / Ivy
package pl.allegro.tech.hermes.consumers.consumer.sender.jms;
import pl.allegro.tech.hermes.consumers.consumer.trace.MetadataAppender;
import javax.jms.JMSException;
import javax.jms.JMSRuntimeException;
import javax.jms.Message;
import java.util.Map;
public class JmsMetadataAppender implements MetadataAppender {
@Override
public Message append(Message target, pl.allegro.tech.hermes.consumers.consumer.Message message) {
try {
for(Map.Entry entry : message.getExternalMetadata().entrySet()) {
target.setStringProperty(normalize(entry.getKey()), entry.getValue());
}
return target;
} catch(JMSException e) {
throw new JMSRuntimeException(e.getMessage(), e.getErrorCode(), e);
}
}
private static String normalize(String key) {
return key.replaceAll("-", "");
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy