X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fconfig%2Fyang-jmx-generator%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fconfig%2Fyangjmxgenerator%2FTypeProviderWrapper.java;h=a2238d1a13da854c07df8278c697e8fddd15bdd2;hb=bab3649670c33b3b12a49c59fc1c5cabcbcb924e;hp=7490ad60847aaa45728d0b627a3091ff2d7a3fb7;hpb=9fb64948564e252018f9b1e13e7cea2c92f991aa;p=controller.git diff --git a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/TypeProviderWrapper.java b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/TypeProviderWrapper.java index 7490ad6084..a2238d1a13 100644 --- a/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/TypeProviderWrapper.java +++ b/opendaylight/config/yang-jmx-generator/src/main/java/org/opendaylight/controller/config/yangjmxgenerator/TypeProviderWrapper.java @@ -11,6 +11,8 @@ import org.opendaylight.yangtools.sal.binding.generator.spi.TypeProvider; import org.opendaylight.yangtools.sal.binding.model.api.Type; import org.opendaylight.yangtools.yang.model.api.LeafListSchemaNode; import org.opendaylight.yangtools.yang.model.api.LeafSchemaNode; +import org.opendaylight.yangtools.yang.model.api.SchemaNode; +import org.opendaylight.yangtools.yang.model.api.TypeDefinition; public class TypeProviderWrapper { private final TypeProvider typeProvider; @@ -20,10 +22,15 @@ public class TypeProviderWrapper { } public Type getType(LeafSchemaNode leaf) { + TypeDefinition type = leaf.getType(); + return getType(leaf, type); + } + + public Type getType(SchemaNode leaf, TypeDefinition type) { Type javaType; try { javaType = typeProvider.javaTypeForSchemaDefinitionType( - leaf.getType(), leaf); + type, leaf); if (javaType == null) throw new IllegalArgumentException("Unknown type received for " + leaf.toString()); @@ -50,4 +57,7 @@ public class TypeProviderWrapper { return javaType; } + public String getJMXParamForBaseType(TypeDefinition baseType) { + return typeProvider.getConstructorPropertyName(baseType); + } }