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 47b46bd..6e3a691 100644
--- a/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java
+++ b/apps/yang/src/main/java/org/onosproject/yang/AbstractYangModelRegistrator.java
@@ -41,7 +41,7 @@
 @Component
 public abstract class AbstractYangModelRegistrator {
 
-    private final Logger log = LoggerFactory.getLogger(getClass());
+    protected final Logger log = LoggerFactory.getLogger(getClass());
     private final Class<?> loaderClass;
 
     private Map<YangModuleId, AppModuleInfo> appInfo;
diff --git a/bucklets/yang.bucklet b/bucklets/yang.bucklet
index 7769fe4..91e31b1 100644
--- a/bucklets/yang.bucklet
+++ b/bucklets/yang.bucklet
@@ -23,6 +23,7 @@
     description = None,
     deps = [],
     required_apps = [],
+    custom_registrator = False,
     **kwargs
     ):
 
@@ -51,22 +52,32 @@
       out = 'yang'
     )
 
-    genrule(
-      name = registrator,
-      srcs = [ ':' + yangSrcs ],
-      cmd = '$(location //buck-tools:yang-registrator) $OUT ' + app_name + ' $SRCS',
-      out = 'YangModelRegistrator.java'
-    )
-
-    osgi_jar(
-      name = name,
-      srcs = [ ':' + yangSrcs, ':' + registrator ],
-      deps = deps + YANG_TOOLS,
-      resources = [ ':' + schema ],
-      resources_root = ".",
-      do_checkstyle = False,
-      do_javadocs = False,
-    )
+    if custom_registrator:
+        osgi_jar(
+          name = name,
+          srcs = [ ':' + yangSrcs ] + glob(['src/main/java/**/*.java']),
+          deps = deps + YANG_TOOLS,
+          resources = [ ':' + schema ],
+          resources_root = ".",
+          do_checkstyle = False,
+          do_javadocs = False,
+        )
+    else:
+        genrule(
+          name = registrator,
+          srcs = [ ':' + yangSrcs ],
+          cmd = '$(location //buck-tools:yang-registrator) $OUT ' + app_name + ' $SRCS',
+          out = 'YangModelRegistrator.java'
+        )
+        osgi_jar(
+          name = name,
+          srcs = [ ':' + yangSrcs, ':' + registrator ],
+          deps = deps + YANG_TOOLS,
+          resources = [ ':' + schema ],
+          resources_root = ".",
+          do_checkstyle = False,
+          do_javadocs = False,
+        )
 
     onos_app (
       app_name = app_name,
diff --git a/models/common/BUCK b/models/common/BUCK
index ee0d73a..a210b1e 100644
--- a/models/common/BUCK
+++ b/models/common/BUCK
@@ -2,4 +2,6 @@
 yang_model (
   app_name = 'org.onosproject.models.common',
   title = 'Common YANG Models',
+  custom_registrator = True,
+  deps = [ '//lib:CORE_DEPS' ]
 )
diff --git a/models/common/src/main/java/org/onosproject/models/common/YangModelRegistrator.java b/models/common/src/main/java/org/onosproject/models/common/YangModelRegistrator.java
new file mode 100644
index 0000000..d8f0964
--- /dev/null
+++ b/models/common/src/main/java/org/onosproject/models/common/YangModelRegistrator.java
@@ -0,0 +1,29 @@
+/*
+ * Copyright 2017-present Open Networking Foundation
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *     http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+package org.onosproject.models.common;
+
+import org.onosproject.yang.AbstractYangModelRegistrator;
+import org.apache.felix.scr.annotations.Component;
+
+@Component(immediate = true)
+public class YangModelRegistrator extends AbstractYangModelRegistrator {
+    public YangModelRegistrator() {
+        super(YangModelRegistrator.class);
+
+        // TODO: Do some other registration tasks...
+        log.info("Custom model registrator created");
+    }
+}
\ No newline at end of file
