X-Git-Url: https://git.opendaylight.org/gerrit/gitweb?a=blobdiff_plain;f=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fyang-model-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fyang%2Fmodel%2Fparser%2Fbuilder%2Fimpl%2FUnionTypeBuilder.java;fp=opendaylight%2Fsal%2Fyang-prototype%2Fcode-generator%2Fyang-model-parser-impl%2Fsrc%2Fmain%2Fjava%2Forg%2Fopendaylight%2Fcontroller%2Fyang%2Fmodel%2Fparser%2Fbuilder%2Fimpl%2FUnionTypeBuilder.java;h=265c94d601c1077c363ac73845fba9c1758c0e4e;hb=e1d2ab64a77b470dbd9fb66119348dc997f3e7b4;hp=0000000000000000000000000000000000000000;hpb=f69c674bc091ea5f70bde33fc45ca7e181c2f6e0;p=controller.git diff --git a/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java new file mode 100644 index 0000000000..265c94d601 --- /dev/null +++ b/opendaylight/sal/yang-prototype/code-generator/yang-model-parser-impl/src/main/java/org/opendaylight/controller/yang/model/parser/builder/impl/UnionTypeBuilder.java @@ -0,0 +1,82 @@ +/* + * 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.parser.builder.impl; + +import java.util.ArrayList; +import java.util.List; + +import org.opendaylight.controller.model.util.UnionType; +import org.opendaylight.controller.yang.common.QName; +import org.opendaylight.controller.yang.model.api.TypeDefinition; +import org.opendaylight.controller.yang.model.parser.builder.api.Builder; +import org.opendaylight.controller.yang.model.parser.builder.api.TypeAwareBuilder; +import org.opendaylight.controller.yang.model.parser.builder.api.TypeDefinitionBuilder; + +public class UnionTypeBuilder implements TypeAwareBuilder, TypeDefinitionBuilder, Builder { + + private final List> types; + private final List typedefs; + private final UnionType instance; + + public UnionTypeBuilder() { + types = new ArrayList>(); + typedefs = new ArrayList(); + instance = new UnionType(types); + } + + public List> getTypes() { + return types; + } + + @Override + public TypeDefinition getType() { + return instance; + } + + @Override + public void setType(TypeDefinition type) { + types.add(type); + } + + public void addType(TypeDefinitionBuilder tdb) { + typedefs.add(tdb); + } + + @Override + public UnionType build() { + for(TypeDefinitionBuilder tdb : typedefs) { + types.add(tdb.build()); + } + return instance; + } + + @Override + public QName getQName() { + // TODO Auto-generated method stub + return null; + } + + @Override + public TypeDefinition getBaseType() { + // TODO Auto-generated method stub + return null; + } + + @Override + public void setUnits(String units) { + // TODO Auto-generated method stub + + } + + @Override + public void setDefaultValue(Object defaultValue) { + // TODO Auto-generated method stub + + } + +}