@Override public Object ungetValue(ServiceValueContext valueContext) throws Throwable { if (property == null || property.length() == 0) { KernelController controller = valueContext.getController(); ControllerState state = dependentState; if (state == null) state = ControllerState.INSTALLED; ControllerContext context = controller.getContext(dependency, state); if (context != null) { ungetTarget(underlyingContext, context); return null; } } return super.ungetValue(valueContext); }