--- /dev/null
+package org.opendaylight.controller.yang.binding;
+
+public interface DataObject {
+
+}
* \r
* \r
*/\r
-public interface Notification {\r
+public interface Notification extends DataObject {\r
\r
}\r
+
*/\r
package org.opendaylight.controller.model.api.type;\r
\r
+import java.util.List;\r
+\r
import org.opendaylight.controller.yang.model.api.TypeDefinition;\r
\r
/**\r
* 4</a>). <br>\r
* The canonical form of a binary value follows the rules in <a\r
* href="https://tools.ietf.org/html/rfc4648">[RFC4648]</a>.\r
- * \r
- * \r
+ *\r
+ *\r
*/\r
public interface BinaryTypeDefinition extends\r
TypeDefinition<BinaryTypeDefinition> {\r
\r
/**\r
- * Returns the number of octets it that binary value contains.\r
- * \r
- * @return the number of octets it that binary value contains.\r
+ * Returns List of number of octets that binary value contains.\r
+ *\r
+ * @return List of number of octets that binary value contains.\r
*/\r
- public LengthConstraint getLengthConstraint();\r
+ public List<LengthConstraint> getLengthConstraints();\r
}\r
*/\r
package org.opendaylight.controller.model.api.type;\r
\r
+import org.opendaylight.controller.yang.model.api.RevisionAwareXPath;\r
import org.opendaylight.controller.yang.model.api.TypeDefinition;\r
\r
public interface IdentityrefTypeDefinition extends\r
TypeDefinition<IdentityTypeDefinition> {\r
-\r
+ \r
+ public RevisionAwareXPath getPathStatement();\r
+ \r
public IdentityTypeDefinition getIdentity();\r
}\r
\r
boolean isPresenceContainer();\r
\r
- MustDefinition getMustDefinition();\r
-\r
}\r
\r
public interface Deviation {\r
\r
- MustDefinition getMustDefinition();\r
-\r
enum Deviate {\r
NOT_SUPPORTED, ADD, REPLACE, DELETE\r
}\r
\r
boolean isUserOrdered();\r
\r
- MustDefinition getMustDefinition();\r
-\r
}\r
package org.opendaylight.controller.yang.model.api;\r
\r
public interface LeafSchemaNode extends DataSchemaNode {\r
- TypeDefinition getType();\r
\r
- MustDefinition getMustDefinition();\r
+ TypeDefinition<?> getType();\r
+\r
}\r
\r
import java.net.URI;\r
import java.util.Date;\r
+import java.util.List;\r
import java.util.Set;\r
\r
public interface Module extends DataNodeContainer {\r
\r
Set<Deviation> getDeviations();\r
\r
+ List<ExtensionDefinition> getExtensionSchemaNodes();\r
+\r
}\r
package org.opendaylight.controller.yang.model.api;\r
\r
public interface RevisionAwareXPath {\r
-\r
+ \r
+ \r
+ /**\r
+ * Returns <code>true</code> if the XPapth starts in root of Yang model, otherwise returns <code>false</cdoe>.\r
+ * \r
+ * @return <code>true</code> if the XPapth starts in root of Yang model, otherwise returns <code>false</cdoe>\r
+ */\r
+ public boolean isAbsolute();\r
+ \r
+ /**\r
+ * Returns the XPath formatted string as is defined in model. \r
+ * <br>\r
+ * For example: /prefix:container/prefix:container::cond[when()=foo]/prefix:leaf\r
+ * \r
+ * @return the XPath formatted string as is defined in model.\r
+ */\r
+ public String toString();\r
}\r
--- /dev/null
+/*
+ * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.controller.yang.model.api;
+
+import java.util.Set;
+
+
+
+/**
+ *
+ */
+public interface SchemaContext {
+
+ Set<DataSchemaNode> getDataDefinitions();
+
+ Set<Module> getModules();
+
+ Set<NotificationDefinition> getNotifications();
+
+ Set<RpcDefinition> getOperations();
+
+ Set<ExtensionDefinition> getExtensions();
+}
\r
public Status getStatus();\r
\r
- public List<ExtensionDefinition> getExtensionSchemaNodes();\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes();\r
}\r
package org.opendaylight.controller.yang.model.api;\r
\r
public enum Status {\r
- CURRENT, DEPRECATED, OBSOLOTE\r
+ CURRENT, DEPRECATED, OBSOLETE\r
}\r
--- /dev/null
+/*
+ * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.controller.yang.model.api;
+
+public interface UnknownSchemaNode extends SchemaNode {
+
+}
*/\r
package org.opendaylight.controller.yang.model.api;\r
\r
+import java.util.Set;\r
+\r
public interface UsesNode {\r
+\r
SchemaPath getGroupingPath();\r
+ Set<AugmentationSchema> getAugmentations();\r
+ boolean isAugmenting();\r
\r
}\r
import org.opendaylight.controller.model.api.type.IntegerTypeDefinition;\r
import org.opendaylight.controller.model.api.type.RangeConstraint;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public abstract class AbstractInteger implements IntegerTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
import org.opendaylight.controller.model.api.type.BinaryTypeDefinition;\r
import org.opendaylight.controller.model.api.type.LengthConstraint;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class BinaryType implements BinaryTypeDefinition {\r
\r
private final String reference = "";\r
\r
private List<Byte> bytes;\r
- private final LengthConstraint lengthConstraint;\r
+ private final List<LengthConstraint> lengthConstraints;\r
private String units = "";\r
\r
public BinaryType() {\r
super();\r
\r
- lengthConstraint = BaseConstraints.lengthConstraint(0L, Long.MAX_VALUE,\r
- null, null);\r
+ lengthConstraints = Collections.emptyList();\r
bytes = Collections.emptyList();\r
bytes = Collections.unmodifiableList(bytes);\r
}\r
\r
public BinaryType(final List<Byte> bytes,\r
- final LengthConstraint lengthConstraint, final String units) {\r
+ final List<LengthConstraint> lengthConstraints, final String units) {\r
super();\r
this.bytes = bytes;\r
- this.lengthConstraint = lengthConstraint;\r
+ this.lengthConstraints = lengthConstraints;\r
this.units = units;\r
}\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.TypeDefinition#getBaseType()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.TypeDefinition#getUnits()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.TypeDefinition#getDefaultValue()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getQName()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getPath()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getDescription()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getReference()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getStatus()\r
*/\r
@Override\r
\r
/*\r
* (non-Javadoc)\r
- * \r
+ *\r
* @see\r
* org.opendaylight.controller.yang.model.base.type.api.BinaryTypeDefinition#getLengthConstraint\r
* ()\r
*/\r
@Override\r
- public LengthConstraint getLengthConstraint() {\r
- return lengthConstraint;\r
+ public List<LengthConstraint> getLengthConstraints() {\r
+ return lengthConstraints;\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
+ ((description == null) ? 0 : description.hashCode());\r
result = prime\r
* result\r
- + ((lengthConstraint == null) ? 0 : lengthConstraint.hashCode());\r
+ + ((lengthConstraints == null) ? 0 : lengthConstraints.hashCode());\r
result = prime * result + ((name == null) ? 0 : name.hashCode());\r
result = prime * result + ((path == null) ? 0 : path.hashCode());\r
result = prime * result\r
} else if (!description.equals(other.description)) {\r
return false;\r
}\r
- if (lengthConstraint == null) {\r
- if (other.lengthConstraint != null) {\r
+ if (lengthConstraints == null) {\r
+ if (other.lengthConstraints != null) {\r
return false;\r
}\r
- } else if (!lengthConstraint.equals(other.lengthConstraint)) {\r
+ } else if (!lengthConstraints.equals(other.lengthConstraints)) {\r
return false;\r
}\r
if (name == null) {\r
builder.append(reference);\r
builder.append(", bytes=");\r
builder.append(bytes);\r
- builder.append(", lengthConstraint=");\r
- builder.append(lengthConstraint);\r
+ builder.append(", lengthConstraints=");\r
+ builder.append(lengthConstraints);\r
builder.append(", units=");\r
builder.append(units);\r
builder.append("]");\r
\r
import org.opendaylight.controller.model.api.type.BitsTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class BitsType implements BitsTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
\r
import org.opendaylight.controller.model.api.type.BooleanTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class BooleanType implements BooleanTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
import org.opendaylight.controller.model.api.type.DecimalTypeDefinition;\r
import org.opendaylight.controller.model.api.type.RangeConstraint;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class Decimal64 implements DecimalTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
\r
import org.opendaylight.controller.model.api.type.EnumTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class EnumerationType implements EnumTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
import java.util.List;\r
\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
import org.opendaylight.controller.yang.model.api.TypeDefinition;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class ExtendedType implements TypeDefinition {\r
\r
private final SchemaPath path;\r
private final String description;\r
private final String reference;\r
- private final List<ExtensionDefinition> extensions;\r
+ private final List<UnknownSchemaNode> unknownSchemaNodes;\r
\r
private Status status;\r
private String units;\r
private final String description;\r
private final String reference;\r
\r
- private List<ExtensionDefinition> extensions = Collections.emptyList();;\r
+ private List<UnknownSchemaNode> unknownSchemaNodes = Collections.emptyList();;\r
private Status status = Status.CURRENT;\r
private String units = "";\r
private Object defaultValue = null;\r
return this;\r
}\r
\r
- public Builder extensions(final List<ExtensionDefinition> extensions) {\r
- this.extensions = extensions;\r
+ public Builder unknownSchemaNodes(final List<UnknownSchemaNode> unknownSchemaNodes) {\r
+ this.unknownSchemaNodes = unknownSchemaNodes;\r
return this;\r
}\r
\r
this.path = builder.path;\r
this.description = builder.description;\r
this.reference = builder.reference;\r
- this.extensions = builder.extensions;\r
+ this.unknownSchemaNodes = builder.unknownSchemaNodes;\r
this.status = builder.status;\r
this.units = builder.units;\r
this.defaultValue = builder.defaultValue;\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
- return extensions;\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
+ return unknownSchemaNodes;\r
}\r
\r
@Override\r
result = prime * result\r
+ ((description == null) ? 0 : description.hashCode());\r
result = prime * result\r
- + ((extensions == null) ? 0 : extensions.hashCode());\r
+ + ((unknownSchemaNodes == null) ? 0 : unknownSchemaNodes.hashCode());\r
result = prime * result + ((path == null) ? 0 : path.hashCode());\r
result = prime * result\r
+ ((reference == null) ? 0 : reference.hashCode());\r
} else if (!description.equals(other.description)) {\r
return false;\r
}\r
- if (extensions == null) {\r
- if (other.extensions != null) {\r
+ if (unknownSchemaNodes == null) {\r
+ if (other.unknownSchemaNodes != null) {\r
return false;\r
}\r
- } else if (!extensions.equals(other.extensions)) {\r
+ } else if (!unknownSchemaNodes.equals(other.unknownSchemaNodes)) {\r
return false;\r
}\r
if (path == null) {\r
builder2.append(description);\r
builder2.append(", reference=");\r
builder2.append(reference);\r
- builder2.append(", extensions=");\r
- builder2.append(extensions);\r
+ builder2.append(", unknownSchemaNodes=");\r
+ builder2.append(unknownSchemaNodes);\r
builder2.append(", status=");\r
builder2.append(status);\r
builder2.append(", units=");\r
\r
import org.opendaylight.controller.model.api.type.IdentityTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class IdentityType implements IdentityTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
import org.opendaylight.controller.model.api.type.IdentityTypeDefinition;\r
import org.opendaylight.controller.model.api.type.IdentityrefTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
+import org.opendaylight.controller.yang.model.api.RevisionAwareXPath;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class Identityref implements IdentityrefTypeDefinition {\r
\r
private final String reference = "";\r
\r
private final IdentityTypeDefinition identity;\r
+ private final RevisionAwareXPath xpath;\r
\r
private String units = "";\r
\r
- public Identityref(IdentityTypeDefinition identity) {\r
+ public Identityref(RevisionAwareXPath xpath, IdentityTypeDefinition identity) {\r
super();\r
this.identity = identity;\r
+ this.xpath = xpath;\r
+ }\r
+ \r
+ public Identityref(RevisionAwareXPath xpath) {\r
+ super();\r
+ this.xpath = xpath;\r
+ this.identity = null;\r
}\r
\r
/*\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
public IdentityTypeDefinition getIdentity() {\r
return identity;\r
}\r
-\r
- @Override\r
- public int hashCode() {\r
- final int prime = 31;\r
- int result = 1;\r
- result = prime * result\r
- + ((description == null) ? 0 : description.hashCode());\r
- result = prime * result\r
- + ((identity == null) ? 0 : identity.hashCode());\r
- result = prime * result + ((name == null) ? 0 : name.hashCode());\r
- result = prime * result + ((path == null) ? 0 : path.hashCode());\r
- result = prime * result\r
- + ((reference == null) ? 0 : reference.hashCode());\r
- result = prime * result + ((units == null) ? 0 : units.hashCode());\r
- return result;\r
- }\r
-\r
- @Override\r
- public boolean equals(Object obj) {\r
- if (this == obj) {\r
- return true;\r
- }\r
- if (obj == null) {\r
- return false;\r
- }\r
- if (getClass() != obj.getClass()) {\r
- return false;\r
- }\r
- Identityref other = (Identityref) obj;\r
- if (description == null) {\r
- if (other.description != null) {\r
- return false;\r
- }\r
- } else if (!description.equals(other.description)) {\r
- return false;\r
- }\r
- if (identity == null) {\r
- if (other.identity != null) {\r
- return false;\r
- }\r
- } else if (!identity.equals(other.identity)) {\r
- return false;\r
- }\r
- if (name == null) {\r
- if (other.name != null) {\r
- return false;\r
- }\r
- } else if (!name.equals(other.name)) {\r
- return false;\r
- }\r
- if (path == null) {\r
- if (other.path != null) {\r
- return false;\r
- }\r
- } else if (!path.equals(other.path)) {\r
- return false;\r
- }\r
- if (reference == null) {\r
- if (other.reference != null) {\r
- return false;\r
- }\r
- } else if (!reference.equals(other.reference)) {\r
- return false;\r
- }\r
- if (units == null) {\r
- if (other.units != null) {\r
- return false;\r
- }\r
- } else if (!units.equals(other.units)) {\r
- return false;\r
- }\r
- return true;\r
- }\r
-\r
+ \r
@Override\r
- public String toString() {\r
- StringBuilder builder = new StringBuilder();\r
- builder.append("IdentityrefType [name=");\r
- builder.append(name);\r
- builder.append(", path=");\r
- builder.append(path);\r
- builder.append(", description=");\r
- builder.append(description);\r
- builder.append(", reference=");\r
- builder.append(reference);\r
- builder.append(", identity=");\r
- builder.append(identity);\r
- builder.append(", units=");\r
- builder.append(units);\r
- builder.append("]");\r
- return builder.toString();\r
+ public RevisionAwareXPath getPathStatement() {\r
+ return xpath;\r
}\r
+ \r
+ \r
}\r
\r
import org.opendaylight.controller.model.api.type.InstanceIdentifierTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.RevisionAwareXPath;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class InstanceIdentifier implements InstanceIdentifierTypeDefinition {\r
\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getExtensionSchemaNodes()\r
*/\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
\r
import org.opendaylight.controller.model.api.type.LeafrefTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.RevisionAwareXPath;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class Leafref implements LeafrefTypeDefinition {\r
private static final QName name = BaseTypes.constructQName("leafref");\r
* @see org.opendaylight.controller.yang.model.api.SchemaNode#getExtensionSchemaNodes()\r
*/\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
--- /dev/null
+/*
+ * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
+ *
+ * This program and the accompanying materials are made available under the
+ * terms of the Eclipse Public License v1.0 which accompanies this distribution,
+ * and is available at http://www.eclipse.org/legal/epl-v10.html
+ */
+package org.opendaylight.controller.model.util;
+
+import org.opendaylight.controller.yang.model.api.RevisionAwareXPath;
+
+public class RevisionAwareXPathImpl implements RevisionAwareXPath {
+
+ private final String xpath;
+ private final boolean absolute;
+
+ public RevisionAwareXPathImpl(String xpath, boolean absolute) {
+ this.xpath = xpath;
+ this.absolute = absolute;
+ }
+
+ @Override
+ public boolean isAbsolute() {
+ return absolute;
+ }
+
+ @Override
+ public String toString() {
+ return xpath;
+ }
+
+ @Override
+ public int hashCode() {
+ final int prime = 31;
+ int result = 1;
+ result = prime * result + ((xpath == null) ? 0 : xpath.hashCode());
+ result = prime * result + (absolute ? 1231 : 1237);
+ return result;
+ }
+
+ @Override
+ public boolean equals(Object obj) {
+ if (this == obj) {
+ return true;
+ }
+ if (obj == null) {
+ return false;
+ }
+ if (getClass() != obj.getClass()) {
+ return false;
+ }
+ RevisionAwareXPathImpl other = (RevisionAwareXPathImpl) obj;
+ if (xpath == null) {
+ if (other.xpath != null) {
+ return false;
+ }
+ } else if (!xpath.equals(other.xpath)) {
+ return false;
+ }
+ if (absolute != other.absolute) {
+ return false;
+ }
+ return false;
+ }
+
+}
import org.opendaylight.controller.model.api.type.PatternConstraint;\r
import org.opendaylight.controller.model.api.type.StringTypeDefinition;\r
import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class StringType implements StringTypeDefinition {\r
\r
}\r
\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return Collections.emptyList();\r
}\r
\r
import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
import org.opendaylight.controller.yang.model.api.SchemaPath;\r
import org.opendaylight.controller.yang.model.api.Status;\r
+import org.opendaylight.controller.yang.model.api.UnknownSchemaNode;\r
\r
public class UnknownType implements UnknownTypeDefinition {\r
\r
private final List<LengthConstraint> lengthStatements;\r
private final List<PatternConstraint> patterns;\r
private final List<RangeConstraint> rangeStatements;\r
- private final List<ExtensionDefinition> extensions;\r
+ private final List<UnknownSchemaNode> extensions;\r
private final LengthConstraint lengthConstraint;\r
\r
private final Status status;\r
.emptyList();\r
private List<PatternConstraint> patterns = Collections.emptyList();\r
private List<RangeConstraint> rangeStatements = Collections.emptyList();\r
- private List<ExtensionDefinition> extensions = Collections.emptyList();\r
+ private List<UnknownSchemaNode> extensions = Collections.emptyList();\r
private LengthConstraint lengthConstraint = null;\r
\r
private Status status = Status.CURRENT;\r
return this;\r
}\r
\r
- public Builder extensions(final List<ExtensionDefinition> extensions) {\r
+ public Builder extensions(final List<UnknownSchemaNode> extensions) {\r
this.extensions = extensions;\r
return this;\r
}\r
* ()\r
*/\r
@Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
+ public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
return extensions;\r
}\r
\r
baseYangTypes.add("bits");\r
baseYangTypes.add("boolean");\r
baseYangTypes.add("decimal64");\r
+ baseYangTypes.add("empty");\r
baseYangTypes.add("enumeration");\r
+ baseYangTypes.add("identityref");\r
+ baseYangTypes.add("instance-identifier");\r
baseYangTypes.add("int8");\r
baseYangTypes.add("int16");\r
baseYangTypes.add("int32");\r
baseYangTypes.add("int64");\r
+ baseYangTypes.add("leafref");\r
baseYangTypes.add("string");\r
baseYangTypes.add("uint8");\r
baseYangTypes.add("uint16");\r
baseYangTypes.add("uint32");\r
baseYangTypes.add("uint64");\r
+ baseYangTypes.add("union");\r
}\r
\r
public static boolean isBaseYangType(String type) {\r