All Downloads are FREE. Search and download functionalities are using the official Maven repository.

entry-point.mq-listener-sync.sample-mq-message-listener.mustache Maven / Gradle / Ivy

Go to download

Gradle plugin to create a clean application in Java that already works, It follows our best practices!

There is a newer version: 3.20.10
Show newest version
package {{package}}.mq.listener;

import co.com.bancolombia.commons.jms.mq.MQListener;
{{#metrics}}
import io.micrometer.core.instrument.Metrics;
import io.micrometer.core.instrument.Timer;
{{/metrics}}
{{#lombok}}
import lombok.AllArgsConstructor;
{{/lombok}}
import org.springframework.stereotype.Component;

import jakarta.jms.JMSException;
import jakarta.jms.Message;
import jakarta.jms.TextMessage;
{{#metrics}}
import java.util.concurrent.TimeUnit;
{{/metrics}}

@Component
{{#lombok}}
@AllArgsConstructor
{{/lombok}}
public class SampleMQMessageListener {
    {{#metrics}}
    private final Timer timer = Metrics.timer("mq_receive_message", "operation", "my-operation"); // TODO: Change operation name
    {{/metrics}}
    // private final SampleUseCase useCase;

    {{^lombok}}
    public SampleMQMessageListener(/*SampleUseCase useCase*/) {
        // this.useCase = useCase;
    }

    {{/lombok}}
    // For fixed queues
    @MQListener("${commons.jms.input-queue}")
    public void process(Message message) throws JMSException {
        {{#metrics}}
        timer.record(System.currentTimeMillis() - message.getJMSTimestamp(), TimeUnit.MILLISECONDS);
        {{/metrics}}
        String text = ((TextMessage) message).getText();
        // useCase.sample(text);
    }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy