Skip to content

Commit d4680dc

Browse files
committed
feat: allow shutdown handler methods to return ShutdownResponse while accepting no parameters
1 parent c6dba74 commit d4680dc

1 file changed

Lines changed: 6 additions & 9 deletions

File tree

src/main/java/es/us/isa/botica/inspect/ComponentInspector.java

Lines changed: 6 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -154,19 +154,16 @@ private ShutdownRequestHook buildShutdownRequestHook(Object component, Method me
154154

155155
private void handleShutdownRequest(
156156
Method method, Object component, ShutdownRequest request, ShutdownResponse response) {
157-
ShutdownResponse returnValue = null;
158-
157+
Object result;
159158
if (method.getParameterCount() == 0) {
160-
ReflectionUtils.invoke(method, component);
159+
result = ReflectionUtils.invoke(method, component);
161160
} else {
162-
Object result = ReflectionUtils.invoke(method, component, request);
163-
if (result instanceof ShutdownResponse) {
164-
returnValue = (ShutdownResponse) result;
165-
}
161+
result = ReflectionUtils.invoke(method, component, request);
166162
}
167163

168-
if (returnValue != null) {
169-
response.setCanceled(response.isCanceled() || returnValue.isCanceled());
164+
if (request != null && result instanceof ShutdownResponse) {
165+
ShutdownResponse returnedResponse = (ShutdownResponse) result;
166+
response.setCanceled(response.isCanceled() || returnedResponse.isCanceled());
170167
}
171168
}
172169
}

0 commit comments

Comments
 (0)