Skip to content

Commit 44e2921

Browse files
committed
ExecutorSubscribableChannel's SendTask actually returns local MessageHandler now
Issue: Issue: SPR-12272
1 parent d778037 commit 44e2921

File tree

1 file changed

+9
-11
lines changed

1 file changed

+9
-11
lines changed

spring-messaging/src/main/java/org/springframework/messaging/support/ExecutorSubscribableChannel.java

Lines changed: 9 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -105,25 +105,23 @@ private class SendTask implements MessageHandlingRunnable {
105105

106106
private final Message<?> inputMessage;
107107

108-
private final MessageHandler handler;
108+
private final MessageHandler messageHandler;
109109

110110
private int interceptorIndex = -1;
111111

112-
113-
public SendTask(Message<?> message, MessageHandler handler) {
112+
public SendTask(Message<?> message, MessageHandler messageHandler) {
114113
this.inputMessage = message;
115-
this.handler = handler;
114+
this.messageHandler = messageHandler;
116115
}
117116

118-
119117
@Override
120118
public Message<?> getMessage() {
121119
return this.inputMessage;
122120
}
123121

124122
@Override
125123
public MessageHandler getMessageHandler() {
126-
return this.getMessageHandler();
124+
return this.messageHandler;
127125
}
128126

129127
@Override
@@ -134,27 +132,27 @@ public void run() {
134132
if (message == null) {
135133
return;
136134
}
137-
this.handler.handleMessage(message);
135+
this.messageHandler.handleMessage(message);
138136
triggerAfterMessageHandled(message, null);
139137
}
140138
catch (Exception ex) {
141139
triggerAfterMessageHandled(message, ex);
142140
if (ex instanceof MessagingException) {
143141
throw (MessagingException) ex;
144142
}
145-
String description = "Failed to handle " + message + " to " + this + " in " + this.handler;
143+
String description = "Failed to handle " + message + " to " + this + " in " + this.messageHandler;
146144
throw new MessageDeliveryException(message, description, ex);
147145
}
148146
catch (Error ex) {
149-
String description = "Failed to handle " + message + " to " + this + " in " + this.handler;
147+
String description = "Failed to handle " + message + " to " + this + " in " + this.messageHandler;
150148
triggerAfterMessageHandled(message, new MessageDeliveryException(message, description, ex));
151149
throw ex;
152150
}
153151
}
154152

155153
private Message<?> applyBeforeHandle(Message<?> message) {
156154
for (ExecutorChannelInterceptor interceptor : executorInterceptors) {
157-
message = interceptor.beforeHandle(message, ExecutorSubscribableChannel.this, this.handler);
155+
message = interceptor.beforeHandle(message, ExecutorSubscribableChannel.this, this.messageHandler);
158156
if (message == null) {
159157
String name = interceptor.getClass().getSimpleName();
160158
if (logger.isDebugEnabled()) {
@@ -172,7 +170,7 @@ private void triggerAfterMessageHandled(Message<?> message, Exception ex) {
172170
for (int i = this.interceptorIndex; i >= 0; i--) {
173171
ExecutorChannelInterceptor interceptor = executorInterceptors.get(i);
174172
try {
175-
interceptor.afterMessageHandled(message, ExecutorSubscribableChannel.this, this.handler, ex);
173+
interceptor.afterMessageHandled(message, ExecutorSubscribableChannel.this, this.messageHandler, ex);
176174
}
177175
catch (Throwable ex2) {
178176
logger.error("Exception from afterMessageHandled in " + interceptor, ex2);

0 commit comments

Comments
 (0)