Remove OSGiSchemaResourceManager 93/96793/2
authorRobert Varga <robert.varga@pantheon.tech>
Fri, 2 Jul 2021 20:22:28 +0000 (22:22 +0200)
committerRobert Varga <robert.varga@pantheon.tech>
Fri, 2 Jul 2021 20:43:31 +0000 (22:43 +0200)
We have OSGi R7, hence we have use constructor injection and express our
dependency on SCR.

Change-Id: I77f92de079aa2d51c444451ffd0db4bf2168695f
Signed-off-by: Robert Varga <robert.varga@pantheon.tech>
netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/impl/DefaultSchemaResourceManager.java
netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/impl/OSGiSchemaResourceManager.java [deleted file]

index 3b18ac4b454cfa2c12e926bc47ac0d2304a42bff..3f7334bb2afe1c3c9a19e3a94346737872dcafe0 100644 (file)
@@ -30,6 +30,10 @@ import org.opendaylight.yangtools.yang.parser.api.YangParserFactory;
 import org.opendaylight.yangtools.yang.parser.repo.SharedSchemaRepository;
 import org.opendaylight.yangtools.yang.parser.rfc7950.ir.IRSchemaSource;
 import org.opendaylight.yangtools.yang.parser.rfc7950.repo.TextToIRTransformer;
 import org.opendaylight.yangtools.yang.parser.repo.SharedSchemaRepository;
 import org.opendaylight.yangtools.yang.parser.rfc7950.ir.IRSchemaSource;
 import org.opendaylight.yangtools.yang.parser.rfc7950.repo.TextToIRTransformer;
+import org.osgi.service.component.annotations.Activate;
+import org.osgi.service.component.annotations.Component;
+import org.osgi.service.component.annotations.Reference;
+import org.osgi.service.component.annotations.RequireServiceComponentRuntime;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
@@ -40,6 +44,8 @@ import org.slf4j.LoggerFactory;
  */
 @Beta
 @Singleton
  */
 @Beta
 @Singleton
+@Component(immediate = true)
+@RequireServiceComponentRuntime
 public final class DefaultSchemaResourceManager implements SchemaResourceManager {
     private static final Logger LOG = LoggerFactory.getLogger(DefaultSchemaResourceManager.class);
 
 public final class DefaultSchemaResourceManager implements SchemaResourceManager {
     private static final Logger LOG = LoggerFactory.getLogger(DefaultSchemaResourceManager.class);
 
@@ -50,8 +56,9 @@ public final class DefaultSchemaResourceManager implements SchemaResourceManager
     private final String defaultSubdirectory;
     private final String rootDirectory;
 
     private final String defaultSubdirectory;
     private final String rootDirectory;
 
+    @Activate
     @Inject
     @Inject
-    public DefaultSchemaResourceManager(final YangParserFactory parserFactory) {
+    public DefaultSchemaResourceManager(@Reference final YangParserFactory parserFactory) {
         this(parserFactory, "cache", "schema");
     }
 
         this(parserFactory, "cache", "schema");
     }
 
diff --git a/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/impl/OSGiSchemaResourceManager.java b/netconf/sal-netconf-connector/src/main/java/org/opendaylight/netconf/sal/connect/impl/OSGiSchemaResourceManager.java
deleted file mode 100644 (file)
index 428252c..0000000
+++ /dev/null
@@ -1,48 +0,0 @@
-/*
- * Copyright (c) 2020 PANTHEON.tech, s.r.o. and others.  All rights reserved.
- *
- * This program and the accompanying materials are made available under the
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,
- * and is available at http://www.eclipse.org/legal/epl-v10.html
- */
-package org.opendaylight.netconf.sal.connect.impl;
-
-import com.google.common.annotations.Beta;
-import org.opendaylight.netconf.sal.connect.api.SchemaResourceManager;
-import org.opendaylight.netconf.sal.connect.netconf.NetconfDevice.SchemaResourcesDTO;
-import org.opendaylight.yang.gen.v1.urn.opendaylight.netconf.node.topology.rev150114.NetconfNode;
-import org.opendaylight.yangtools.yang.parser.api.YangParserFactory;
-import org.osgi.service.component.annotations.Activate;
-import org.osgi.service.component.annotations.Component;
-import org.osgi.service.component.annotations.Deactivate;
-import org.osgi.service.component.annotations.Reference;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-
-@Beta
-@Component(immediate = true)
-public final class OSGiSchemaResourceManager implements SchemaResourceManager {
-    private static final Logger LOG = LoggerFactory.getLogger(OSGiSchemaResourceManager.class);
-
-    @Reference
-    YangParserFactory parserFactory;
-
-    private DefaultSchemaResourceManager delegate;
-
-    @Override
-    public SchemaResourcesDTO getSchemaResources(final NetconfNode node, final Object nodeId) {
-        return delegate.getSchemaResources(node, nodeId);
-    }
-
-    @Activate
-    void activate() {
-        delegate = new DefaultSchemaResourceManager(parserFactory);
-        LOG.info("Schema Resource Manager started");
-    }
-
-    @Deactivate
-    void deactivate() {
-        delegate = null;
-        LOG.info("Schema Resource Manager stopped");
-    }
-}