/** * Copyright 2006-2016 the original author or authors. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ package org.mybatis.generator.api.dom.java; /** * @author Jeff Butler * */ public class PrimitiveTypeWrapper extends FullyQualifiedJavaType { private static PrimitiveTypeWrapper booleanInstance; private static PrimitiveTypeWrapper byteInstance; private static PrimitiveTypeWrapper characterInstance; private static PrimitiveTypeWrapper doubleInstance; private static PrimitiveTypeWrapper floatInstance; private static PrimitiveTypeWrapper integerInstance; private static PrimitiveTypeWrapper longInstance; private static PrimitiveTypeWrapper shortInstance; private String toPrimitiveMethod; /** * Use the static getXXXInstance methods to gain access to one of the type * wrappers. * * @param fullyQualifiedName * fully qualified name of the wrapper type * @param toPrimitiveMethod * the method that returns the wrapped primitive */ private PrimitiveTypeWrapper(String fullyQualifiedName, String toPrimitiveMethod) { super(fullyQualifiedName); this.toPrimitiveMethod = toPrimitiveMethod; } public String getToPrimitiveMethod() { return toPrimitiveMethod; } public static PrimitiveTypeWrapper getBooleanInstance() { if (booleanInstance == null) { booleanInstance = new PrimitiveTypeWrapper("java.lang.Boolean", //$NON-NLS-1$ "booleanValue()"); //$NON-NLS-1$ } return booleanInstance; } public static PrimitiveTypeWrapper getByteInstance() { if (byteInstance == null) { byteInstance = new PrimitiveTypeWrapper("java.lang.Byte", //$NON-NLS-1$ "byteValue()"); //$NON-NLS-1$ } return byteInstance; } public static PrimitiveTypeWrapper getCharacterInstance() { if (characterInstance == null) { characterInstance = new PrimitiveTypeWrapper("java.lang.Character", //$NON-NLS-1$ "charValue()"); //$NON-NLS-1$ } return characterInstance; } public static PrimitiveTypeWrapper getDoubleInstance() { if (doubleInstance == null) { doubleInstance = new PrimitiveTypeWrapper("java.lang.Double", //$NON-NLS-1$ "doubleValue()"); //$NON-NLS-1$ } return doubleInstance; } public static PrimitiveTypeWrapper getFloatInstance() { if (floatInstance == null) { floatInstance = new PrimitiveTypeWrapper("java.lang.Float", //$NON-NLS-1$ "floatValue()"); //$NON-NLS-1$ } return floatInstance; } public static PrimitiveTypeWrapper getIntegerInstance() { if (integerInstance == null) { integerInstance = new PrimitiveTypeWrapper("java.lang.Integer", //$NON-NLS-1$ "intValue()"); //$NON-NLS-1$ } return integerInstance; } public static PrimitiveTypeWrapper getLongInstance() { if (longInstance == null) { longInstance = new PrimitiveTypeWrapper("java.lang.Long", //$NON-NLS-1$ "longValue()"); //$NON-NLS-1$ } return longInstance; } public static PrimitiveTypeWrapper getShortInstance() { if (shortInstance == null) { shortInstance = new PrimitiveTypeWrapper("java.lang.Short", //$NON-NLS-1$ "shortValue()"); //$NON-NLS-1$ } return shortInstance; } }