Merge from development repository.
[controller.git] / opendaylight / sal / yang-prototype / code-generator / yang-model-parser-impl / src / main / java / org / opendaylight / controller / model / parser / builder / GroupingBuilderImpl.java
diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/model/parser/builder/GroupingBuilderImpl.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/model/parser/builder/GroupingBuilderImpl.java
deleted file mode 100644 (file)
index 5ffe307..0000000
+++ /dev/null
@@ -1,245 +0,0 @@
-/*\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.parser.builder;\r
-\r
-import java.util.HashMap;\r
-import java.util.HashSet;\r
-import java.util.List;\r
-import java.util.Map;\r
-import java.util.Set;\r
-\r
-import org.opendaylight.controller.model.parser.api.DataSchemaNodeBuilder;\r
-import org.opendaylight.controller.model.parser.api.GroupingBuilder;\r
-import org.opendaylight.controller.model.parser.api.TypeDefinitionBuilder;\r
-import org.opendaylight.controller.model.parser.api.UsesNodeBuilder;\r
-import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.DataSchemaNode;\r
-import org.opendaylight.controller.yang.model.api.ExtensionDefinition;\r
-import org.opendaylight.controller.yang.model.api.GroupingDefinition;\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.UsesNode;\r
-\r
-\r
-public class GroupingBuilderImpl implements GroupingBuilder {\r
-\r
-       private final GroupingDefinitionImpl instance;\r
-       private final Set<DataSchemaNodeBuilder> childNodes = new HashSet<DataSchemaNodeBuilder>();\r
-       private final Set<GroupingBuilder> groupings = new HashSet<GroupingBuilder>();\r
-       private final Set<TypeDefinitionBuilder> addedTypedefs = new HashSet<TypeDefinitionBuilder>();\r
-       private final Set<UsesNodeBuilder> usesNodes = new HashSet<UsesNodeBuilder>();\r
-\r
-       GroupingBuilderImpl(QName qname) {\r
-               this.instance = new GroupingDefinitionImpl(qname);\r
-       }\r
-\r
-       @Override\r
-       public GroupingDefinition build() {\r
-               // CHILD NODES\r
-               Map<QName, DataSchemaNode> childs = new HashMap<QName, DataSchemaNode>();\r
-               for(DataSchemaNodeBuilder node : childNodes) {\r
-                       childs.put(node.getQName(), node.build());\r
-               }\r
-               instance.setChildNodes(childs);\r
-\r
-               // GROUPINGS\r
-               Set<GroupingDefinition> groupingDefinitions = new HashSet<GroupingDefinition>();\r
-               for(GroupingBuilder builder : groupings) {\r
-                       groupingDefinitions.add(builder.build());\r
-               }\r
-               instance.setGroupings(groupingDefinitions);\r
-\r
-               // TYPEDEFS\r
-               Set<TypeDefinition<?>> typedefs = new HashSet<TypeDefinition<?>>();\r
-               for (TypeDefinitionBuilder entry : addedTypedefs) {\r
-                       typedefs.add(entry.build());\r
-               }\r
-               instance.setTypeDefinitions(typedefs);\r
-\r
-               // USES\r
-               Set<UsesNode> usesNodeDefinitions = new HashSet<UsesNode>();\r
-               for(UsesNodeBuilder builder : usesNodes) {\r
-                       usesNodeDefinitions.add(builder.build());\r
-               }\r
-               instance.setUses(usesNodeDefinitions);\r
-\r
-               return instance;\r
-       }\r
-\r
-       @Override\r
-       public void addTypedef(TypeDefinitionBuilder type) {\r
-               addedTypedefs.add(type);\r
-       }\r
-       @Override\r
-       public void setPath(SchemaPath schemaPath) {\r
-               instance.setPath(schemaPath);\r
-       }\r
-       @Override\r
-       public void setDescription(String description) {\r
-               instance.setDescription(description);\r
-       }\r
-       @Override\r
-       public void setReference(String reference) {\r
-               instance.setReference(reference);\r
-       }\r
-       @Override\r
-       public void setStatus(Status status) {\r
-               instance.setStatus(status);\r
-       }\r
-\r
-       @Override\r
-       public void addChildNode(DataSchemaNodeBuilder childNode) {\r
-               childNodes.add(childNode);\r
-       }\r
-\r
-       @Override\r
-       public void addGrouping(GroupingBuilder grouping) {\r
-               groupings.add(grouping);\r
-       }\r
-\r
-       @Override\r
-       public void addUsesNode(UsesNodeBuilder usesBuilder) {\r
-               usesNodes.add(usesBuilder);\r
-       }\r
-\r
-\r
-\r
-       private static class GroupingDefinitionImpl implements GroupingDefinition {\r
-\r
-               private final QName qname;\r
-               private SchemaPath path;\r
-               private String description;\r
-               private String reference;\r
-               private Status status;\r
-\r
-               private Map<QName, DataSchemaNode> childNodes;\r
-               private Set<GroupingDefinition> groupings;\r
-               private Set<TypeDefinition<?>> typeDefinitions;\r
-               private Set<UsesNode> uses;\r
-\r
-               private GroupingDefinitionImpl(QName qname) {\r
-                       this.qname = qname;\r
-               }\r
-\r
-               @Override\r
-               public QName getQName() {\r
-                       return qname;\r
-               }\r
-\r
-               @Override\r
-               public SchemaPath getPath() {\r
-                       return path;\r
-               }\r
-               private void setPath(SchemaPath path) {\r
-                       this.path = path;\r
-               }\r
-\r
-               @Override\r
-               public String getDescription() {\r
-                       return description;\r
-               }\r
-               private void setDescription(String description) {\r
-                       this.description = description;\r
-               }\r
-\r
-               @Override\r
-               public String getReference() {\r
-                       return reference;\r
-               }\r
-               private void setReference(String reference) {\r
-                       this.reference = reference;\r
-               }\r
-\r
-               @Override\r
-               public Status getStatus() {\r
-                       return status;\r
-               }\r
-               private void setStatus(Status status) {\r
-                       this.status = status;\r
-               }\r
-\r
-               @Override\r
-               public Set<DataSchemaNode> getChildNodes() {\r
-                       return new HashSet<DataSchemaNode>(childNodes.values());\r
-               }\r
-               private void setChildNodes(Map<QName, DataSchemaNode> childNodes) {\r
-                       this.childNodes = childNodes;\r
-               }\r
-\r
-               @Override\r
-               public Set<GroupingDefinition> getGroupings() {\r
-                       return groupings;\r
-               }\r
-               private void setGroupings(Set<GroupingDefinition> groupings) {\r
-                       this.groupings = groupings;\r
-               }\r
-\r
-               @Override\r
-               public Set<UsesNode> getUses() {\r
-                       return uses;\r
-               }\r
-               private void setUses(Set<UsesNode> uses) {\r
-                       this.uses = uses;\r
-               }\r
-\r
-               @Override\r
-               public Set<TypeDefinition<?>> getTypeDefinitions() {\r
-                       return typeDefinitions;\r
-               }\r
-               private void setTypeDefinitions(Set<TypeDefinition<?>> typeDefinitions) {\r
-                       this.typeDefinitions = typeDefinitions;\r
-               }\r
-\r
-               @Override\r
-               public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
-                       // TODO Auto-generated method stub\r
-                       return null;\r
-               }\r
-\r
-               @Override\r
-               public DataSchemaNode getDataChildByName(QName name) {\r
-                       return childNodes.get(name);\r
-               }\r
-\r
-               @Override\r
-               public DataSchemaNode getDataChildByName(String name) {\r
-                       DataSchemaNode result = null;\r
-                       for(Map.Entry<QName, DataSchemaNode> entry : childNodes.entrySet()) {\r
-                               if(entry.getKey().getLocalName().equals(name)) {\r
-                                       result = entry.getValue();\r
-                                       break;\r
-                               }\r
-                       }\r
-                       return result;\r
-               }\r
-\r
-               @Override\r
-               public String toString() {\r
-                       StringBuilder sb = new StringBuilder();\r
-                       sb.append(GroupingDefinitionImpl.class.getSimpleName() +"[\n");\r
-                       sb.append("qname="+ qname +", \n");\r
-                       sb.append("path="+ path +", \n");\r
-                       sb.append("description="+ description +", \n");\r
-                       sb.append("reference="+ reference +", \n");\r
-                       sb.append("status="+ status +", \n");\r
-                       sb.append("childNodes="+ childNodes.values() +", \n");\r
-                       sb.append("groupings="+ groupings +"]");\r
-                       return sb.toString();\r
-               }\r
-       }\r
-\r
-       /**\r
-        * Always returns null.\r
-        */\r
-       @Override\r
-       public QName getQName() {\r
-               return null;\r
-       }\r
-\r
-}\r