Merge "introduce Rfc8040RestConfWiring for standalone (simple) environments"
[netconf.git] / restconf / restconf-nb-rfc8040 / src / main / java / org / opendaylight / restconf / nb / rfc8040 / handlers / DOMMountPointServiceHandler.java
index 5aa930c77ea7c3da605f3d07c68e0b6aa95cb1f9..501aeafa736970014476257f713d509c9b2732cc 100644 (file)
@@ -7,15 +7,19 @@
  */
 package org.opendaylight.restconf.nb.rfc8040.handlers;
 
-import com.google.common.base.Preconditions;
-import org.opendaylight.controller.md.sal.dom.api.DOMMountPointService;
+import static java.util.Objects.requireNonNull;
+
+import javax.inject.Inject;
+import javax.inject.Singleton;
+import org.apache.aries.blueprint.annotation.service.Reference;
+import org.opendaylight.mdsal.dom.api.DOMMountPointService;
 
 /**
  * Implementation of {@link DOMMountPointServiceHandler}.
  *
  */
-public class DOMMountPointServiceHandler implements Handler<DOMMountPointService> {
-
+@Singleton
+public final class DOMMountPointServiceHandler implements Handler<DOMMountPointService> {
     private final DOMMountPointService domMountPointService;
 
     /**
@@ -24,14 +28,18 @@ public class DOMMountPointServiceHandler implements Handler<DOMMountPointService
      * @param domMountPointService
      *             mount point service
      */
-    public DOMMountPointServiceHandler(final DOMMountPointService domMountPointService) {
-        Preconditions.checkNotNull(domMountPointService);
-        this.domMountPointService = domMountPointService;
+    @Inject
+    public DOMMountPointServiceHandler(final @Reference DOMMountPointService domMountPointService) {
+        this.domMountPointService = requireNonNull(domMountPointService);
+    }
+
+    @Deprecated
+    public static DOMMountPointServiceHandler newInstance(final DOMMountPointService domMountPointService) {
+        return new DOMMountPointServiceHandler(domMountPointService);
     }
 
     @Override
     public DOMMountPointService get() {
         return this.domMountPointService;
     }
-
 }