2 * Copyright (c) 2013 Cisco Systems, Inc. and others. All rights reserved.
4 * This program and the accompanying materials are made available under the
5 * terms of the Eclipse Public License v1.0 which accompanies this distribution,
6 * and is available at http://www.eclipse.org/legal/epl-v10.html
8 package org.opendaylight.yangtools.yang.parser.builder.util;
10 import org.opendaylight.yangtools.yang.common.QName;
11 import org.opendaylight.yangtools.yang.model.api.TypeDefinition;
12 import org.opendaylight.yangtools.yang.parser.builder.api.TypeAwareBuilder;
13 import org.opendaylight.yangtools.yang.parser.builder.api.TypeDefinitionBuilder;
16 * Basic implementation for TypeAwareBuilder builders.
18 public abstract class AbstractTypeAwareBuilder extends AbstractBuilder implements TypeAwareBuilder {
19 protected QName qname;
20 protected TypeDefinition<?> type;
21 protected TypeDefinitionBuilder typedef;
23 private QName baseTypeName;
25 protected AbstractTypeAwareBuilder(final String moduleName, final int line, final QName qname) {
26 super(moduleName, line);
31 public QName getQName() {
36 public TypeDefinition<?> getType() {
41 public TypeDefinitionBuilder getTypedef() {
46 public void setType(TypeDefinition<?> type) {
52 public void setTypedef(TypeDefinitionBuilder typedef) {
53 this.typedef = typedef;
58 public QName getTypeQName() {
63 public void setTypeQName(QName qname) {
64 this.baseTypeName = qname;