Fix modernization issues
[controller.git] / opendaylight / blueprint / src / main / java / org / opendaylight / controller / blueprint / ext / StaticServiceReferenceRecipe.java
index 368980565525c600bad52cd378302a3262400a25..525fc82c197762d6a735f81fa20b668dc3048188 100644 (file)
@@ -7,7 +7,9 @@
  */
 package org.opendaylight.controller.blueprint.ext;
 
-import com.google.common.base.Preconditions;
+import static com.google.common.base.Preconditions.checkNotNull;
+import static java.util.Objects.requireNonNull;
+
 import java.util.Collections;
 import java.util.function.Consumer;
 import org.apache.aries.blueprint.container.AbstractServiceReferenceRecipe;
@@ -28,37 +30,37 @@ class StaticServiceReferenceRecipe extends AbstractServiceReferenceRecipe {
     private static final Logger LOG = LoggerFactory.getLogger(StaticServiceReferenceRecipe.class);
 
     private static final SatisfactionListener NOOP_LISTENER = satisfiable -> {
-
+        // Intentional NOOP
     };
 
     private volatile ServiceReference<?> trackedServiceReference;
     private volatile Object trackedService;
     private Consumer<Object> serviceSatisfiedCallback;
 
-    StaticServiceReferenceRecipe(String name, ExtendedBlueprintContainer blueprintContainer,
-            String interfaceClass) {
+    StaticServiceReferenceRecipe(final String name, final ExtendedBlueprintContainer blueprintContainer,
+            final String interfaceClass) {
         super(name, blueprintContainer, new MandatoryServiceReferenceMetadata(name, interfaceClass), null, null,
                 Collections.emptyList());
     }
 
-    void startTracking(Consumer<Object> newServiceSatisfiedCallback) {
+    void startTracking(final Consumer<Object> newServiceSatisfiedCallback) {
         this.serviceSatisfiedCallback = newServiceSatisfiedCallback;
         super.start(NOOP_LISTENER);
     }
 
     @SuppressWarnings("rawtypes")
     @Override
-    protected void track(ServiceReference reference) {
+    protected void track(final ServiceReference reference) {
         retrack();
     }
 
     @SuppressWarnings("rawtypes")
     @Override
-    protected void untrack(ServiceReference reference) {
+    protected void untrack(final ServiceReference reference) {
         LOG.debug("{}: In untrack {}", getName(), reference);
 
         if (trackedServiceReference == reference) {
-            LOG.debug("{}: Current reference has been untracked", getName(), trackedServiceReference);
+            LOG.debug("{}: Current reference {} has been untracked", getName(), trackedServiceReference);
         }
     }
 
@@ -78,13 +80,15 @@ class StaticServiceReferenceRecipe extends AbstractServiceReferenceRecipe {
     }
 
     @Override
+    // Disables "Either log or rethrow this exception" sonar warning
+    @SuppressWarnings("squid:S1166")
     protected void doStop() {
         LOG.debug("{}: In doStop", getName());
 
         if (trackedServiceReference != null && trackedService != null) {
             try {
                 getBundleContextForServiceLookup().ungetService(trackedServiceReference);
-            } catch (IllegalStateException e) {
+            } catch (final IllegalStateException e) {
                 // In case the service no longer exists, ignore.
             }
 
@@ -104,14 +108,16 @@ class StaticServiceReferenceRecipe extends AbstractServiceReferenceRecipe {
             return trackedService;
         }
 
-        Preconditions.checkNotNull(localTrackedServiceReference, "trackedServiceReference is null");
-
-        trackedService = getServiceSecurely(localTrackedServiceReference);
+        trackedService = getServiceSecurely(requireNonNull(localTrackedServiceReference,
+            "trackedServiceReference is null"));
 
         LOG.debug("{}: Returning service instance: {}", getName(), trackedService);
 
-        Preconditions.checkNotNull(trackedService, "getService() returned null for %s", localTrackedServiceReference);
+        return checkNotNull(trackedService, "getService() returned null for %s", localTrackedServiceReference);
+    }
 
-        return trackedService;
+    @Override
+    public boolean isStaticLifecycle() {
+        return true;
     }
 }