From c46aa7f92fa58e2f12cecee2ce70df175cc8458a Mon Sep 17 00:00:00 2001
From: gwen-soleil <gwenaelle.abeille@gmail.com>
Date: Mon, 4 Mar 2024 17:01:26 +0100
Subject: [PATCH] Fix conversion for short values.

---
 .../snap/api/tools/TangoJAVAUtils.java        | 295 +++++++++---------
 1 file changed, 147 insertions(+), 148 deletions(-)

diff --git a/src/main/java/fr/soleil/archiving/snap/api/tools/TangoJAVAUtils.java b/src/main/java/fr/soleil/archiving/snap/api/tools/TangoJAVAUtils.java
index f3648b4..fbf5327 100644
--- a/src/main/java/fr/soleil/archiving/snap/api/tools/TangoJAVAUtils.java
+++ b/src/main/java/fr/soleil/archiving/snap/api/tools/TangoJAVAUtils.java
@@ -1,164 +1,163 @@
 package fr.soleil.archiving.snap.api.tools;
 
-import java.sql.ResultSet;
-import java.sql.SQLException;
-
 import fr.esrf.TangoDs.TangoConst;
 import fr.soleil.archiving.common.api.tools.StringFormater;
 import fr.soleil.lib.project.math.MathConst;
 
+import java.sql.ResultSet;
+import java.sql.SQLException;
+
 public class TangoJAVAUtils {
 
-	public static Object initPrimitiveArray(int dataType, int length) {
-		switch (dataType) {
-		case TangoConst.Tango_DEV_BOOLEAN:
-			return new boolean[length];
-		case TangoConst.Tango_DEV_CHAR:
-		case TangoConst.Tango_DEV_UCHAR:
-			return new byte[length];
-		case TangoConst.Tango_DEV_STATE:
-		case TangoConst.Tango_DEV_LONG:
-		case TangoConst.Tango_DEV_ULONG:
-			return new int[length];
-		case TangoConst.Tango_DEV_SHORT:
-		case TangoConst.Tango_DEV_USHORT:
-			return new short[length];
-		case TangoConst.Tango_DEV_FLOAT:
-			return new float[length];
-		case TangoConst.Tango_DEV_STRING:
-			return new String[length];
-		case TangoConst.Tango_DEV_DOUBLE:
-		default:
-			return new double[length];
-		}
+    public static Object initPrimitiveArray(int dataType, int length) {
+        switch (dataType) {
+            case TangoConst.Tango_DEV_BOOLEAN:
+                return new boolean[length];
+            case TangoConst.Tango_DEV_CHAR:
+            case TangoConst.Tango_DEV_UCHAR:
+                return new byte[length];
+            case TangoConst.Tango_DEV_STATE:
+            case TangoConst.Tango_DEV_LONG:
+            case TangoConst.Tango_DEV_ULONG:
+                return new int[length];
+            case TangoConst.Tango_DEV_SHORT:
+            case TangoConst.Tango_DEV_USHORT:
+                return new short[length];
+            case TangoConst.Tango_DEV_FLOAT:
+                return new float[length];
+            case TangoConst.Tango_DEV_STRING:
+                return new String[length];
+            case TangoConst.Tango_DEV_DOUBLE:
+            default:
+                return new double[length];
+        }
 
-	}
+    }
 
-	public static Object castResultSetAsPrimitive(int dataType, ResultSet resultSet, int index) throws SQLException {
-		switch (dataType) {
-		case TangoConst.Tango_DEV_STRING:
-			return resultSet.getString(index);
-		case TangoConst.Tango_DEV_UCHAR:
-		case TangoConst.Tango_DEV_CHAR:
-			return resultSet.getByte(index);
-		case TangoConst.Tango_DEV_LONG:
-		case TangoConst.Tango_DEV_ULONG:
-		case TangoConst.Tango_DEV_STATE:
-			return resultSet.getInt(index);
-		case TangoConst.Tango_DEV_BOOLEAN:
-			return resultSet.getInt(index) != 0;
-		case TangoConst.Tango_DEV_SHORT:
-		case TangoConst.Tango_DEV_USHORT:
-			return resultSet.getShort(index);
-		case TangoConst.Tango_DEV_FLOAT:
-			return resultSet.getFloat(index);
-		case TangoConst.Tango_DEV_DOUBLE:
-		default:
-			return resultSet.getDouble(index);
-		}
-	}
+    public static Object castResultSetAsPrimitive(int dataType, ResultSet resultSet, int index) throws SQLException {
+        switch (dataType) {
+            case TangoConst.Tango_DEV_STRING:
+                return resultSet.getString(index);
+            case TangoConst.Tango_DEV_UCHAR:
+            case TangoConst.Tango_DEV_CHAR:
+                return resultSet.getByte(index);
+            case TangoConst.Tango_DEV_LONG:
+            case TangoConst.Tango_DEV_ULONG:
+            case TangoConst.Tango_DEV_STATE:
+                return resultSet.getInt(index);
+            case TangoConst.Tango_DEV_BOOLEAN:
+                return resultSet.getInt(index) != 0;
+            case TangoConst.Tango_DEV_SHORT:
+            case TangoConst.Tango_DEV_USHORT:
+                return resultSet.getShort(index);
+            case TangoConst.Tango_DEV_FLOAT:
+                return resultSet.getFloat(index);
+            case TangoConst.Tango_DEV_DOUBLE:
+            default:
+                return resultSet.getDouble(index);
+        }
+    }
 
-	public static Object cast(final int dataType, String currentValRead) {
-		try {
-			switch (dataType) {
-			case TangoConst.Tango_DEV_BOOLEAN:
-				return (int) Double.parseDouble(currentValRead) != 0;
-			case TangoConst.Tango_DEV_STATE:
-			case TangoConst.Tango_DEV_LONG:
-			case TangoConst.Tango_DEV_ULONG:
-				return Integer.parseInt(currentValRead);
-			case TangoConst.Tango_DEV_LONG64:
-			case TangoConst.Tango_DEV_ULONG64:
-				return Long.parseLong(currentValRead);
-			case TangoConst.Tango_DEV_SHORT:
-			case TangoConst.Tango_DEV_USHORT:
-				return Short.parseShort(currentValRead);
-			case TangoConst.Tango_DEV_CHAR:
-			case TangoConst.Tango_DEV_UCHAR:
-				return Byte.parseByte(currentValRead);
-			case TangoConst.Tango_DEV_FLOAT:
-				return Float.parseFloat(currentValRead);
-			case TangoConst.Tango_DEV_DOUBLE:
-				return Double.parseDouble(currentValRead);
-			case TangoConst.Tango_DEV_STRING:
-				return StringFormater.formatStringToRead(currentValRead);
-			default:
-				return null;
-			}
-		} catch (NumberFormatException e) {
-			switch (dataType) {
-			case TangoConst.Tango_DEV_BOOLEAN:
-				return "true".equalsIgnoreCase(currentValRead.trim());
-			case TangoConst.Tango_DEV_STATE:
-			case TangoConst.Tango_DEV_LONG:
-			case TangoConst.Tango_DEV_ULONG:
-				return (int) Double.parseDouble(currentValRead);
-			case TangoConst.Tango_DEV_LONG64:
-			case TangoConst.Tango_DEV_ULONG64:
-				return (long) Double.parseDouble(currentValRead);
+    public static Object cast(final int dataType, String currentValRead) {
+        try {
+            switch (dataType) {
+                case TangoConst.Tango_DEV_BOOLEAN:
+                    return (int) Double.parseDouble(currentValRead) != 0;
+                case TangoConst.Tango_DEV_STATE:
+                case TangoConst.Tango_DEV_LONG:
+                case TangoConst.Tango_DEV_ULONG:
+                    return Integer.parseInt(currentValRead);
+                case TangoConst.Tango_DEV_LONG64:
+                case TangoConst.Tango_DEV_ULONG64:
+                    return Long.parseLong(currentValRead);
+                case TangoConst.Tango_DEV_SHORT:
+                case TangoConst.Tango_DEV_USHORT:
+                    return Short.parseShort(currentValRead);
+                case TangoConst.Tango_DEV_CHAR:
+                case TangoConst.Tango_DEV_UCHAR:
+                    return Byte.parseByte(currentValRead);
+                case TangoConst.Tango_DEV_FLOAT:
+                    return Float.parseFloat(currentValRead);
+                case TangoConst.Tango_DEV_DOUBLE:
+                    return Double.parseDouble(currentValRead);
+                case TangoConst.Tango_DEV_STRING:
+                    return StringFormater.formatStringToRead(currentValRead);
+                default:
+                    return null;
+            }
+        } catch (NumberFormatException e) {
+            switch (dataType) {
+                case TangoConst.Tango_DEV_BOOLEAN:
+                    return "true".equalsIgnoreCase(currentValRead.trim());
+                case TangoConst.Tango_DEV_STATE:
+                case TangoConst.Tango_DEV_LONG:
+                case TangoConst.Tango_DEV_ULONG:
+                    return (int) Double.parseDouble(currentValRead);
+                case TangoConst.Tango_DEV_LONG64:
+                case TangoConst.Tango_DEV_ULONG64:
+                    return (long) Double.parseDouble(currentValRead);
+                case TangoConst.Tango_DEV_SHORT:
+                case TangoConst.Tango_DEV_USHORT:
+                    return (short) Double.parseDouble(currentValRead);
+                case TangoConst.Tango_DEV_CHAR:
+                case TangoConst.Tango_DEV_UCHAR:
+                    return (byte) Double.parseDouble(currentValRead);
+                default:
+                    return null;
+            }
+        }
+    }
+
+    public static Object castResultSetAsObject(int dataType, ResultSet resultSet, int index) throws SQLException {
+        switch (dataType) {
+            case TangoConst.Tango_DEV_STRING:
+                return resultSet.getString(index);
+            case TangoConst.Tango_DEV_UCHAR:
+            case TangoConst.Tango_DEV_CHAR:
+                return resultSet.getShort(index);
+            case TangoConst.Tango_DEV_LONG:
+            case TangoConst.Tango_DEV_ULONG:
+            case TangoConst.Tango_DEV_STATE:
 			case TangoConst.Tango_DEV_SHORT:
 			case TangoConst.Tango_DEV_USHORT:
-				return (short) Double.parseDouble(currentValRead);
-			case TangoConst.Tango_DEV_CHAR:
-			case TangoConst.Tango_DEV_UCHAR:
-				return (byte) Double.parseDouble(currentValRead);
-			default:
-				return null;
-			}
-		}
-	}
-
-	public static Object castResultSetAsObject(int dataType, ResultSet resultSet, int index) throws SQLException {
-		switch (dataType) {
-		case TangoConst.Tango_DEV_STRING:
-			return resultSet.getString(index);
-		case TangoConst.Tango_DEV_UCHAR:
-		case TangoConst.Tango_DEV_CHAR:
-			return Byte.valueOf(resultSet.getByte(index));
-		case TangoConst.Tango_DEV_LONG:
-		case TangoConst.Tango_DEV_ULONG:
-		case TangoConst.Tango_DEV_STATE:
-			return Integer.valueOf(resultSet.getInt(index));
-		case TangoConst.Tango_DEV_BOOLEAN:
-			return Boolean.valueOf(resultSet.getInt(index) != 0);
-		case TangoConst.Tango_DEV_SHORT:
-		case TangoConst.Tango_DEV_USHORT:
-			return Short.valueOf(resultSet.getShort(index));
-		case TangoConst.Tango_DEV_FLOAT:
-			return Float.valueOf(resultSet.getFloat(index));
-		case TangoConst.Tango_DEV_DOUBLE:
-		default:
-			return Double.valueOf(resultSet.getDouble(index));
-		}
-	}
+                return resultSet.getInt(index);
+            case TangoConst.Tango_DEV_BOOLEAN:
+                return resultSet.getInt(index) != 0;
+            case TangoConst.Tango_DEV_FLOAT:
+                return resultSet.getFloat(index);
+            case TangoConst.Tango_DEV_DOUBLE:
+            default:
+                return resultSet.getDouble(index);
+        }
+    }
 
-	public static Object defaultValue(final int dataType) {
-		switch (dataType) {
-		case TangoConst.Tango_DEV_BOOLEAN:
-			return false;
-		case TangoConst.Tango_DEV_STATE:
-		case TangoConst.Tango_DEV_LONG:
-		case TangoConst.Tango_DEV_ULONG:
-			return 0;
-		case TangoConst.Tango_DEV_LONG64:
-		case TangoConst.Tango_DEV_ULONG64:
-			return 0l;
-		case TangoConst.Tango_DEV_SHORT:
-		case TangoConst.Tango_DEV_USHORT:
-			return (short) 0;
-		case TangoConst.Tango_DEV_CHAR:
-		case TangoConst.Tango_DEV_UCHAR:
-			return (byte) 0;
-		case TangoConst.Tango_DEV_FLOAT:
-			return Float.NaN;
-		case TangoConst.Tango_DEV_DOUBLE:
-			return MathConst.NAN_FOR_NULL;
-		default:
-			return null;
-		}
-	}
+    public static Object defaultValue(final int dataType) {
+        switch (dataType) {
+            case TangoConst.Tango_DEV_BOOLEAN:
+                return false;
+            case TangoConst.Tango_DEV_STATE:
+            case TangoConst.Tango_DEV_LONG:
+            case TangoConst.Tango_DEV_ULONG:
+                return 0;
+            case TangoConst.Tango_DEV_LONG64:
+            case TangoConst.Tango_DEV_ULONG64:
+                return 0l;
+            case TangoConst.Tango_DEV_SHORT:
+            case TangoConst.Tango_DEV_USHORT:
+                return (short) 0;
+            case TangoConst.Tango_DEV_CHAR:
+            case TangoConst.Tango_DEV_UCHAR:
+                return (byte) 0;
+            case TangoConst.Tango_DEV_FLOAT:
+                return Float.NaN;
+            case TangoConst.Tango_DEV_DOUBLE:
+                return MathConst.NAN_FOR_NULL;
+            default:
+                return null;
+        }
+    }
 
-	public static boolean isNullOrNaN(final String value) {
-		return ((value == null) || value.isEmpty() || "null".equals(value) || "NaN".equalsIgnoreCase(value));
-	}
+    public static boolean isNullOrNaN(final String value) {
+        return ((value == null) || value.isEmpty() || "null".equals(value) || "NaN".equalsIgnoreCase(value));
+    }
 }
-- 
GitLab