From 02bc52037e9ccccca672d6156d9c325c74fe28b3 Mon Sep 17 00:00:00 2001 From: Benjamin Culkin Date: Mon, 1 Jul 2024 17:27:48 -0400 Subject: Update a whole bunch of things Yeah... not a great commit message. t.b.h, I could maybe've split the commit into more parts; but that would be quite a lot off effort and would have a pretty decent chance of at least one of the commits leaving the repository in a non-working state. For the future, will want to try and commit more often so there aren't these mega-commits where it's just "a whole bunch of stuff changed" --- .../foundation/internal/ValueConverter.java | 59 +++++++++++----------- 1 file changed, 30 insertions(+), 29 deletions(-) (limited to 'projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/internal/ValueConverter.java') diff --git a/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/internal/ValueConverter.java b/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/internal/ValueConverter.java index 7f28e06..3d995e5 100644 --- a/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/internal/ValueConverter.java +++ b/projects/net.wotonomy.foundation/src/main/java/net/wotonomy/foundation/internal/ValueConverter.java @@ -37,69 +37,70 @@ public class ValueConverter { * Returns the specified object as converted to an instance of the specified * class, or null if the conversion could not be performed. */ - static public Object convertObjectToClass(Object anObject, Class aClass) { + @SuppressWarnings("unchecked") + static public C convertObjectToClass(Object anObject, Class aClass) { if (aClass == String.class) { - return getString(anObject); + return (C) getString(anObject); } if (aClass == Short.class) { - return getShort(anObject); + return (C) getShort(anObject); } if (aClass == short.class) { - return getShort(anObject); + return (C) getShort(anObject); } if (aClass == Integer.class) { - return getInteger(anObject); + return (C) getInteger(anObject); } if (aClass == int.class) { - return getInteger(anObject); + return (C) getInteger(anObject); } if (aClass == Long.class) { - return getLong(anObject); + return (C) getLong(anObject); } if (aClass == long.class) { - return getLong(anObject); + return (C) getLong(anObject); } if (aClass == Float.class) { - return getFloat(anObject); + return (C) getFloat(anObject); } if (aClass == float.class) { - return getFloat(anObject); + return (C) getFloat(anObject); } if (aClass == Double.class) { - return getDouble(anObject); + return (C) getDouble(anObject); } if (aClass == double.class) { - return getDouble(anObject); + return (C) getDouble(anObject); } if (aClass == java.util.Date.class) { - return getDate(anObject); + return (C) getDate(anObject); } if (aClass == Boolean.class) { - return getBoolean(anObject); + return (C) getBoolean(anObject); } if (aClass == boolean.class) { - return getBoolean(anObject); + return (C) getBoolean(anObject); } if (aClass == Character.class) { - return getCharacter(anObject); + return (C) getCharacter(anObject); } if (aClass == char.class) { - return getCharacter(anObject); + return (C) getCharacter(anObject); } if (aClass == Byte.class) { - return getByte(anObject); + return (C) getByte(anObject); } if (aClass == byte.class) { - return getByte(anObject); + return (C) getByte(anObject); } if (Collection.class.isAssignableFrom(aClass)) { - return getCollection(anObject, aClass); + return (C) getCollection(anObject, aClass); } if (aClass.isArray()) { - return getArray(anObject, aClass); + return (C) getArray(anObject, aClass); } - return convert(anObject, aClass); + return (C) convert(anObject, aClass); } /** @@ -108,10 +109,10 @@ public class ValueConverter { * the best fit to the object. and returns a new instance with that constructor. * Subclasses can override to directly support specific types. */ - static protected Object convert(Object anObject, Class aClass) { - Constructor[] ctors = aClass.getConstructors(); + static protected Object convert(Object anObject, Class aClass) { + Constructor[] ctors = aClass.getConstructors(); - Class[] types; + Class[] types; for (int i = 0; i < ctors.length; i++) { types = ctors[i].getParameterTypes(); if (types.length == 1) { @@ -148,9 +149,9 @@ public class ValueConverter { static protected Object preprocess(Object anObject) { if (anObject instanceof Boolean) { if (((Boolean) anObject).booleanValue()) { - return new Double(1.0); + return Double.valueOf(1.0); } - return new Double(0.0); + return Double.valueOf(0.0); } if (anObject instanceof Character) { @@ -167,9 +168,9 @@ public class ValueConverter { static public Short getShort(Object anObject) { if (anObject == null) - return new Short((short) 0); + return Short.valueOf((short) 0); if ("".equals(anObject)) - return new Short((short) 0); + return Short.valueOf((short) 0); if (anObject instanceof Short) return (Short) anObject; -- cgit v1.2.3