This is an automated email from the ASF dual-hosted git repository. rotty3000 pushed a commit to branch rotty3000/eliminate-double-start in repository https://gitbox.apache.org/repos/asf/aries-cdi.git
View the commit online: https://github.com/apache/aries-cdi/commit/3dd498c432af5916a0836a149b731817d2a231da commit 3dd498c432af5916a0836a149b731817d2a231da Author: Raymond Augé <rotty3...@apache.org> AuthorDate: Wed Nov 20 22:46:44 2019 -0500 handle ISE during shutdown Signed-off-by: Raymond Augé <rotty3...@apache.org> --- .../aries/cdi/extension/http/HttpExtension.java | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/cdi-extension-http/src/main/java/org/apache/aries/cdi/extension/http/HttpExtension.java b/cdi-extension-http/src/main/java/org/apache/aries/cdi/extension/http/HttpExtension.java index 2506dcb..d9ba270 100644 --- a/cdi-extension-http/src/main/java/org/apache/aries/cdi/extension/http/HttpExtension.java +++ b/cdi-extension-http/src/main/java/org/apache/aries/cdi/extension/http/HttpExtension.java @@ -14,14 +14,11 @@ package org.apache.aries.cdi.extension.http; -import static javax.interceptor.Interceptor.Priority.LIBRARY_AFTER; -import static org.osgi.framework.Constants.SERVICE_DESCRIPTION; -import static org.osgi.framework.Constants.SERVICE_RANKING; -import static org.osgi.framework.Constants.SERVICE_VENDOR; -import static org.osgi.namespace.extender.ExtenderNamespace.EXTENDER_NAMESPACE; -import static org.osgi.service.cdi.CDIConstants.CDI_CAPABILITY_NAME; -import static org.osgi.service.http.whiteboard.HttpWhiteboardConstants.HTTP_WHITEBOARD_CONTEXT_SELECT; -import static org.osgi.service.http.whiteboard.HttpWhiteboardConstants.HTTP_WHITEBOARD_LISTENER; +import static javax.interceptor.Interceptor.Priority.*; +import static org.osgi.framework.Constants.*; +import static org.osgi.namespace.extender.ExtenderNamespace.*; +import static org.osgi.service.cdi.CDIConstants.*; +import static org.osgi.service.http.whiteboard.HttpWhiteboardConstants.*; import java.lang.annotation.Annotation; import java.lang.reflect.Type; @@ -259,7 +256,12 @@ public class HttpExtension implements Extension { void beforeShutdown(@Observes BeforeShutdown bs) { if (_listenerRegistration != null && !destroyed.get()) { - _listenerRegistration.unregister(); + try { + _listenerRegistration.unregister(); + } + catch (IllegalStateException ise) { + // the service was already unregistered. + } } }