X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=code-generator%2Fbinding-java-api-generator%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fyangtools%2Fsal%2Fjava%2Fapi%2Fgenerator%2FClassTemplate.xtend;h=dba7356f9bd68cd61ce72d99407a8bcebc26c28b;hb=b9098abada60ebda7c372221c7b6ec8a94178792;hp=8d20831242fc1be9149a80811227def001523ecc;hpb=6afd2a531c139a775dafa01c317eb0ab6044ac41;p=yangtools.git
diff --git a/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/ClassTemplate.xtend b/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/ClassTemplate.xtend
index 8d20831242..dba7356f9b 100644
--- a/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/ClassTemplate.xtend
+++ b/code-generator/binding-java-api-generator/src/main/java/org/opendaylight/yangtools/sal/java/api/generator/ClassTemplate.xtend
@@ -26,6 +26,7 @@ import org.opendaylight.yangtools.sal.binding.model.api.GeneratedProperty
import org.opendaylight.yangtools.sal.binding.model.api.GeneratedTransferObject
import org.opendaylight.yangtools.sal.binding.model.api.GeneratedType
import org.opendaylight.yangtools.sal.binding.model.api.Restrictions
+import org.opendaylight.yangtools.yang.model.api.type.BitsTypeDefinition
import com.google.common.base.Preconditions
/**
@@ -126,6 +127,10 @@ class ClassTemplate extends BaseTemplate {
«ENDIF»
«ENDFOR»
+ «IF (genTO.isTypedef() && genTO.getBaseType instanceof BitsTypeDefinition)»
+ «generateGetValueForBitsTypeDef»
+ «ENDIF»
+
«generateHashCode»
«generateEquals»
@@ -137,6 +142,24 @@ class ClassTemplate extends BaseTemplate {
«generateRangeMethod("range", "_range")»
}
+
+ '''
+
+ /**
+ * Template method which generates the method getValue()
for typedef,
+ * which base type is BitsDefinition.
+ *
+ * @return string with the getValue()
method definition in JAVA format
+ */
+ def protected generateGetValueForBitsTypeDef() '''
+
+ public boolean[] getValue() {
+ return new boolean[]{
+ «FOR property: genTO.properties SEPARATOR ','»
+ «property.fieldName»
+ «ENDFOR»
+ };
+ }
'''
def private generateLengthMethod(String methodName, String varName) '''