82f278c40f8bc36a86787e838f524567cf640827
[yangtools.git] / yang / yang-model-util / src / main / java / org / opendaylight / yangtools / yang / model / util / Int32.java
1 /*
2  * Copyright (c) 2013 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 package org.opendaylight.yangtools.yang.model.util;
9
10 import org.opendaylight.yangtools.yang.common.QName;
11 import org.opendaylight.yangtools.yang.model.api.type.IntegerTypeDefinition;
12
13 /**
14  * Implementation of Yang int32 built-in type. <br>
15  * int32 represents integer values between -2147483648 and 2147483647,
16  * inclusively. The Java counterpart of Yang int32 built-in type is
17  * {@link Integer}.
18  *
19  * @see AbstractSignedInteger
20  *
21  */
22 public final class Int32 extends AbstractSignedInteger {
23     private static Int32 INSTANCE;
24     private static final QName NAME = BaseTypes.constructQName("int32");
25     private static final String DESCRIPTION = "int32  represents integer values between -2147483648 and 2147483647, inclusively.";
26
27     private Int32() {
28         super(Int32.NAME, Int32.DESCRIPTION, Integer.MIN_VALUE, Integer.MAX_VALUE, "");
29     }
30
31     public static Int32 getInstance() {
32         if (INSTANCE == null) {
33             INSTANCE = new Int32();
34         }
35         return INSTANCE;
36     }
37
38     @Override
39     public IntegerTypeDefinition getBaseType() {
40         return this;
41     }
42
43     @Override
44     public Object getDefaultValue() {
45         return null;
46     }
47
48     @Override
49     public String toString() {
50         return "type " + NAME;
51     }
52 }