import org.opendaylight.yangtools.yang.model.api.NotificationDefinition
import org.opendaylight.yangtools.binding.generator.util.BindingGeneratorUtil
import org.opendaylight.yangtools.sal.binding.model.api.Restrictions
-
+import org.opendaylight.yangtools.yang.common.QName\r
+\r
public class BindingGeneratorImpl implements BindingGenerator {
private final Map<Module, ModuleContext> genCtx = new HashMap()
filteredGenTypes.addAll(genCtx.get(m).generatedTypes);
}
- genCtx.clear;
+ //genCtx.clear;
return filteredGenTypes;
}
*/
private def GeneratedTypeBuilder addDefaultInterfaceDefinition(String packageName, SchemaNode schemaNode,
Type parent) {
- val builder = addRawInterfaceDefinition(packageName, schemaNode, "");
+ val it = addRawInterfaceDefinition(packageName, schemaNode, "");\r
+ val qname = schemaNode.QName;
+ //addConstant(QName.typeForClass,"QNAME",'''\r
+ // org.opendaylight.yangtools.yang.common.QName.create("«qname.namespace»","«qname.formattedRevision»","«qname.localName»");\r
+ //''')\r
if (parent === null) {
- builder.addImplementsType(DATA_OBJECT);
+ addImplementsType(DATA_OBJECT);
} else {
- builder.addImplementsType(BindingTypes.childOf(parent));
+ addImplementsType(BindingTypes.childOf(parent));
}
if (!(schemaNode instanceof GroupingDefinition)) {
- builder.addImplementsType(augmentable(builder));
+ addImplementsType(augmentable(it));
}
if (schemaNode instanceof DataNodeContainer) {
- addImplementedInterfaceFromUses(schemaNode as DataNodeContainer, builder);
+ addImplementedInterfaceFromUses(schemaNode as DataNodeContainer, it);
}
- return builder;
+ return it;
}
/**\r
* @return string with the name of the getter method for\r
* <code>methodName</code> in JAVA method format\r
*/
- private def String getterMethodName(String methodName, Type returnType) {
+ public static def String getterMethodName(String localName, Type returnType) {
val method = new StringBuilder();
if (BOOLEAN.equals(returnType)) {
method.append("is");
} else {
method.append("get");
}
- method.append(parseToClassName(methodName));
+ method.append(parseToClassName(localName));
return method.toString();
}
}
return null
}
-
+\r
+\r
+ public def getModuleContexts() {\r
+ genCtx;\r
+ }
}
import org.opendaylight.yangtools.sal.binding.model.api.type.builder.GeneratedTypeBuilder;
import org.opendaylight.yangtools.yang.model.api.SchemaPath;
-final class ModuleContext {
+public final class ModuleContext {
private GeneratedTypeBuilder moduleNode;
private final List<GeneratedTOBuilder> genTOs = new ArrayList<GeneratedTOBuilder>();
private final Map<SchemaPath, Type> typedefs = new HashMap<SchemaPath, Type>();
augmentations.add(b);
}
+ public Map<SchemaPath, Type> getTypedefs() {
+ return typedefs;
+ }
+
+ public Map<SchemaPath, GeneratedTypeBuilder> getChildNodes() {
+ return childNodes;
+ }
+
+ public Map<SchemaPath, GeneratedTypeBuilder> getGroupings() {
+ return groupings;
+ }
+
+ public Map<SchemaPath, GeneratedTypeBuilder> getCases() {
+ return cases;
+ }
+
+ public Set<GeneratedTOBuilder> getIdentities() {
+ return identities;
+ }
+
+ public Set<GeneratedTypeBuilder> getTopLevelNodes() {
+ return topLevelNodes;
+ }
+
+ public List<GeneratedTypeBuilder> getAugmentations() {
+ return augmentations;
+ }
+
}