Example usage for org.springframework.jms.listener DefaultMessageListenerContainer setMaxConcurrentConsumers

List of usage examples for org.springframework.jms.listener DefaultMessageListenerContainer setMaxConcurrentConsumers

Introduction

In this page you can find the example usage for org.springframework.jms.listener DefaultMessageListenerContainer setMaxConcurrentConsumers.

Prototype

public void setMaxConcurrentConsumers(int maxConcurrentConsumers) 

Source Link

Document

Specify the maximum number of concurrent consumers to create.

Usage

From source file:com.alliander.osgp.adapter.protocol.iec61850.application.config.MessagingConfig.java

@Bean
public DefaultMessageListenerContainer osgpResponsesMessageListenerContainer() {
    final DefaultMessageListenerContainer messageListenerContainer = new DefaultMessageListenerContainer();
    messageListenerContainer.setConnectionFactory(this.pooledConnectionFactory());
    messageListenerContainer.setDestination(this.osgpResponsesQueue());
    messageListenerContainer.setConcurrentConsumers(Integer.parseInt(
            this.environment.getRequiredProperty(PROPERTY_NAME_JMS_OSGP_RESPONSES_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMaxConcurrentConsumers(Integer.parseInt(
            this.environment.getRequiredProperty(PROPERTY_NAME_JMS_OSGP_RESPONSES_MAX_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMessageListener(this.osgpResponseMessageListener());
    messageListenerContainer.setSessionTransacted(true);
    return messageListenerContainer;
}

From source file:com.alliander.osgp.adapter.protocol.iec61850.application.config.MessagingConfig.java

@Bean
public DefaultMessageListenerContainer iec61850RequestsMessageListenerContainer() {
    final DefaultMessageListenerContainer messageListenerContainer = new DefaultMessageListenerContainer();
    messageListenerContainer.setConnectionFactory(this.pooledConnectionFactory());
    messageListenerContainer.setDestination(this.iec61850RequestsQueue());
    messageListenerContainer.setConcurrentConsumers(Integer.parseInt(
            this.environment.getRequiredProperty(PROPERTY_NAME_JMS_IEC61850_REQUESTS_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMaxConcurrentConsumers(Integer.parseInt(this.environment
            .getRequiredProperty(PROPERTY_NAME_JMS_IEC61850_REQUESTS_MAX_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMessageListener(this.iec61850RequestsMessageListener);
    messageListenerContainer.setSessionTransacted(true);
    return messageListenerContainer;
}

From source file:com.alliander.osgp.adapter.protocol.oslp.application.config.MessagingConfig.java

@Bean
public DefaultMessageListenerContainer oslpRequestsMessageListenerContainer() {
    final DefaultMessageListenerContainer messageListenerContainer = new DefaultMessageListenerContainer();
    messageListenerContainer.setConnectionFactory(this.pooledConnectionFactory());
    messageListenerContainer.setDestination(this.oslpRequestsQueue());
    messageListenerContainer.setConcurrentConsumers(Integer.parseInt(
            this.environment.getRequiredProperty(PROPERTY_NAME_JMS_OSLP_REQUESTS_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMaxConcurrentConsumers(Integer.parseInt(
            this.environment.getRequiredProperty(PROPERTY_NAME_JMS_OSLP_REQUESTS_MAX_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMessageListener(this.oslpRequestsMessageListener);
    messageListenerContainer.setSessionTransacted(true);
    return messageListenerContainer;
}

From source file:com.alliander.osgp.adapter.protocol.oslp.application.config.MessagingConfig.java

@Bean
public DefaultMessageListenerContainer signingResponsesMessageListenerContainer() {
    final DefaultMessageListenerContainer messageListenerContainer = new DefaultMessageListenerContainer();
    messageListenerContainer.setConnectionFactory(this.pooledConnectionFactory());
    messageListenerContainer.setDestination(this.replyToQueue());
    messageListenerContainer.setConcurrentConsumers(Integer.parseInt(this.environment
            .getRequiredProperty(PROPERTY_NAME_JMS_SIGNING_SERVER_RESPONSES_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMaxConcurrentConsumers(Integer.parseInt(this.environment
            .getRequiredProperty(PROPERTY_NAME_JMS_SIGNING_SERVER_RESPONSES_MAX_CONCURRENT_CONSUMERS)));
    messageListenerContainer.setMessageListener(this.signingServerResponsesMessageListener);
    messageListenerContainer.setSessionTransacted(true);
    return messageListenerContainer;
}

From source file:com.ruyicai.msgcenter.jms.WithoutTMJmsConfiguration.java

protected void configureMessageListenerContainer(DefaultMessageListenerContainer container,
        JmsEndpoint endpoint) throws Exception {
    container.setConnectionFactory(getListenerConnectionFactory());
    if (endpoint instanceof DestinationEndpoint) {
        container.setDestinationResolver(createDestinationResolver((DestinationEndpoint) endpoint));
    } else if (destinationResolver != null) {
        container.setDestinationResolver(destinationResolver);
    }//from   ww  w .java 2  s  . co m
    container.setAutoStartup(autoStartup);

    if (durableSubscriptionName != null) {
        container.setDurableSubscriptionName(durableSubscriptionName);
        container.setSubscriptionDurable(true);
    }
    if (clientId != null) {
        container.setClientId(clientId);
    }

    if (exceptionListener != null) {
        container.setExceptionListener(exceptionListener);
    }

    container.setAcceptMessagesWhileStopping(acceptMessagesWhileStopping);
    container.setExposeListenerSession(exposeListenerSession);
    container.setSessionTransacted(transacted);

    if (endpoint.getSelector() != null && endpoint.getSelector().length() != 0) {
        container.setMessageSelector(endpoint.getSelector());
    }

    if (concurrentConsumers >= 0) {
        container.setConcurrentConsumers(concurrentConsumers);
    }

    if (cacheLevel >= 0) {
        container.setCacheLevel(cacheLevel);
    } else if (cacheLevelName != null) {
        container.setCacheLevelName(cacheLevelName);
    } else {
        container.setCacheLevel(defaultCacheLevel(endpoint));
    }

    if (idleTaskExecutionLimit >= 0) {
        container.setIdleTaskExecutionLimit(idleTaskExecutionLimit);
    }
    if (maxConcurrentConsumers > 0) {
        if (maxConcurrentConsumers < concurrentConsumers) {
            throw new IllegalArgumentException("Property maxConcurrentConsumers: " + maxConcurrentConsumers
                    + " must be higher than concurrentConsumers: " + concurrentConsumers);
        }
        container.setMaxConcurrentConsumers(maxConcurrentConsumers);
    }
    if (maxMessagesPerTask >= 0) {
        container.setMaxMessagesPerTask(maxMessagesPerTask);
    }
    container.setPubSubNoLocal(pubSubNoLocal);
    if (receiveTimeout >= 0) {
        container.setReceiveTimeout(receiveTimeout);
    }
    if (recoveryInterval >= 0) {
        container.setRecoveryInterval(recoveryInterval);
    }
    if (taskExecutor != null) {
        container.setTaskExecutor(taskExecutor);
    }
    if (transactionName != null) {
        container.setTransactionName(transactionName);
    }
    if (transactionTimeout >= 0) {
        container.setTransactionTimeout(transactionTimeout);
    }
}

From source file:org.apache.camel.component.jms.JmsConfiguration.java

protected void configureMessageListenerContainer(AbstractMessageListenerContainer container,
        JmsEndpoint endpoint) throws Exception {
    container.setConnectionFactory(getListenerConnectionFactory());
    if (endpoint instanceof DestinationEndpoint) {
        container.setDestinationResolver(createDestinationResolver((DestinationEndpoint) endpoint));
    } else if (destinationResolver != null) {
        container.setDestinationResolver(destinationResolver);
    }/* w w w.jav  a 2  s .  c om*/
    container.setAutoStartup(autoStartup);

    if (durableSubscriptionName != null) {
        container.setDurableSubscriptionName(durableSubscriptionName);
        container.setSubscriptionDurable(true);
    }
    if (durableSubscriptionName != null && clientId == null) {
        throw new IllegalArgumentException(
                "ClientId must be configured when subscription is durable for " + endpoint);
    }
    if (clientId != null) {
        container.setClientId(clientId);
    }

    if (exceptionListener != null) {
        container.setExceptionListener(exceptionListener);
    }

    container.setAcceptMessagesWhileStopping(acceptMessagesWhileStopping);
    container.setExposeListenerSession(exposeListenerSession);
    container.setSessionTransacted(transacted);
    if (transacted) {
        container.setSessionAcknowledgeMode(Session.SESSION_TRANSACTED);
    } else {
        if (acknowledgementMode >= 0) {
            container.setSessionAcknowledgeMode(acknowledgementMode);
        } else if (acknowledgementModeName != null) {
            container.setSessionAcknowledgeModeName(acknowledgementModeName);
        }
    }

    if (endpoint.getSelector() != null && endpoint.getSelector().length() != 0) {
        container.setMessageSelector(endpoint.getSelector());
    }

    if (container instanceof DefaultMessageListenerContainer) {
        // this includes DefaultMessageListenerContainer102
        DefaultMessageListenerContainer listenerContainer = (DefaultMessageListenerContainer) container;
        if (concurrentConsumers >= 0) {
            listenerContainer.setConcurrentConsumers(concurrentConsumers);
        }

        if (cacheLevel >= 0) {
            listenerContainer.setCacheLevel(cacheLevel);
        } else if (cacheLevelName != null) {
            listenerContainer.setCacheLevelName(cacheLevelName);
        } else {
            listenerContainer.setCacheLevel(defaultCacheLevel(endpoint));
        }

        if (idleTaskExecutionLimit >= 0) {
            listenerContainer.setIdleTaskExecutionLimit(idleTaskExecutionLimit);
        }
        if (maxConcurrentConsumers > 0) {
            if (maxConcurrentConsumers < concurrentConsumers) {
                throw new IllegalArgumentException("Property maxConcurrentConsumers: " + maxConcurrentConsumers
                        + " must be higher than concurrentConsumers: " + concurrentConsumers);
            }
            listenerContainer.setMaxConcurrentConsumers(maxConcurrentConsumers);
        }
        if (maxMessagesPerTask >= 0) {
            listenerContainer.setMaxMessagesPerTask(maxMessagesPerTask);
        }
        listenerContainer.setPubSubNoLocal(pubSubNoLocal);
        if (receiveTimeout >= 0) {
            listenerContainer.setReceiveTimeout(receiveTimeout);
        }
        if (recoveryInterval >= 0) {
            listenerContainer.setRecoveryInterval(recoveryInterval);
        }
        if (taskExecutor != null) {
            listenerContainer.setTaskExecutor(taskExecutor);
        }
        PlatformTransactionManager tm = getTransactionManager();
        if (tm != null && transacted) {
            listenerContainer.setTransactionManager(tm);
        } else if (transacted) {
            throw new IllegalArgumentException(
                    "Property transacted is enabled but a transactionManager was not injected!");
        }
        if (transactionName != null) {
            listenerContainer.setTransactionName(transactionName);
        }
        if (transactionTimeout >= 0) {
            listenerContainer.setTransactionTimeout(transactionTimeout);
        }
        if (taskExecutor != null) {
            listenerContainer.setTaskExecutor(taskExecutor);
        } else if (taskExecutorSpring2 != null) {
            // use reflection to invoke to support spring 2 when JAR is compiled with Spring 3.0
            IntrospectionSupport.setProperty(listenerContainer, "taskExecutor",
                    endpoint.getTaskExecutorSpring2());
        }
    } else if (container instanceof SimpleMessageListenerContainer) {
        // this includes SimpleMessageListenerContainer102
        SimpleMessageListenerContainer listenerContainer = (SimpleMessageListenerContainer) container;
        if (concurrentConsumers >= 0) {
            listenerContainer.setConcurrentConsumers(concurrentConsumers);
        }
        listenerContainer.setPubSubNoLocal(pubSubNoLocal);
        if (taskExecutor != null) {
            listenerContainer.setTaskExecutor(taskExecutor);
        } else if (taskExecutorSpring2 != null) {
            // use reflection to invoke to support spring 2 when JAR is compiled with Spring 3.0
            IntrospectionSupport.setProperty(listenerContainer, "taskExecutor",
                    endpoint.getTaskExecutorSpring2());
        }
    }
}