Bug 6236: Introduce "mdsal.skip.verbose" property, for build speed 34/49234/2
authorMichael Vorburger <vorburger@redhat.com>
Mon, 17 Oct 2016 15:47:38 +0000 (17:47 +0200)
committerRobert Varga <nite@hq.sk>
Tue, 20 Dec 2016 13:33:06 +0000 (13:33 +0000)
This doesn't "fix" Bug 6236, but works around it - and gives us a low
hanging fruit build performance improvement.

If this change gets accepted, I would make the odlparent -Pq profile set
this to true by default.

In parallel, I'm trying to get a root cause fix in a future Xtend
version. (At which point this could be removed again.)

Change-Id: I108f401fa2fbca6f17a8b23cb098910c5a6021fb
Signed-off-by: Michael Vorburger <vorburger@redhat.com>
(cherry picked from commit 535737b1a8c91de648c5215d6430df693dba52bc)

binding/mdsal-binding-generator-impl/src/main/java/org/opendaylight/yangtools/sal/binding/generator/impl/YangTemplate.xtend

index ca3b43ca111f4da7aa3f3b6bf1f285029ba5d9cd..c97d4488903e5f6fac3876b13139fc8ed5e6d69c 100644 (file)
@@ -42,10 +42,15 @@ import org.opendaylight.yangtools.yang.model.api.type.EnumTypeDefinition.EnumPai
 
 class YangTemplate {
 
+    private static val String SKIP_PROPERTY_NAME = "mdsal.skip.verbose"
+
+    private static val SKIP = Boolean.getBoolean(SKIP_PROPERTY_NAME);
+
     def static String generateYangSnipet(SchemaNode schemaNode) {
         if (schemaNode == null)
             return ''
-
+        if (SKIP)
+            return '''(Empty due to «SKIP_PROPERTY_NAME» property = true)'''
         '''
             «IF schemaNode instanceof DataSchemaNode»
             «writeDataSchemaNode(schemaNode)»
@@ -83,7 +88,8 @@ class YangTemplate {
     def static String generateYangSnipet(Set<? extends SchemaNode> nodes) {
         if (nodes.nullOrEmpty)
             return ''
-
+        if (SKIP)
+            return '''(Empty due to «SKIP_PROPERTY_NAME» property = true)'''
         '''
             «FOR node : nodes»
                 «IF node instanceof NotificationDefinition»
@@ -127,7 +133,8 @@ class YangTemplate {
     }
 
     def static String generateYangSnipet(Module module) {
-
+        if (SKIP)
+            return '''(Empty due to «SKIP_PROPERTY_NAME» property = true)'''
         '''
             module «module.name» {
                 yang-version «module.yangVersion»;