import org.opendaylight.mdsal.binding.javav2.spec.structural.Augmentable;
import org.opendaylight.mdsal.binding.javav2.util.BindingMapping;
import org.opendaylight.yangtools.yang.common.QName;
+import org.opendaylight.yangtools.yang.model.api.AnyXmlSchemaNode;
import org.opendaylight.yangtools.yang.model.api.AugmentationSchema;
import org.opendaylight.yangtools.yang.model.api.ContainerSchemaNode;
import org.opendaylight.yangtools.yang.model.api.DataNodeContainer;
} else if (node instanceof ListSchemaNode) {
listToGenType(module, basePackageName, typeBuilder, childOf, (ListSchemaNode) node, schemaContext,
verboseClassComments, genCtx, genTypeBuilders, typeProvider);
+ } else if (node instanceof AnyXmlSchemaNode) {
+ resolveAnyxmlNodeAsMethod(schemaContext, typeBuilder, genCtx, (AnyXmlSchemaNode) node, module,
+ typeProvider);
}
}
return returnType;
}
+ private static Type resolveAnyxmlNodeAsMethod(final SchemaContext schemaContext, final GeneratedTypeBuilder
+ typeBuilder, final Map<Module, ModuleContext> genCtx, final AnyXmlSchemaNode anyxml, final Module module,
+ final TypeProvider typeProvider) {
+
+ final String anyxmlName = anyxml.getQName().getLocalName();
+ if (anyxmlName == null) {
+ return null;
+ }
+
+ String anyxmlDesc = anyxml.getDescription();
+ if (anyxmlDesc == null) {
+ anyxmlDesc = "";
+ }
+
+ Type returnType = Types.DOCUMENT;
+
+ constructGetter(typeBuilder, anyxmlName, anyxmlDesc, returnType, anyxml.getStatus());
+ return returnType;
+ }
+
+
/**
* Adds <code>schemaNode</code> to <code>typeBuilder</code> as getter method
* or to <code>genTOBuilder</code> as property.
--- /dev/null
+module test-anyxml {
+ yang-version 1;
+
+ namespace "urn:test:simple:test:anyxml";
+ prefix test;
+ organization "test.org";
+ revision "2017-06-07";
+
+ container *my-cont {
+ container my-inner-cont {
+ leaf my-leaf {
+ type string;
+ }
+
+ anyxml inner-anyxml {
+ description "I am data schema node anyxml";
+ }
+ }
+ }
+
+ anyxml root-anyxml {
+ description "I am root anyxml";
+ }
+}
\ No newline at end of file
import org.opendaylight.yangtools.yang.model.api.type.PatternConstraint;
import org.opendaylight.yangtools.yang.model.api.type.RangeConstraint;
import org.opendaylight.yangtools.yang.model.util.BaseConstraints;
+import org.w3c.dom.Document;
@Beta
public final class Types {
public static final ConcreteType CLASS = typeForClass(Class.class);
public static final ConcreteType STRING = typeForClass(String.class);
public static final ConcreteType VOID = typeForClass(Void.class);
+ public static final ConcreteType DOCUMENT = typeForClass(Document.class);
public static final ConcreteType BYTE_ARRAY = primitiveType("byte[]", null);
public static final ConcreteType CHAR_ARRAY = primitiveType("char[]", null);