diff --git a/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java b/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java
index 512d6d7..dc10103 100644
--- a/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java
+++ b/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java
@@ -17,7 +17,6 @@
 package org.onosproject.yang;
 
 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.osgi.service.component.annotations.ReferenceCardinality;
@@ -38,7 +37,6 @@
 /**
  * Abstract base for self-registering YANG models.
  */
-@Component
 public abstract class AbstractYangModelRegistrator {
 
     protected final Logger log = LoggerFactory.getLogger(getClass());
@@ -55,6 +53,42 @@
     protected YangClassLoaderRegistry sourceResolver;
 
     /**
+     * Binds the specified YANG model registry.
+     *
+     * @param registry model registry
+     */
+    protected void bindModelRegistry(YangModelRegistry registry) {
+        this.modelRegistry = registry;
+    }
+
+    /**
+     * Unbinds the specified YANG model registry.
+     *
+     * @param registry model registry
+     */
+    protected void unbindModelRegistry(YangModelRegistry registry) {
+        this.modelRegistry = null;
+    }
+
+    /**
+     * Binds the specified YANG source resolver registry.
+     *
+     * @param resolver model source resolver
+     */
+    protected void bindSourceResolver(YangClassLoaderRegistry resolver) {
+        this.sourceResolver = resolver;
+    }
+
+    /**
+     * Unbinds the specified YANG source resolver registry.
+     *
+     * @param resolver model source resolver
+     */
+    protected void unbindSourceResolver(YangClassLoaderRegistry resolver) {
+        this.sourceResolver = null;
+    }
+
+    /**
      * Creates a model registrator primed with the class-loader of the specified
      * class.
      *
