+++ /dev/null
-/*\r
- * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.\r
- *\r
- * This program and the accompanying materials are made available under the\r
- * terms of the Eclipse Public License v1.0 which accompanies this distribution,\r
- * and is available at http://www.eclipse.org/legal/epl-v10.html\r
- */\r
-package org.opendaylight.controller.model.util;\r
-\r
-import java.util.Collections;\r
-import java.util.List;\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.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
-/**\r
- * The <code>default</code> implementation of Instance Leafref Type Definition interface.\r
- *\r
- * @see LeafrefTypeDefinition\r
- */\r
-public class Leafref implements LeafrefTypeDefinition {\r
- private static final QName name = BaseTypes.constructQName("leafref");\r
- private static final String description = "The leafref type is used to reference a " +\r
- "particular leaf instance in the data tree.";\r
- private static final String reference = "https://tools.ietf.org/html/rfc6020#section-9.9";\r
- private final SchemaPath path = BaseTypes.schemaPath(name);\r
- private final RevisionAwareXPath xpath;\r
- private final String units = "";\r
-\r
- public Leafref(RevisionAwareXPath xpath) {\r
- super();\r
- this.xpath = xpath;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.TypeDefinition#getBaseType()\r
- */\r
- @Override\r
- public LeafrefTypeDefinition getBaseType() {\r
- return this;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.TypeDefinition#getUnits()\r
- */\r
- @Override\r
- public String getUnits() {\r
- return units;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.TypeDefinition#getDefaultValue()\r
- */\r
- @Override\r
- public Object getDefaultValue() {\r
- return this;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getQName()\r
- */\r
- @Override\r
- public QName getQName() {\r
- return name;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getPath()\r
- */\r
- @Override\r
- public SchemaPath getPath() {\r
- return path;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getDescription()\r
- */\r
- @Override\r
- public String getDescription() {\r
- return description;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getReference()\r
- */\r
- @Override\r
- public String getReference() {\r
- return reference;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getStatus()\r
- */\r
- @Override\r
- public Status getStatus() {\r
- return Status.CURRENT;\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see org.opendaylight.controller.yang.model.api.SchemaNode#getExtensionSchemaNodes()\r
- */\r
- @Override\r
- public List<UnknownSchemaNode> getUnknownSchemaNodes() {\r
- return Collections.emptyList();\r
- }\r
-\r
- /*\r
- * (non-Javadoc)\r
- * \r
- * @see\r
- * org.opendaylight.controller.yang.model.api.type.LeafrefTypeDefinition#getPathStatement()\r
- */\r
- @Override\r
- public RevisionAwareXPath getPathStatement() {\r
- return xpath;\r
- }\r
-\r
- @Override\r
- public int hashCode() {\r
- final int prime = 31;\r
- int result = 1;\r
- result = prime * result + ((path == null) ? 0 : path.hashCode());\r
- result = prime * result + ((units == null) ? 0 : units.hashCode());\r
- result = prime * result + ((xpath == null) ? 0 : xpath.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
- Leafref other = (Leafref) obj;\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 (units == null) {\r
- if (other.units != null) {\r
- return false;\r
- }\r
- } else if (!units.equals(other.units)) {\r
- return false;\r
- }\r
- if (xpath == null) {\r
- if (other.xpath != null) {\r
- return false;\r
- }\r
- } else if (!xpath.equals(other.xpath)) {\r
- return false;\r
- }\r
- return true;\r
- }\r
-\r
- @Override\r
- public String toString() {\r
- StringBuilder builder = new StringBuilder();\r
- builder.append("Leafref [path=");\r
- builder.append(path);\r
- builder.append(", xpath=");\r
- builder.append(xpath);\r
- builder.append(", units=");\r
- builder.append(units);\r
- builder.append("]");\r
- return builder.toString();\r
- }\r
-}\r