Example usage for java.lang Short TYPE

List of usage examples for java.lang Short TYPE

Introduction

In this page you can find the example usage for java.lang Short TYPE.

Prototype

Class TYPE

To view the source code for java.lang Short TYPE.

Click Source Link

Document

The Class instance representing the primitive type short .

Usage

From source file:android.reflect.ClazzLoader.java

/**
 * ????/*from   w  w w .  ja v a  2 s  .  co m*/
 */
public static <O, V> void setFieldValue(O o, Field field, V v) {
    if (field != null) {
        try {
            field.setAccessible(true);

            if (v == null) {
                field.set(o, null);
            } else {
                Class<?> vType = v.getClass();
                if (vType == Integer.TYPE) {
                    field.setInt(o, (Integer) v);
                } else if (vType == Long.TYPE) {
                    field.setLong(o, (Long) v);
                } else if (vType == Boolean.TYPE) {
                    field.setBoolean(o, (Boolean) v);
                } else if (vType == Float.TYPE) {
                    field.setFloat(o, (Float) v);
                } else if (vType == Short.TYPE) {
                    field.setShort(o, (Short) v);
                } else if (vType == Byte.TYPE) {
                    field.setByte(o, (Byte) v);
                } else if (vType == Double.TYPE) {
                    field.setDouble(o, (Double) v);
                } else if (vType == Character.TYPE) {
                    field.setChar(o, (Character) v);
                } else {
                    field.set(o, v);
                }
            }
        } catch (Throwable t) {
            Log.e(TAG, t);
        }
    }
}

From source file:com.examples.with.different.packagename.testcarver.AbstractConverter.java

/**
 * Change primitve Class types to the associated wrapper class.
 * @param type The class type to check.//from  w ww . j a  v a2 s .  c om
 * @return The converted type.
 */
Class primitive(Class type) {
    if (type == null || !type.isPrimitive()) {
        return type;
    }

    if (type == Integer.TYPE) {
        return Integer.class;
    } else if (type == Double.TYPE) {
        return Double.class;
    } else if (type == Long.TYPE) {
        return Long.class;
    } else if (type == Boolean.TYPE) {
        return Boolean.class;
    } else if (type == Float.TYPE) {
        return Float.class;
    } else if (type == Short.TYPE) {
        return Short.class;
    } else if (type == Byte.TYPE) {
        return Byte.class;
    } else if (type == Character.TYPE) {
        return Character.class;
    } else {
        return type;
    }
}

From source file:org.javelin.sws.ext.bind.internal.BuiltInMappings.java

/**
 * @param patterns/*from  w  w  w  .  j  a v  a 2s  . c  om*/
 */
public static <T> void initialize(Map<Class<?>, TypedPattern<?>> patterns,
        Map<QName, TypedPattern<?>> patternsForTypeQNames) {
    // see: com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl<T> and inner
    // com.sun.xml.bind.v2.model.impl.RuntimeBuiltinLeafInfoImpl.StringImpl<T> implementations

    // we have two places where XSD -> Java mapping is defined:
    // - JAX-RPC 1.1, section 4.2.1 Simple Types
    // - JAXB 2, section 6.2.2 Atomic Datatype

    // XML Schema (1.0) Part 2: Datatypes Second Edition, or/and
    // W3C XML Schema Definition Language (XSD) 1.1 Part 2: Datatypes

    // conversion of primitive types should be base on "Lexical Mapping" of simple types defined in XSD part 2

    // 3.2 Special Built-in Datatypes (#special-datatypes)
    // 3.2.1 anySimpleType (#anySimpleType)
    // 3.2.2 anyAtomicType (#anyAtomicType)

    // 3.3 Primitive Datatypes (#built-in-primitive-datatypes)

    // 3.3.1 string (#string)
    {
        SimpleContentPattern<String> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_STRING,
                String.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
    }

    // 3.3.2 boolean (#boolean)
    {
        SimpleContentPattern<Boolean> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_BOOLEAN, Boolean.class);
        patterns.put(Boolean.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Boolean>() {
            @Override
            public String print(Boolean object, Locale locale) {
                return Boolean.toString(object);
            }

            @Override
            public Boolean parse(String text, Locale locale) throws ParseException {
                // TODO: should allow "true", "false", "1", "0"
                return Boolean.parseBoolean(text);
            }
        });
    }

    // 3.3.3 decimal (#decimal)
    {
        SimpleContentPattern<BigDecimal> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_DECIMAL, BigDecimal.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<BigDecimal>() {
            @Override
            public String print(BigDecimal object, Locale locale) {
                return object.toPlainString();
            }

            @Override
            public BigDecimal parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)
                return new BigDecimal(text);
            }
        });
    }

    // 3.3.4 float (#float)
    {
        SimpleContentPattern<Float> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_FLOAT,
                Float.class);
        patterns.put(Float.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Float>() {
            @Override
            public String print(Float object, Locale locale) {
                return Float.toString(object);
            }

            @Override
            public Float parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)([Ee](\+|-)?[0-9]+)?|(\+|-)?INF|NaN
                return Float.parseFloat(text);
            }
        });
    }

    // 3.3.5 double (#double)
    {
        SimpleContentPattern<Double> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_DOUBLE,
                Double.class);
        patterns.put(Double.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Double>() {
            @Override
            public String print(Double object, Locale locale) {
                return Double.toString(object);
            }

            @Override
            public Double parse(String text, Locale locale) throws ParseException {
                // TODO: should allow (\+|-)?([0-9]+(\.[0-9]*)?|\.[0-9]+)([Ee](\+|-)?[0-9]+)?|(\+|-)?INF|NaN
                return Double.parseDouble(text);
            }
        });
    }

    // 3.3.6 duration (#duration)
    // 3.3.7 dateTime (#dateTime)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern
                .newValuePattern(SweJaxbConstants.XSD_DATETIME, DateTime.class);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter DTMS = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSSZZ");
            private final DateTimeFormatter DT = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ssZZ");
            private final DateTimeFormatter DTZMS = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss.SSS'Z'");
            private final DateTimeFormatter DTZ = DateTimeFormat.forPattern("yyyy-MM-dd'T'HH:mm:ss'Z'");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                if (object.getMillisOfSecond() == 0) {
                    return object.getZone() == DateTimeZone.UTC ? DTZ.print(object) : DT.print(object);
                } else {
                    return object.getZone() == DateTimeZone.UTC ? DTZMS.print(object) : DTMS.print(object);
                }
            }
        });
    }
    // 3.3.8 time (#time)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_TIME,
                DateTime.class);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter TMS = DateTimeFormat.forPattern("HH:mm:ss.SSS");
            private final DateTimeFormatter T = DateTimeFormat.forPattern("HH:mm:ss");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                // TODO: should allow (([01][0-9]|2[0-3]):[0-5][0-9]:[0-5][0-9](\.[0-9]+)?|(24:00:00(\.0+)?))(Z|(\+|-)((0[0-9]|1[0-3]):[0-5][0-9]|14:00))?
                if (object.getMillisOfSecond() == 0)
                    return T.print(object);
                else
                    return TMS.print(object);
            }
        });
    }
    // 3.3.9 date (#date)
    {
        SimpleContentPattern<DateTime> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_DATE,
                DateTime.class);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<DateTime>() {
            private final DateTimeFormatter DT = DateTimeFormat.forPattern("yyyy-MM-ddZZ");
            private final DateTimeFormatter DTZ = DateTimeFormat.forPattern("yyyy-MM-dd'Z'");

            @Override
            public DateTime parse(String text, Locale locale) throws ParseException {
                return null;
            }

            @Override
            public String print(DateTime object, Locale locale) {
                return object.getZone() == DateTimeZone.UTC ? DTZ.print(object) : DT.print(object);
            }
        });
    }
    // 3.3.10 gYearMonth (#gYearMonth)
    // 3.3.11 gYear (#gYear)
    // 3.3.12 gMonthDay (#gMonthDay)
    // 3.3.13 gDay (#gDay)
    // 3.3.14 gMonth (#gMonth)
    // 3.3.15 hexBinary (#hexBinary)
    // 3.3.16 base64Binary (#base64Binary)
    // 3.3.17 anyURI (#anyURI)
    // 3.3.18 QName (#QName)
    // 3.3.19 NOTATION (#NOTATION)

    // 3.4 Other Built-in Datatypes (#ordinary-built-ins)

    // 3.4.1 normalizedString (#normalizedString)
    // 3.4.2 token (#token)
    // 3.4.3 language (#language)
    // 3.4.4 NMTOKEN (#NMTOKEN)
    // 3.4.5 NMTOKENS (#NMTOKENS)
    // 3.4.6 Name (#Name)
    // 3.4.7 NCName (#NCName)
    // 3.4.8 ID (#ID)
    // 3.4.9 IDREF (#IDREF)
    // 3.4.10 IDREFS (#IDREFS)
    // 3.4.11 ENTITY (#ENTITY)
    // 3.4.12 ENTITIES (#ENTITIES)
    // 3.4.13 integer (#integer)
    // 3.4.14 nonPositiveInteger (#nonPositiveInteger)
    // 3.4.15 negativeInteger (#negativeInteger)
    // 3.4.16 long (#long)
    {
        SimpleContentPattern<Long> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_LONG,
                Long.class);
        patterns.put(Long.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Long>() {
            @Override
            public String print(Long object, Locale locale) {
                return Long.toString(object);
            }

            @Override
            public Long parse(String text, Locale locale) throws ParseException {
                return Long.parseLong(text);
            }
        });
    }
    // 3.4.17 int (#int)
    {
        SimpleContentPattern<Integer> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_INT,
                Integer.class);
        patterns.put(Integer.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Integer>() {
            @Override
            public String print(Integer object, Locale locale) {
                return Integer.toString(object);
            }

            @Override
            public Integer parse(String text, Locale locale) throws ParseException {
                return Integer.parseInt(text);
            }
        });
    }
    // 3.4.18 short (#short)
    {
        SimpleContentPattern<Short> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_SHORT,
                Short.class);
        patterns.put(Short.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Short>() {
            @Override
            public String print(Short object, Locale locale) {
                return Short.toString(object);
            }

            @Override
            public Short parse(String text, Locale locale) throws ParseException {
                return Short.parseShort(text);
            }
        });
    }
    // 3.4.19 byte (#byte)
    {
        SimpleContentPattern<Byte> pattern = SimpleContentPattern.newValuePattern(SweJaxbConstants.XSD_BYTE,
                Byte.class);
        patterns.put(Byte.TYPE, pattern);
        patterns.put(pattern.getJavaType(), pattern);
        patternsForTypeQNames.put(pattern.getSchemaType(), pattern);
        pattern.setFormatter(new Formatter<Byte>() {
            @Override
            public String print(Byte object, Locale locale) {
                return Byte.toString(object);
            }

            @Override
            public Byte parse(String text, Locale locale) throws ParseException {
                return Byte.parseByte(text);
            }
        });
    }
    // 3.4.20 nonNegativeInteger (#nonNegativeInteger)
    // 3.4.21 unsignedLong (#unsignedLong)
    // 3.4.22 unsignedInt (#unsignedInt)
    // 3.4.23 unsignedShort (#unsignedShort)
    // 3.4.24 unsignedByte (#unsignedByte)
    // 3.4.25 positiveInteger (#positiveInteger)
    // 3.4.26 yearMonthDuration (#yearMonthDuration)
    // 3.4.27 dayTimeDuration (#dayTimeDuration)
    // 3.4.28 dateTimeStamp (#dateTimeStamp)

    // other simple types
    // JAXB2 (static):
    /*
       class [B
       class char
       class java.awt.Image
       class java.io.File
       class java.lang.Character
       class java.lang.Class
       class java.lang.Void
       class java.math.BigDecimal
       class java.math.BigInteger
       class java.net.URI
       class java.net.URL
       class java.util.Calendar
       class java.util.Date
       class java.util.GregorianCalendar
       class java.util.UUID
       class javax.activation.DataHandler
       class javax.xml.datatype.Duration
       class javax.xml.datatype.XMLGregorianCalendar
       class javax.xml.namespace.QName
       interface javax.xml.transform.Source
       class void
     */
    // JAXB2 (additional mappings available at runtime):
    /*
     * class com.sun.xml.bind.api.CompositeStructure
     * class java.lang.Object
     * class javax.xml.bind.JAXBElement
     */
}

From source file:org.cloudata.core.common.io.CObjectWritable.java

/** Read a {@link CWritable}, {@link String}, primitive type, or an array of
 * the preceding. *///from www.  j a  v a  2 s.c om
@SuppressWarnings("unchecked")
public static Object readObject(DataInput in, CObjectWritable objectWritable, CloudataConf conf,
        boolean arrayComponent, Class componentClass) throws IOException {
    String className;
    if (arrayComponent) {
        className = componentClass.getName();
    } else {
        className = CUTF8.readString(in);
        //SANGCHUL
        //   System.out.println("SANGCHUL] className:" + className);
    }

    Class<?> declaredClass = PRIMITIVE_NAMES.get(className);
    if (declaredClass == null) {
        try {
            declaredClass = conf.getClassByName(className);
        } catch (ClassNotFoundException e) {
            //SANGCHUL
            e.printStackTrace();
            throw new RuntimeException("readObject can't find class[className=" + className + "]", e);
        }
    }

    Object instance;

    if (declaredClass.isPrimitive()) { // primitive types

        if (declaredClass == Boolean.TYPE) { // boolean
            instance = Boolean.valueOf(in.readBoolean());
        } else if (declaredClass == Character.TYPE) { // char
            instance = Character.valueOf(in.readChar());
        } else if (declaredClass == Byte.TYPE) { // byte
            instance = Byte.valueOf(in.readByte());
        } else if (declaredClass == Short.TYPE) { // short
            instance = Short.valueOf(in.readShort());
        } else if (declaredClass == Integer.TYPE) { // int
            instance = Integer.valueOf(in.readInt());
        } else if (declaredClass == Long.TYPE) { // long
            instance = Long.valueOf(in.readLong());
        } else if (declaredClass == Float.TYPE) { // float
            instance = Float.valueOf(in.readFloat());
        } else if (declaredClass == Double.TYPE) { // double
            instance = Double.valueOf(in.readDouble());
        } else if (declaredClass == Void.TYPE) { // void
            instance = null;
        } else {
            throw new IllegalArgumentException("Not a primitive: " + declaredClass);
        }

    } else if (declaredClass.isArray()) { // array
        //System.out.println("SANGCHUL] is array");
        int length = in.readInt();
        //System.out.println("SANGCHUL] array length : " + length);
        //System.out.println("Read:in.readInt():" + length);
        if (declaredClass.getComponentType() == Byte.TYPE) {
            byte[] bytes = new byte[length];
            in.readFully(bytes);
            instance = bytes;
        } else if (declaredClass.getComponentType() == ColumnValue.class) {
            instance = readColumnValue(in, conf, declaredClass, length);
        } else {
            Class componentType = declaredClass.getComponentType();

            // SANGCHUL
            //System.out.println("SANGCHUL] componentType : " + componentType.getName());

            instance = Array.newInstance(componentType, length);
            for (int i = 0; i < length; i++) {
                Object arrayComponentInstance = readObject(in, null, conf, !componentType.isArray(),
                        componentType);
                Array.set(instance, i, arrayComponentInstance);
                //Array.set(instance, i, readObject(in, conf));
            }
        }
    } else if (declaredClass == String.class) { // String
        instance = CUTF8.readString(in);
    } else if (declaredClass.isEnum()) { // enum
        instance = Enum.valueOf((Class<? extends Enum>) declaredClass, CUTF8.readString(in));
    } else if (declaredClass == ColumnValue.class) {
        //ColumnValue?  ?? ?? ?  ? ?.
        //? ?   ? ? ? ? . 
        Class instanceClass = null;
        try {
            short typeDiff = in.readShort();
            if (typeDiff == TYPE_DIFF) {
                instanceClass = conf.getClassByName(CUTF8.readString(in));
            } else {
                instanceClass = declaredClass;
            }
        } catch (ClassNotFoundException e) {
            throw new RuntimeException("readObject can't find class", e);
        }
        ColumnValue columnValue = new ColumnValue();
        columnValue.readFields(in);
        instance = columnValue;
    } else { // Writable

        Class instanceClass = null;
        try {
            short typeDiff = in.readShort();
            // SANGCHUL
            //System.out.println("SANGCHUL] typeDiff : " + typeDiff);
            //System.out.println("Read:in.readShort():" + typeDiff);
            if (typeDiff == TYPE_DIFF) {
                // SANGCHUL
                String classNameTemp = CUTF8.readString(in);
                //System.out.println("SANGCHUL] typeDiff : " + classNameTemp);
                instanceClass = conf.getClassByName(classNameTemp);
                //System.out.println("Read:UTF8.readString(in):" + instanceClass.getClass());
            } else {
                instanceClass = declaredClass;
            }
        } catch (ClassNotFoundException e) {

            // SANGCHUL
            e.printStackTrace();
            throw new RuntimeException("readObject can't find class", e);
        }

        CWritable writable = CWritableFactories.newInstance(instanceClass, conf);
        writable.readFields(in);
        //System.out.println("Read:writable.readFields(in)");
        instance = writable;

        if (instanceClass == NullInstance.class) { // null
            declaredClass = ((NullInstance) instance).declaredClass;
            instance = null;
        }
    }

    if (objectWritable != null) { // store values
        objectWritable.declaredClass = declaredClass;
        objectWritable.instance = instance;
    }

    return instance;
}

From source file:com.sun.faces.renderkit.html_basic.MenuRenderer.java

protected Object handleArrayCase(FacesContext context, UISelectMany uiSelectMany, Class arrayClass,
        String[] newValues) throws ConverterException {
    Object result = null;//w ww  .j  a  v  a  2  s.  co m
    Class elementType = null;
    Converter converter = null;
    int i = 0, len = (null != newValues ? newValues.length : 0);

    elementType = arrayClass.getComponentType();

    // Optimization: If the elementType is String, we don't need
    // conversion.  Just return newValues.
    if (elementType.equals(String.class)) {
        return newValues;
    }

    try {
        result = Array.newInstance(elementType, len);
    } catch (Exception e) {
        throw new ConverterException(e);
    }

    // bail out now if we have no new values, returning our
    // oh-so-useful zero-length array.
    if (null == newValues) {
        return result;
    }

    // obtain a converter.

    // attached converter takes priority
    if (null == (converter = uiSelectMany.getConverter())) {
        // Otherwise, look for a by-type converter
        if (null == (converter = Util.getConverterForClass(elementType, context))) {
            // if that fails, and the attached values are of Object type,
            // we don't need conversion.
            if (elementType.equals(Object.class)) {
                return newValues;
            }
            String valueStr = "";
            for (i = 0; i < newValues.length; i++) {
                valueStr = valueStr + " " + newValues[i];
            }
            Object[] params = { valueStr, "null Converter" };

            throw new ConverterException(Util.getExceptionMessage(Util.CONVERSION_ERROR_MESSAGE_ID, params));
        }
    }

    Util.doAssert(null != result);
    if (elementType.isPrimitive()) {
        for (i = 0; i < len; i++) {
            if (elementType.equals(Boolean.TYPE)) {
                Array.setBoolean(result, i,
                        ((Boolean) converter.getAsObject(context, uiSelectMany, newValues[i])).booleanValue());
            } else if (elementType.equals(Byte.TYPE)) {
                Array.setByte(result, i,
                        ((Byte) converter.getAsObject(context, uiSelectMany, newValues[i])).byteValue());
            } else if (elementType.equals(Double.TYPE)) {
                Array.setDouble(result, i,
                        ((Double) converter.getAsObject(context, uiSelectMany, newValues[i])).doubleValue());
            } else if (elementType.equals(Float.TYPE)) {
                Array.setFloat(result, i,
                        ((Float) converter.getAsObject(context, uiSelectMany, newValues[i])).floatValue());
            } else if (elementType.equals(Integer.TYPE)) {
                Array.setInt(result, i,
                        ((Integer) converter.getAsObject(context, uiSelectMany, newValues[i])).intValue());
            } else if (elementType.equals(Character.TYPE)) {
                Array.setChar(result, i,
                        ((Character) converter.getAsObject(context, uiSelectMany, newValues[i])).charValue());
            } else if (elementType.equals(Short.TYPE)) {
                Array.setShort(result, i,
                        ((Short) converter.getAsObject(context, uiSelectMany, newValues[i])).shortValue());
            } else if (elementType.equals(Long.TYPE)) {
                Array.setLong(result, i,
                        ((Long) converter.getAsObject(context, uiSelectMany, newValues[i])).longValue());
            }
        }
    } else {
        for (i = 0; i < len; i++) {
            if (log.isDebugEnabled()) {
                Object converted = converter.getAsObject(context, uiSelectMany, newValues[i]);
                log.debug("String value: " + newValues[i] + " converts to : " + converted.toString());
            }
            Array.set(result, i, converter.getAsObject(context, uiSelectMany, newValues[i]));
        }
    }
    return result;
}

From source file:com.gdcn.modules.db.jdbc.processor.CamelBeanProcessor.java

/**
 * ResultSet.getObject() returns an Integer object for an INT column.  The
 * setter method for the property might take an Integer or a primitive int.
 * This method returns true if the value can be successfully passed into
 * the setter method.  Remember, Method.invoke() handles the unwrapping
 * of Integer into an int.//from  w w  w . j  a v a 2s.  co m
 *
 * @param value The value to be passed into the setter method.
 * @param type The setter's parameter type (non-null)
 * @return boolean True if the value is compatible (null => true)
 */
private boolean isCompatibleType(Object value, Class<?> type) {
    // Do object check first, then primitives
    if (value == null || type.isInstance(value)) {
        return true;

    } else if (type.equals(Integer.TYPE) && Integer.class.isInstance(value)) {
        return true;

    } else if (type.equals(Long.TYPE) && Long.class.isInstance(value)) {
        return true;

    } else if (type.equals(Double.TYPE) && Double.class.isInstance(value)) {
        return true;

    } else if (type.equals(Float.TYPE) && Float.class.isInstance(value)) {
        return true;

    } else if (type.equals(Short.TYPE) && Short.class.isInstance(value)) {
        return true;

    } else if (type.equals(Byte.TYPE) && Byte.class.isInstance(value)) {
        return true;

    } else if (type.equals(Character.TYPE) && Character.class.isInstance(value)) {
        return true;

    } else if (type.equals(Boolean.TYPE) && Boolean.class.isInstance(value)) {
        return true;

    }
    return false;

}

From source file:at.alladin.rmbt.shared.hstoreparser.HstoreParser.java

/**
 * /*from w ww  . ja va  2s .c  om*/
 * @param f
 * @param o
 * @return
 */
public static Object parseFieldValue(Field f, Object o) {
    if (o != JSONObject.NULL) {
        if (f.getType().equals(Integer.class) || f.getType().equals(Integer.TYPE)) {
            return Integer.parseInt(String.valueOf(o));
        } else if (f.getType().equals(String.class)) {
            return String.valueOf(o);
        } else if (f.getType().equals(Long.class) || f.getType().equals(Long.TYPE)) {
            return Long.parseLong(String.valueOf(o));
        } else if (f.getType().equals(Boolean.class) || f.getType().equals(Boolean.TYPE)) {
            return Boolean.parseBoolean(String.valueOf(o));
        } else if (f.getType().equals(Float.class) || f.getType().equals(Float.TYPE)) {
            return Float.parseFloat(String.valueOf(o));
        } else if (f.getType().equals(Double.class) || f.getType().equals(Double.TYPE)) {
            return Double.parseDouble(String.valueOf(o));
        } else if (f.getType().equals(Short.class) || f.getType().equals(Short.TYPE)) {
            return Short.parseShort(String.valueOf(o));
        } else {
            return o;
        }
    }

    return null;
}

From source file:org.brekka.stillingar.spring.bpp.ConfigurationBeanPostProcessorTest.java

@Test
public void primitiveDefaultShort() {
    assertEquals(ConfigurationBeanPostProcessor.primitiveDefault(Short.TYPE), Short.valueOf((short) 0));
}

From source file:org.xmlsh.util.JavaUtils.java

public static Class<?> fromPrimativeName(String name) {

    switch (name) {
    case "boolean":
        return java.lang.Boolean.TYPE;
    case "char":
        return java.lang.Character.TYPE;
    case "byte":
        return java.lang.Byte.TYPE;
    case "short":
        return java.lang.Short.TYPE;
    case "int":
        return java.lang.Integer.TYPE;
    case "long":
        return java.lang.Long.TYPE;
    case "float":
        return java.lang.Float.TYPE;
    case "double":
        return java.lang.Double.TYPE;
    case "void":
        return java.lang.Void.TYPE;
    default://  w  w w.  j  ava2  s  .co m
        return null;
    }

}

From source file:com.initialxy.cordova.themeablebrowser.ThemeableBrowserUnmarshaller.java

/**
 * Gracefully convert given Object to given class given the precondition
 * that both are primitives or one of the classes associated with
 * primitives. eg. If val is of type Double and cls is of type int, return
 * Integer type with appropriate value truncation so that it can be assigned
 * to field with field.set().//from w ww  . j a va2 s  .  co m
 *
 * @param cls
 * @param val
 * @return
 * @throws com.initialxy.cordova.themeablebrowser.ThemeableBrowserUnmarshaller.TypeMismatchException
 */
private static Object convertToPrimitiveFieldObj(Object val, Class<?> cls) {
    Class<?> valClass = val.getClass();
    Object result = null;

    try {
        Method getter = null;
        if (cls.isAssignableFrom(Byte.class) || cls.isAssignableFrom(Byte.TYPE)) {
            getter = valClass.getMethod("byteValue");
        } else if (cls.isAssignableFrom(Short.class) || cls.isAssignableFrom(Short.TYPE)) {
            getter = valClass.getMethod("shortValue");
        } else if (cls.isAssignableFrom(Integer.class) || cls.isAssignableFrom(Integer.TYPE)) {
            getter = valClass.getMethod("intValue");
        } else if (cls.isAssignableFrom(Long.class) || cls.isAssignableFrom(Long.TYPE)) {
            getter = valClass.getMethod("longValue");
        } else if (cls.isAssignableFrom(Float.class) || cls.isAssignableFrom(Float.TYPE)) {
            getter = valClass.getMethod("floatValue");
        } else if (cls.isAssignableFrom(Double.class) || cls.isAssignableFrom(Double.TYPE)) {
            getter = valClass.getMethod("doubleValue");
        } else if (cls.isAssignableFrom(Boolean.class) || cls.isAssignableFrom(Boolean.TYPE)) {
            if (val instanceof Boolean) {
                result = val;
            } else {
                throw new TypeMismatchException(cls, val.getClass());
            }
        } else if (cls.isAssignableFrom(Character.class) || cls.isAssignableFrom(Character.TYPE)) {
            if (val instanceof String && ((String) val).length() == 1) {
                char c = ((String) val).charAt(0);
                result = Character.valueOf(c);
            } else if (val instanceof String) {
                throw new TypeMismatchException(
                        "Expected Character, " + "but received String with length other than 1.");
            } else {
                throw new TypeMismatchException(
                        String.format("Expected Character, accept String, but got %s.", val.getClass()));
            }
        }

        if (getter != null) {
            result = getter.invoke(val);
        }
    } catch (NoSuchMethodException e) {
        throw new TypeMismatchException(String.format("Cannot convert %s to %s.", val.getClass(), cls));
    } catch (SecurityException e) {
        throw new TypeMismatchException(String.format("Cannot convert %s to %s.", val.getClass(), cls));
    } catch (IllegalAccessException e) {
        throw new TypeMismatchException(String.format("Cannot convert %s to %s.", val.getClass(), cls));
    } catch (InvocationTargetException e) {
        throw new TypeMismatchException(String.format("Cannot convert %s to %s.", val.getClass(), cls));
    }

    return result;
}