Browse Source

Expose setExceptionListener on AbstractJmsListenerContainerFactory

Closes gh-22102
pull/25477/head
Juergen Hoeller 5 years ago
parent
commit
165a6f186d
  1. 40
      spring-jms/src/main/java/org/springframework/jms/config/AbstractJmsListenerContainerFactory.java

40
spring-jms/src/main/java/org/springframework/jms/config/AbstractJmsListenerContainerFactory.java

@ -1,5 +1,5 @@
/* /*
* Copyright 2002-2018 the original author or authors. * Copyright 2002-2020 the original author or authors.
* *
* Licensed under the Apache License, Version 2.0 (the "License"); * Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License. * you may not use this file except in compliance with the License.
@ -17,6 +17,7 @@
package org.springframework.jms.config; package org.springframework.jms.config;
import javax.jms.ConnectionFactory; import javax.jms.ConnectionFactory;
import javax.jms.ExceptionListener;
import org.apache.commons.logging.Log; import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory; import org.apache.commons.logging.LogFactory;
@ -48,10 +49,13 @@ public abstract class AbstractJmsListenerContainerFactory<C extends AbstractMess
private DestinationResolver destinationResolver; private DestinationResolver destinationResolver;
@Nullable @Nullable
private ErrorHandler errorHandler; private MessageConverter messageConverter;
@Nullable @Nullable
private MessageConverter messageConverter; private ExceptionListener exceptionListener;
@Nullable
private ErrorHandler errorHandler;
@Nullable @Nullable
private Boolean sessionTransacted; private Boolean sessionTransacted;
@ -99,17 +103,25 @@ public abstract class AbstractJmsListenerContainerFactory<C extends AbstractMess
} }
/** /**
* @see AbstractMessageListenerContainer#setErrorHandler(ErrorHandler) * @see AbstractMessageListenerContainer#setMessageConverter(MessageConverter)
*/ */
public void setErrorHandler(ErrorHandler errorHandler) { public void setMessageConverter(MessageConverter messageConverter) {
this.errorHandler = errorHandler; this.messageConverter = messageConverter;
} }
/** /**
* @see AbstractMessageListenerContainer#setMessageConverter(MessageConverter) * @since 5.2.8
* @see AbstractMessageListenerContainer#setExceptionListener(ExceptionListener)
*/ */
public void setMessageConverter(MessageConverter messageConverter) { public void setExceptionListener(ExceptionListener exceptionListener) {
this.messageConverter = messageConverter; this.exceptionListener = exceptionListener;
}
/**
* @see AbstractMessageListenerContainer#setErrorHandler(ErrorHandler)
*/
public void setErrorHandler(ErrorHandler errorHandler) {
this.errorHandler = errorHandler;
} }
/** /**
@ -182,6 +194,7 @@ public abstract class AbstractJmsListenerContainerFactory<C extends AbstractMess
this.autoStartup = autoStartup; this.autoStartup = autoStartup;
} }
@Override @Override
public C createListenerContainer(JmsListenerEndpoint endpoint) { public C createListenerContainer(JmsListenerEndpoint endpoint) {
C instance = createContainerInstance(); C instance = createContainerInstance();
@ -192,12 +205,15 @@ public abstract class AbstractJmsListenerContainerFactory<C extends AbstractMess
if (this.destinationResolver != null) { if (this.destinationResolver != null) {
instance.setDestinationResolver(this.destinationResolver); instance.setDestinationResolver(this.destinationResolver);
} }
if (this.errorHandler != null) {
instance.setErrorHandler(this.errorHandler);
}
if (this.messageConverter != null) { if (this.messageConverter != null) {
instance.setMessageConverter(this.messageConverter); instance.setMessageConverter(this.messageConverter);
} }
if (this.exceptionListener != null) {
instance.setExceptionListener(this.exceptionListener);
}
if (this.errorHandler != null) {
instance.setErrorHandler(this.errorHandler);
}
if (this.sessionTransacted != null) { if (this.sessionTransacted != null) {
instance.setSessionTransacted(this.sessionTransacted); instance.setSessionTransacted(this.sessionTransacted);
} }

Loading…
Cancel
Save