+++ /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.parser.builder;\r
-\r
-import java.util.List;\r
-\r
-import org.opendaylight.controller.model.parser.api.DataSchemaNodeBuilder;\r
-import org.opendaylight.controller.model.parser.api.SchemaNodeBuilder;\r
-import org.opendaylight.controller.model.parser.api.TypeAwareBuilder;\r
-import org.opendaylight.controller.yang.common.QName;\r
-import org.opendaylight.controller.yang.model.api.ConstraintDefinition;\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.LeafListSchemaNode;\r
-import org.opendaylight.controller.yang.model.api.MustDefinition;\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
-\r
-\r
-public class LeafListSchemaNodeBuilder implements SchemaNodeBuilder, TypeAwareBuilder, MustAwareBuilder, DataSchemaNodeBuilder {\r
-\r
- private final LeafListSchemaNodeImpl instance;\r
- private final QName qname;\r
- private TypeDefinition<?> type;\r
- private MustDefinitionBuilder mustDefinitionBuilder;\r
-\r
- LeafListSchemaNodeBuilder(QName qname) {\r
- this.qname = qname;\r
- instance = new LeafListSchemaNodeImpl(qname);\r
- }\r
-\r
-\r
- @Override\r
- public DataSchemaNode build() {\r
- if(mustDefinitionBuilder != null) {\r
- MustDefinition mustDefinition = mustDefinitionBuilder.build();\r
- instance.setMustDefinition(mustDefinition);\r
- }\r
- return instance;\r
- }\r
-\r
- @Override\r
- public QName getQName() {\r
- return qname;\r
- }\r
-\r
- @Override\r
- public void setPath(SchemaPath path) {\r
- instance.setPath(path);\r
- }\r
-\r
- @Override\r
- public void setDescription(String description) {\r
- instance.setDescription(description);\r
- }\r
-\r
- @Override\r
- public void setReference(String reference) {\r
- instance.setReference(reference);\r
- }\r
-\r
- @Override\r
- public void setStatus(Status status) {\r
- instance.setStatus(status);\r
- }\r
-\r
- @Override\r
- public TypeDefinition<?> getType() {\r
- return type;\r
- }\r
-\r
- @Override\r
- public void setType(TypeDefinition<?> type) {\r
- this.type = type;\r
- instance.setType(type);\r
- }\r
-\r
- @Override\r
- public void setMustDefinitionBuilder(MustDefinitionBuilder mustDefinitionBuilder) {\r
- this.mustDefinitionBuilder = mustDefinitionBuilder;\r
- }\r
-\r
- public void setAugmenting(boolean augmenting) {\r
- instance.setAugmenting(augmenting);\r
- }\r
- public void setConfiguration(boolean configuration) {\r
- instance.setConfiguration(configuration);\r
- }\r
- public void setConstraints(ConstraintDefinition constraints) {\r
- instance.setConstraints(constraints);\r
- }\r
- public void setUserOrdered(boolean userOrdered) {\r
- instance.setUserOrdered(userOrdered);\r
- }\r
-\r
-\r
- private class LeafListSchemaNodeImpl implements LeafListSchemaNode {\r
- private final QName qname;\r
- private SchemaPath path;\r
- private String description;\r
- private String reference;\r
- private Status status = Status.CURRENT;\r
-\r
- private boolean augmenting;\r
- private boolean configuration;\r
- private ConstraintDefinition constraints;\r
-\r
- private TypeDefinition<?> type;\r
- private boolean userOrdered;\r
-\r
- private MustDefinition mustDefinition;\r
-\r
- private LeafListSchemaNodeImpl(QName qname) {\r
- this.qname = qname;\r
- }\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 boolean isAugmenting() {\r
- return augmenting;\r
- }\r
- private void setAugmenting(boolean augmenting) {\r
- this.augmenting = augmenting;\r
- }\r
-\r
- @Override\r
- public boolean isConfiguration() {\r
- return configuration;\r
- }\r
- private void setConfiguration(boolean configuration) {\r
- this.configuration = configuration;\r
- }\r
-\r
- @Override\r
- public ConstraintDefinition getConstraints() {\r
- return constraints;\r
- }\r
- private void setConstraints(ConstraintDefinition constraints) {\r
- this.constraints = constraints;\r
- }\r
-\r
- @Override\r
- public TypeDefinition<?> getType() {\r
- return type;\r
- }\r
- public void setType(TypeDefinition<? extends TypeDefinition<?>> type) {\r
- this.type = type;\r
- }\r
-\r
- @Override\r
- public boolean isUserOrdered() {\r
- return userOrdered;\r
- }\r
- private void setUserOrdered(boolean userOrdered) {\r
- this.userOrdered = userOrdered;\r
- }\r
-\r
- @Override\r
- public MustDefinition getMustDefinition() {\r
- return mustDefinition;\r
- }\r
- private void setMustDefinition(MustDefinition mustDefinition) {\r
- this.mustDefinition = mustDefinition;\r
- }\r
-\r
- @Override\r
- public List<ExtensionDefinition> getExtensionSchemaNodes() {\r
- // TODO Auto-generated method stub\r
- return null;\r
- }\r
-\r
- @Override\r
- public String toString() {\r
- return LeafListSchemaNodeImpl.class.getSimpleName() +"[qname="+ qname +", type="+ type +"]";\r
- }\r
- }\r
-\r
- }
\ No newline at end of file