Clean up RestconfSchemaSourceUrlProvider 65/109065/1
authorRobert Varga <robert.varga@pantheon.tech>
Sun, 26 Nov 2023 11:41:31 +0000 (12:41 +0100)
committerRobert Varga <robert.varga@pantheon.tech>
Sun, 26 Nov 2023 11:41:31 +0000 (12:41 +0100)
Explicitly annotate injection constructor and instantiate it only when
needed.

Change-Id: I07014f4106cf604681c9bbdb63da05dfc7d6bc3b
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
restconf/restconf-nb/src/main/java/org/opendaylight/restconf/nb/rfc8040/rests/services/impl/RestconfSchemaSourceUrlProvider.java

index 4ba88d0c921258a7243cd3229e1192fb8e0b7b4d..eaf944ca5e6a61e5269221efbb6605d519d66e20 100644 (file)
@@ -8,14 +8,14 @@
 package org.opendaylight.restconf.nb.rfc8040.rests.services.impl;
 
 import java.util.Optional;
+import javax.inject.Inject;
 import javax.inject.Singleton;
-import org.eclipse.jdt.annotation.NonNull;
-import org.eclipse.jdt.annotation.Nullable;
 import org.opendaylight.netconf.yanglib.writer.YangLibrarySchemaSourceUrlProvider;
 import org.opendaylight.restconf.nb.jaxrs.JaxRsRestconf;
 import org.opendaylight.restconf.nb.rfc8040.URLConstants;
 import org.opendaylight.yang.gen.v1.urn.ietf.params.xml.ns.yang.ietf.inet.types.rev130715.Uri;
 import org.opendaylight.yangtools.yang.common.Revision;
+import org.osgi.service.component.annotations.Activate;
 import org.osgi.service.component.annotations.Component;
 
 /**
@@ -27,12 +27,17 @@ import org.osgi.service.component.annotations.Component;
  * {@link JaxRsRestconf#modulesYangGET(String, String, javax.ws.rs.container.AsyncResponse)} et al.
  */
 @Singleton
-@Component(immediate = true, service = YangLibrarySchemaSourceUrlProvider.class)
+@Component
 public final class RestconfSchemaSourceUrlProvider implements YangLibrarySchemaSourceUrlProvider {
+    @Inject
+    @Activate
+    public RestconfSchemaSourceUrlProvider() {
+        // Visible for injection
+    }
 
     @Override
-    public Optional<Uri> getSchemaSourceUrl(final @NonNull String moduleSetName,
-            final @NonNull String moduleName, final @Nullable Revision revision) {
+    public Optional<Uri> getSchemaSourceUrl(final String moduleSetName, final String moduleName,
+            final Revision revision) {
         if ("ODL_modules".equals(moduleSetName)) {
             final var sb = new StringBuilder("/" + URLConstants.BASE_PATH + "/" + URLConstants.MODULES_SUBPATH + "/")
                 .append(moduleName);