import static org.opendaylight.mdsal.binding.javav2.generator.util.BindingGeneratorUtil.encodeAngleBrackets;
import static org.opendaylight.mdsal.binding.javav2.generator.util.BindingGeneratorUtil.packageNameForGeneratedType;
import static org.opendaylight.mdsal.binding.javav2.generator.util.BindingTypes.NOTIFICATION;
+import static org.opendaylight.mdsal.binding.javav2.generator.util.Types.parameterizedTypeFor;
import static org.opendaylight.yangtools.yang.model.util.SchemaContextUtil.findParentModule;
import com.google.common.annotations.Beta;
if (parent == null) {
it.addImplementsType(BindingTypes.TREE_NODE);
} else {
- it.addImplementsType(BindingTypes.treeChildNode(parent));
+ if (parent instanceof ListSchemaNode) {
+ it.addImplementsType(parameterizedTypeFor(BindingTypes.TREE_CHILD_NODE, parent, parameterizedTypeFor
+ (BindingTypes.IDENTIFIABLE_ITEM, parent)));
+ } else {
+ it.addImplementsType(parameterizedTypeFor(BindingTypes.TREE_CHILD_NODE, parent, parameterizedTypeFor
+ (BindingTypes.ITEM, parent)));
+ }
}
+
if (!(schemaNode instanceof GroupingDefinition)) {
it.addImplementsType(BindingTypes.augmentable(it));
}
import org.opendaylight.mdsal.binding.javav2.spec.base.Input;
import org.opendaylight.mdsal.binding.javav2.spec.base.InstanceIdentifier;
import org.opendaylight.mdsal.binding.javav2.spec.base.Instantiable;
+import org.opendaylight.mdsal.binding.javav2.spec.base.Item;
import org.opendaylight.mdsal.binding.javav2.spec.base.KeyedInstanceIdentifier;
import org.opendaylight.mdsal.binding.javav2.spec.base.ListAction;
import org.opendaylight.mdsal.binding.javav2.spec.base.Notification;
public static final ConcreteType INPUT = typeForClass(Input.class);
public static final ConcreteType INSTANCE_IDENTIFIER = typeForClass(InstanceIdentifier.class);
public static final ConcreteType INSTANTIABLE = typeForClass(Instantiable.class);
+ public static final ConcreteType ITEM = typeForClass(Item.class);
public static final ConcreteType KEYED_INSTANCE_IDENTIFIER = typeForClass(KeyedInstanceIdentifier.class);
public static final ConcreteType LIST_ACTION = typeForClass(ListAction.class);
public static final ConcreteType NOTIFICATION = typeForClass(Notification.class);
public static final ConcreteType RPC_CALLBACK = typeForClass(RpcCallback.class);
public static final ConcreteType TREE_NODE = typeForClass(TreeNode.class);
public static final ConcreteType TREE_ROOT = typeForClass(TreeRoot.class);
-
- private static final ConcreteType TREE_CHILD_NODE = typeForClass(TreeChildNode.class);
+ public static final ConcreteType TREE_CHILD_NODE = typeForClass(TreeChildNode.class);
private BindingTypes() {
throw new UnsupportedOperationException("Utility class");
public static ParameterizedType augmentable(Type t) {
return parameterizedTypeFor(AUGMENTABLE, t);
}
-
- public static ParameterizedType treeChildNode(Type t) {
- return parameterizedTypeFor(TREE_CHILD_NODE, t);
- }
-
}