com.undefinedlabs.scope.rules.utils.extractors.MessageProducerContextExtractorDestMsgFull Maven / Gradle / Ivy
package com.undefinedlabs.scope.rules.utils.extractors;
import com.undefinedlabs.scope.rules.utils.MessageProducerContext;
import com.undefinedlabs.scope.rules.utils.MessageProducerContextExtractor;
import javax.jms.Destination;
import javax.jms.Message;
public enum MessageProducerContextExtractorDestMsgFull implements MessageProducerContextExtractor {
INSTANCE;
public static final String DEST_MSG_FULL_METHOD_PARAMS_SIGNATURE = "(javax.jms.Destination,javax.jms.Message,int,int,long)";
public MessageProducerContext extract(final Object[] methodArguments) {
final Destination destination = (Destination) methodArguments[0];
final Message message = (Message) methodArguments[1];
final int deliveryMode = (int) methodArguments[2];
final int priority = (int) methodArguments[3];
final long timeToLive = (long) methodArguments[4];
final MessageProducerContext.Builder ctxBuilder = MessageProducerContext.newBuilder();
return ctxBuilder.withDestination(destination)
.withMessage(message)
.withDeliveryMode(deliveryMode)
.withPriority(priority)
.withTimeToLive(timeToLive)
.build();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy