bf55043c73a1e3a4d440feb199e9407a5f57e23d
[yangtools.git] / yang / yang-parser-impl / src / main / java / org / opendaylight / yangtools / yang / parser / stmt / rfc6020 / effective / type / BooleanEffectiveStatementImpl.java
1 /*
2  * Copyright (c) 2015 Cisco Systems, Inc. and others.  All rights reserved.
3  *
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
7  */
8
9 package org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.type;
10
11 import org.opendaylight.yangtools.yang.model.api.stmt.TypeStatement;
12
13 import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.effective.EffectiveStatementBase;
14 import java.util.Collections;
15 import java.util.List;
16 import org.opendaylight.yangtools.yang.common.QName;
17 import org.opendaylight.yangtools.yang.common.YangConstants;
18 import org.opendaylight.yangtools.yang.model.api.SchemaPath;
19 import org.opendaylight.yangtools.yang.model.api.Status;
20 import org.opendaylight.yangtools.yang.model.api.UnknownSchemaNode;
21 import org.opendaylight.yangtools.yang.model.api.meta.EffectiveStatement;
22 import org.opendaylight.yangtools.yang.model.api.type.BooleanTypeDefinition;
23 import org.opendaylight.yangtools.yang.model.util.BaseTypes;
24 import org.opendaylight.yangtools.yang.parser.spi.meta.StmtContext;
25 import org.opendaylight.yangtools.yang.parser.stmt.rfc6020.TypeUtils;
26
27 public class BooleanEffectiveStatementImpl
28         extends EffectiveStatementBase<String, TypeStatement> implements
29         BooleanTypeDefinition {
30
31     public static final String LOCAL_NAME = TypeUtils.BOOLEAN;
32     private static final QName QNAME = QName.create(
33             YangConstants.RFC6020_YANG_MODULE, LOCAL_NAME);
34     private static final SchemaPath PATH = SchemaPath.create(true, QNAME);
35     private static final String DESCRIPTION = "The boolean built-in type represents a boolean value.";
36     private static final String REFERENCE = "https://tools.ietf.org/html/rfc6020#section-9.5";
37     private static final String UNITS = "";
38
39     public BooleanEffectiveStatementImpl(
40             StmtContext<String, TypeStatement, EffectiveStatement<String, TypeStatement>> ctx) {
41         super(ctx);
42
43     }
44
45     @Override
46     public BooleanTypeDefinition getBaseType() {
47         return null;
48     }
49
50     @Override
51     public String getUnits() {
52         return UNITS;
53     }
54
55     @Override
56     public Object getDefaultValue() {
57         return false;
58     }
59
60     @Override
61     public QName getQName() {
62         return QNAME;
63     }
64
65     @Override
66     public SchemaPath getPath() {
67         return PATH;
68     }
69
70     @Override
71     public List<UnknownSchemaNode> getUnknownSchemaNodes() {
72         return Collections.emptyList();
73     }
74
75     @Override
76     public String getDescription() {
77         return DESCRIPTION;
78     }
79
80     @Override
81     public String getReference() {
82         return REFERENCE;
83     }
84
85     @Override
86     public Status getStatus() {
87         return Status.CURRENT;
88     }
89
90     @Override
91     public String toString() {
92         StringBuilder builder = new StringBuilder();
93         builder.append(getClass().getSimpleName());
94         builder.append(" [name=");
95         builder.append(BaseTypes.BOOLEAN_QNAME);
96         builder.append(", path=");
97         builder.append(PATH);
98         builder.append("]");
99         return builder.toString();
100     }
101 }