diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAadAccelFeatures.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAadAccelFeatures.java index 5bacdb60e4..2c39e45e3b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAadAccelFeatures.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAadAccelFeatures.java @@ -41,32 +41,32 @@ public class FitAadAccelFeatures extends RecordData { @Nullable public Integer getTime() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getEnergyTotal() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Integer getZeroCrossCnt() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getInstance() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getTimeAboveThreshold() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAccelerometerData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAccelerometerData.java index 30997d4a3c..7d96d1ea3a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAccelerometerData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAccelerometerData.java @@ -41,172 +41,62 @@ public class FitAccelerometerData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSampleTimeOffset() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getAccelX() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getAccelY() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getAccelZ() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getCalibratedAccelX() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Number[] getCalibratedAccelY() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Number.class); } @Nullable public Number[] getCalibratedAccelZ() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Number[] getCompressedCalibratedAccelX() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Number[] getCompressedCalibratedAccelY() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public Number[] getCompressedCalibratedAccelZ() { - final Object object = getFieldByNumber(10); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(10, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitActivity.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitActivity.java index df1f7d6d7a..885501c037 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitActivity.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitActivity.java @@ -41,42 +41,42 @@ public class FitActivity extends RecordData { @Nullable public Long getTotalTimerTime() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Integer getNumSessions() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getType() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAlarmSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAlarmSettings.java index ffc094f433..304f0f518c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAlarmSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAlarmSettings.java @@ -44,47 +44,47 @@ public class FitAlarmSettings extends RecordData { @Nullable public LocalTime getTime() { - return (LocalTime) getFieldByNumber(0); + return getFieldByNumber(0, LocalTime.class); } @Nullable public Long getRepeat() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Integer getEnabled() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getSound() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getBacklight() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getSomeTimestamp() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getUnknown7() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Label getLabel() { - return (Label) getFieldByNumber(8); + return getFieldByNumber(8, Label.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntChannelId.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntChannelId.java index 949914c59d..fb66a20b37 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntChannelId.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntChannelId.java @@ -41,27 +41,27 @@ public class FitAntChannelId extends RecordData { @Nullable public Integer getChannelNumber() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getDeviceType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getDeviceNumber() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getTransmissionType() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntRx.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntRx.java index 9fcba3aa73..5120385777 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntRx.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntRx.java @@ -41,54 +41,32 @@ public class FitAntRx extends RecordData { @Nullable public Float getFractionalTimestamp() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Integer getMesgId() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Number[] getMesgData() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Integer getChannelNumber() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Number[] getData() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntTx.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntTx.java index 2d85bc5772..cb9ead02da 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntTx.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAntTx.java @@ -41,54 +41,32 @@ public class FitAntTx extends RecordData { @Nullable public Float getFractionalTimestamp() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Integer getMesgId() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Number[] getMesgData() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Integer getChannelNumber() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Number[] getData() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAviationAttitude.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAviationAttitude.java index 5573d59a0e..e0c6116d41 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAviationAttitude.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitAviationAttitude.java @@ -41,172 +41,62 @@ public class FitAviationAttitude extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSystemTime() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getPitch() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getRoll() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getAccelLateral() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getAccelNormal() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Number[] getTurnRate() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Number.class); } @Nullable public Number[] getStage() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Number[] getAttitudeStageComplete() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Number[] getTrack() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public Number[] getValidity() { - final Object object = getFieldByNumber(10); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(10, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBarometerData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBarometerData.java index 406c7a2269..c5ac719055 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBarometerData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBarometerData.java @@ -41,44 +41,22 @@ public class FitBarometerData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSampleTimeOffset() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getBaroPres() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBeatIntervals.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBeatIntervals.java index 86f24ce4e5..7b0816e87d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBeatIntervals.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBeatIntervals.java @@ -41,28 +41,17 @@ public class FitBeatIntervals extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getTime() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBikeProfile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBikeProfile.java index b3b9789955..66dbed492a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBikeProfile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBikeProfile.java @@ -41,184 +41,162 @@ public class FitBikeProfile extends RecordData { @Nullable public String getName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Double getOdometer() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Integer getBikeSpdAntId() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getBikeCadAntId() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getBikeSpdcadAntId() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getBikePowerAntId() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Float getCustomWheelsize() { - return (Float) getFieldByNumber(8); + return getFieldByNumber(8, Float.class); } @Nullable public Float getAutoWheelsize() { - return (Float) getFieldByNumber(9); + return getFieldByNumber(9, Float.class); } @Nullable public Float getBikeWeight() { - return (Float) getFieldByNumber(10); + return getFieldByNumber(10, Float.class); } @Nullable public Float getPowerCalFactor() { - return (Float) getFieldByNumber(11); + return getFieldByNumber(11, Float.class); } @Nullable public Boolean getAutoWheelCal() { - return (Boolean) getFieldByNumber(12); + return getFieldByNumber(12, Boolean.class); } @Nullable public Boolean getAutoPowerZero() { - return (Boolean) getFieldByNumber(13); + return getFieldByNumber(13, Boolean.class); } @Nullable public Integer getId() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Boolean getSpdEnabled() { - return (Boolean) getFieldByNumber(15); + return getFieldByNumber(15, Boolean.class); } @Nullable public Boolean getCadEnabled() { - return (Boolean) getFieldByNumber(16); + return getFieldByNumber(16, Boolean.class); } @Nullable public Boolean getSpdcadEnabled() { - return (Boolean) getFieldByNumber(17); + return getFieldByNumber(17, Boolean.class); } @Nullable public Boolean getPowerEnabled() { - return (Boolean) getFieldByNumber(18); + return getFieldByNumber(18, Boolean.class); } @Nullable public Float getCrankLength() { - return (Float) getFieldByNumber(19); + return getFieldByNumber(19, Float.class); } @Nullable public Boolean getEnabled() { - return (Boolean) getFieldByNumber(20); + return getFieldByNumber(20, Boolean.class); } @Nullable public Integer getBikeSpdAntIdTransType() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getBikeCadAntIdTransType() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Integer getBikeSpdcadAntIdTransType() { - return (Integer) getFieldByNumber(23); + return getFieldByNumber(23, Integer.class); } @Nullable public Integer getBikePowerAntIdTransType() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Integer getOdometerRollover() { - return (Integer) getFieldByNumber(37); + return getFieldByNumber(37, Integer.class); } @Nullable public Integer getFrontGearNum() { - return (Integer) getFieldByNumber(38); + return getFieldByNumber(38, Integer.class); } @Nullable public Number[] getFrontGear() { - final Object object = getFieldByNumber(39); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(39, Number.class); } @Nullable public Integer getRearGearNum() { - return (Integer) getFieldByNumber(40); + return getFieldByNumber(40, Integer.class); } @Nullable public Number[] getRearGear() { - final Object object = getFieldByNumber(41); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(41, Number.class); } @Nullable public Boolean getShimanoDi2Enabled() { - return (Boolean) getFieldByNumber(44); + return getFieldByNumber(44, Boolean.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBloodPressure.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBloodPressure.java index 18acf40e32..924180eb50 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBloodPressure.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitBloodPressure.java @@ -41,57 +41,57 @@ public class FitBloodPressure extends RecordData { @Nullable public Integer getSystolicPressure() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getDiastolicPressure() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getMeanArterialPressure() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getMap3SampleMean() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getMapMorningValues() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getMapEveningValues() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getHeartRate() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getHeartRateType() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getUserProfileIndex() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCadenceZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCadenceZone.java index 190f314a9c..d870669da8 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCadenceZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCadenceZone.java @@ -41,17 +41,17 @@ public class FitCadenceZone extends RecordData { @Nullable public Integer getHighValue() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCameraEvent.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCameraEvent.java index 1d58f1e205..80b7cae86e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCameraEvent.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCameraEvent.java @@ -41,27 +41,27 @@ public class FitCameraEvent extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getCameraEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getCameraFileUuid() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getCameraOrientation() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCapabilities.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCapabilities.java index 1ece1a382b..87064d8cd3 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCapabilities.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCapabilities.java @@ -41,44 +41,22 @@ public class FitCapabilities extends RecordData { @Nullable public Number[] getLanguages() { - final Object object = getFieldByNumber(0); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(0, Number.class); } @Nullable public Number[] getSports() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getWorkoutsSupported() { - return (Long) getFieldByNumber(21); + return getFieldByNumber(21, Long.class); } @Nullable public Long getConnectivitySupported() { - return (Long) getFieldByNumber(23); + return getFieldByNumber(23, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotData.java index 995701101b..b0daad07a1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotData.java @@ -41,17 +41,17 @@ public class FitChronoShotData extends RecordData { @Nullable public Double getShotSpeed() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Integer getShotNum() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotSession.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotSession.java index d54e98e2be..184c67b6da 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotSession.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitChronoShotSession.java @@ -41,42 +41,42 @@ public class FitChronoShotSession extends RecordData { @Nullable public Double getMinSpeed() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Double getMaxSpeed() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Double getAvgSpeed() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Integer getShotCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getProjectileType() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Double getGrainWeight() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Double getStandardDeviation() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitClimbPro.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitClimbPro.java index 9d05743649..4fa9841f20 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitClimbPro.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitClimbPro.java @@ -41,37 +41,37 @@ public class FitClimbPro extends RecordData { @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Integer getClimbProEvent() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getClimbNumber() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getClimbCategory() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Float getCurrentDist() { - return (Float) getFieldByNumber(5); + return getFieldByNumber(5, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitConnectivity.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitConnectivity.java index 05cae973cf..e320be7c17 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitConnectivity.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitConnectivity.java @@ -41,67 +41,67 @@ public class FitConnectivity extends RecordData { @Nullable public Integer getBluetoothEnabled() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getBluetoothLeEnabled() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getAntEnabled() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(3); + return getFieldByNumber(3, String.class); } @Nullable public Integer getLiveTrackingEnabled() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getWeatherConditionsEnabled() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getWeatherAlertsEnabled() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getAutoActivityUploadEnabled() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getCourseDownloadEnabled() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getWorkoutDownloadEnabled() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getGpsEphemerisDownloadEnabled() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getIncidentDetectionEnabled() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getGrouptrackEnabled() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCourse.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCourse.java index 7adf1c3c00..2667003f0b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCourse.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCourse.java @@ -41,22 +41,22 @@ public class FitCourse extends RecordData { @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(5); + return getFieldByNumber(5, String.class); } @Nullable public Long getCapabilities() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCoursePoint.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCoursePoint.java index 7d73ddaf8d..b6daffa0a6 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCoursePoint.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCoursePoint.java @@ -42,42 +42,42 @@ public class FitCoursePoint extends RecordData { @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getDistance() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public CoursePoint getType() { - return (CoursePoint) getFieldByNumber(5); + return getFieldByNumber(5, CoursePoint.class); } @Nullable public String getName() { - return (String) getFieldByNumber(6); + return getFieldByNumber(6, String.class); } @Nullable public Integer getFavorite() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCpeStatus.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCpeStatus.java index 48154c9ab6..202d0931ad 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCpeStatus.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitCpeStatus.java @@ -41,22 +41,22 @@ public class FitCpeStatus extends RecordData { @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getEndTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeveloperData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeveloperData.java index 86f242ce8d..f4feb67ef6 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeveloperData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeveloperData.java @@ -41,49 +41,27 @@ public class FitDeveloperData extends RecordData { @Nullable public Number[] getDeveloperId() { - final Object object = getFieldByNumber(0); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(0, Number.class); } @Nullable public Number[] getApplicationId() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Integer getManufacturerId() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getDeveloperDataIndex() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getApplicationVersion() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceAuxBatteryInfo.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceAuxBatteryInfo.java index c73e5f4da2..af76ccc464 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceAuxBatteryInfo.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceAuxBatteryInfo.java @@ -41,27 +41,27 @@ public class FitDeviceAuxBatteryInfo extends RecordData { @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Float getBatteryVoltage() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Integer getBatteryStatus() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getBatteryIdentifier() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceInfo.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceInfo.java index 044aea98e5..a97939f059 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceInfo.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceInfo.java @@ -41,102 +41,102 @@ public class FitDeviceInfo extends RecordData { @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getDeviceType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getSerialNumber() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Integer getProduct() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getSoftwareVersion() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getHardwareVersion() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getCumOperatingTime() { - return (Long) getFieldByNumber(7); + return getFieldByNumber(7, Long.class); } @Nullable public Float getBatteryVoltage() { - return (Float) getFieldByNumber(10); + return getFieldByNumber(10, Float.class); } @Nullable public Integer getBatteryStatus() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getSensorPosition() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public String getDescriptor() { - return (String) getFieldByNumber(19); + return getFieldByNumber(19, String.class); } @Nullable public Integer getAntTransmissionType() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getAntDeviceNumber() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getAntNetwork() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Long getAntId() { - return (Long) getFieldByNumber(24); + return getFieldByNumber(24, Long.class); } @Nullable public Integer getSourceType() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public String getProductName() { - return (String) getFieldByNumber(27); + return getFieldByNumber(27, String.class); } @Nullable public Integer getBatteryLevel() { - return (Integer) getFieldByNumber(32); + return getFieldByNumber(32, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceSettings.java index e0a1ec5974..ae07a556b6 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceSettings.java @@ -41,241 +41,142 @@ public class FitDeviceSettings extends RecordData { @Nullable public Integer getActiveTimeZone() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getUtcOffset() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Number[] getTimeOffset() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getTimeMode() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getTimeZoneOffset() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Number[] getAlarmsTime() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Number[] getAlarmsUnk5() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public Integer getBacklightMode() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Number[] getAlarmsEnabled() { - final Object object = getFieldByNumber(28); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(28, Number.class); } @Nullable public Integer getActivityTrackerEnabled() { - return (Integer) getFieldByNumber(36); + return getFieldByNumber(36, Integer.class); } @Nullable public Long getClockTime() { - return (Long) getFieldByNumber(39); + return getFieldByNumber(39, Long.class); } @Nullable public Number[] getPagesEnabled() { - final Object object = getFieldByNumber(40); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(40, Number.class); } @Nullable public Integer getMoveAlertEnabled() { - return (Integer) getFieldByNumber(46); + return getFieldByNumber(46, Integer.class); } @Nullable public Integer getDateMode() { - return (Integer) getFieldByNumber(47); + return getFieldByNumber(47, Integer.class); } @Nullable public Integer getDisplayOrientation() { - return (Integer) getFieldByNumber(55); + return getFieldByNumber(55, Integer.class); } @Nullable public Integer getMountingSide() { - return (Integer) getFieldByNumber(56); + return getFieldByNumber(56, Integer.class); } @Nullable public Number[] getDefaultPage() { - final Object object = getFieldByNumber(57); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(57, Number.class); } @Nullable public Integer getAutosyncMinSteps() { - return (Integer) getFieldByNumber(58); + return getFieldByNumber(58, Integer.class); } @Nullable public Integer getAutosyncMinTime() { - return (Integer) getFieldByNumber(59); + return getFieldByNumber(59, Integer.class); } @Nullable public Integer getLactateThresholdAutodetectEnabled() { - return (Integer) getFieldByNumber(80); + return getFieldByNumber(80, Integer.class); } @Nullable public Integer getBleAutoUploadEnabled() { - return (Integer) getFieldByNumber(86); + return getFieldByNumber(86, Integer.class); } @Nullable public Integer getAutoSyncFrequency() { - return (Integer) getFieldByNumber(89); + return getFieldByNumber(89, Integer.class); } @Nullable public Long getAutoActivityDetect() { - return (Long) getFieldByNumber(90); + return getFieldByNumber(90, Long.class); } @Nullable public Number[] getAlarmsRepeat() { - final Object object = getFieldByNumber(92); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(92, Number.class); } @Nullable public Integer getNumberOfScreens() { - return (Integer) getFieldByNumber(94); + return getFieldByNumber(94, Integer.class); } @Nullable public Integer getSmartNotificationDisplayOrientation() { - return (Integer) getFieldByNumber(95); + return getFieldByNumber(95, Integer.class); } @Nullable public Integer getTapInterface() { - return (Integer) getFieldByNumber(134); + return getFieldByNumber(134, Integer.class); } @Nullable public Integer getTapSensitivity() { - return (Integer) getFieldByNumber(174); + return getFieldByNumber(174, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceStatus.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceStatus.java index 7506c93e8f..34ae088851 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceStatus.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceStatus.java @@ -41,22 +41,22 @@ public class FitDeviceStatus extends RecordData { @Nullable public Float getBatteryVoltage() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Integer getBatteryLevel() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getTemperature() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceUsed.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceUsed.java index bbe198a057..29f08f36f0 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceUsed.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDeviceUsed.java @@ -41,37 +41,37 @@ public class FitDeviceUsed extends RecordData { @Nullable public Integer getSpeed() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getDistance() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getCadence() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getElevation() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getHeartRate() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getPower() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveAlarm.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveAlarm.java index 4cbe0535cb..ac97425091 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveAlarm.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveAlarm.java @@ -41,78 +41,67 @@ public class FitDiveAlarm extends RecordData { @Nullable public Double getDepth() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Long getTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Boolean getEnabled() { - return (Boolean) getFieldByNumber(2); + return getFieldByNumber(2, Boolean.class); } @Nullable public Integer getAlarmType() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getSound() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Number[] getDiveTypes() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Long getId() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Boolean getPopupEnabled() { - return (Boolean) getFieldByNumber(7); + return getFieldByNumber(7, Boolean.class); } @Nullable public Boolean getTriggerOnDescent() { - return (Boolean) getFieldByNumber(8); + return getFieldByNumber(8, Boolean.class); } @Nullable public Boolean getTriggerOnAscent() { - return (Boolean) getFieldByNumber(9); + return getFieldByNumber(9, Boolean.class); } @Nullable public Boolean getRepeating() { - return (Boolean) getFieldByNumber(10); + return getFieldByNumber(10, Boolean.class); } @Nullable public Double getSpeed() { - return (Double) getFieldByNumber(11); + return getFieldByNumber(11, Double.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveApneaAlarm.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveApneaAlarm.java index eea8352498..24d5747ac9 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveApneaAlarm.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveApneaAlarm.java @@ -41,78 +41,67 @@ public class FitDiveApneaAlarm extends RecordData { @Nullable public Double getDepth() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Long getTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Boolean getEnabled() { - return (Boolean) getFieldByNumber(2); + return getFieldByNumber(2, Boolean.class); } @Nullable public Integer getAlarmType() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getSound() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Number[] getDiveTypes() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Long getId() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Boolean getPopupEnabled() { - return (Boolean) getFieldByNumber(7); + return getFieldByNumber(7, Boolean.class); } @Nullable public Boolean getTriggerOnDescent() { - return (Boolean) getFieldByNumber(8); + return getFieldByNumber(8, Boolean.class); } @Nullable public Boolean getTriggerOnAscent() { - return (Boolean) getFieldByNumber(9); + return getFieldByNumber(9, Boolean.class); } @Nullable public Boolean getRepeating() { - return (Boolean) getFieldByNumber(10); + return getFieldByNumber(10, Boolean.class); } @Nullable public Double getSpeed() { - return (Double) getFieldByNumber(11); + return getFieldByNumber(11, Double.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveGas.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveGas.java index 1a636ad8ff..d4862f360c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveGas.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveGas.java @@ -41,27 +41,27 @@ public class FitDiveGas extends RecordData { @Nullable public Integer getHeliumContent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getOxygenContent() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getMode() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSettings.java index 810169dec5..28cb134a06 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSettings.java @@ -41,177 +41,177 @@ public class FitDiveSettings extends RecordData { @Nullable public String getName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Integer getModel() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getGfLow() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getGfHigh() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getWaterType() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Float getWaterDensity() { - return (Float) getFieldByNumber(5); + return getFieldByNumber(5, Float.class); } @Nullable public Float getPo2Warn() { - return (Float) getFieldByNumber(6); + return getFieldByNumber(6, Float.class); } @Nullable public Float getPo2Critical() { - return (Float) getFieldByNumber(7); + return getFieldByNumber(7, Float.class); } @Nullable public Float getPo2Deco() { - return (Float) getFieldByNumber(8); + return getFieldByNumber(8, Float.class); } @Nullable public Integer getSafetyStopEnabled() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Float getBottomDepth() { - return (Float) getFieldByNumber(10); + return getFieldByNumber(10, Float.class); } @Nullable public Long getBottomTime() { - return (Long) getFieldByNumber(11); + return getFieldByNumber(11, Long.class); } @Nullable public Integer getApneaCountdownEnabled() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Long getApneaCountdownTime() { - return (Long) getFieldByNumber(13); + return getFieldByNumber(13, Long.class); } @Nullable public Integer getBacklightMode() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Integer getBacklightBrightness() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Integer getBacklightTimeout() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getRepeatDiveInterval() { - return (Integer) getFieldByNumber(17); + return getFieldByNumber(17, Integer.class); } @Nullable public Integer getSafetyStopTime() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Integer getHeartRateSourceType() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Integer getHeartRateSource() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getTravelGas() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getCcrLowSetpointSwitchMode() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Float getCcrLowSetpoint() { - return (Float) getFieldByNumber(23); + return getFieldByNumber(23, Float.class); } @Nullable public Double getCcrLowSetpointDepth() { - return (Double) getFieldByNumber(24); + return getFieldByNumber(24, Double.class); } @Nullable public Integer getCcrHighSetpointSwitchMode() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public Float getCcrHighSetpoint() { - return (Float) getFieldByNumber(26); + return getFieldByNumber(26, Float.class); } @Nullable public Double getCcrHighSetpointDepth() { - return (Double) getFieldByNumber(27); + return getFieldByNumber(27, Double.class); } @Nullable public Integer getGasConsumptionDisplay() { - return (Integer) getFieldByNumber(29); + return getFieldByNumber(29, Integer.class); } @Nullable public Integer getUpKeyEnabled() { - return (Integer) getFieldByNumber(30); + return getFieldByNumber(30, Integer.class); } @Nullable public Integer getDiveSounds() { - return (Integer) getFieldByNumber(35); + return getFieldByNumber(35, Integer.class); } @Nullable public Float getLastStopMultiple() { - return (Float) getFieldByNumber(36); + return getFieldByNumber(36, Float.class); } @Nullable public Integer getNoFlyTimeMode() { - return (Integer) getFieldByNumber(37); + return getFieldByNumber(37, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSummary.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSummary.java index cf0fe4c9f1..d381e28857 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSummary.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitDiveSummary.java @@ -41,117 +41,117 @@ public class FitDiveSummary extends RecordData { @Nullable public Integer getReferenceMesg() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getReferenceIndex() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Double getAvgDepth() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Double getMaxDepth() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Long getSurfaceInterval() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Integer getStartCns() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getEndCns() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getStartN2() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getEndN2() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getO2Toxicity() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Long getDiveNumber() { - return (Long) getFieldByNumber(10); + return getFieldByNumber(10, Long.class); } @Nullable public Double getBottomTime() { - return (Double) getFieldByNumber(11); + return getFieldByNumber(11, Double.class); } @Nullable public Float getAvgPressureSac() { - return (Float) getFieldByNumber(12); + return getFieldByNumber(12, Float.class); } @Nullable public Float getAvgVolumeSac() { - return (Float) getFieldByNumber(13); + return getFieldByNumber(13, Float.class); } @Nullable public Float getAvgRmv() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Double getDescentTime() { - return (Double) getFieldByNumber(15); + return getFieldByNumber(15, Double.class); } @Nullable public Double getAscentTime() { - return (Double) getFieldByNumber(16); + return getFieldByNumber(16, Double.class); } @Nullable public Double getAvgAscentRate() { - return (Double) getFieldByNumber(17); + return getFieldByNumber(17, Double.class); } @Nullable public Double getAvgDescentRate() { - return (Double) getFieldByNumber(22); + return getFieldByNumber(22, Double.class); } @Nullable public Double getMaxAscentRate() { - return (Double) getFieldByNumber(23); + return getFieldByNumber(23, Double.class); } @Nullable public Double getMaxDescentRate() { - return (Double) getFieldByNumber(24); + return getFieldByNumber(24, Double.class); } @Nullable public Double getHangTime() { - return (Double) getFieldByNumber(25); + return getFieldByNumber(25, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgRawSample.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgRawSample.java index 9a2ec56b31..88ddf1b046 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgRawSample.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgRawSample.java @@ -41,7 +41,7 @@ public class FitEcgRawSample extends RecordData { @Nullable public Float getValue() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSmoothSample.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSmoothSample.java index 04f55119cc..c45722f533 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSmoothSample.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSmoothSample.java @@ -41,7 +41,7 @@ public class FitEcgSmoothSample extends RecordData { @Nullable public Float getValue() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSummary.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSummary.java index ee31980e3f..15d28b041f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSummary.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEcgSummary.java @@ -41,57 +41,57 @@ public class FitEcgSummary extends RecordData { @Nullable public Integer getUnknown0() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getUnknown1() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Float getUnknown2() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Float getUnknown3() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Long getEcgTimestamp() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getUnknown6() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Float getAverageHeartRate() { - return (Float) getFieldByNumber(7); + return getFieldByNumber(7, Float.class); } @Nullable public String getUnknown10() { - return (String) getFieldByNumber(10); + return getFieldByNumber(10, String.class); } @Nullable public Integer getUnknown11() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getUnknown12() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEpoStatus.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEpoStatus.java index d9d03b6f78..c6942c39ea 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEpoStatus.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEpoStatus.java @@ -41,22 +41,22 @@ public class FitEpoStatus extends RecordData { @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getEndTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEvent.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEvent.java index e33b66ce46..215e7495ad 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEvent.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitEvent.java @@ -41,97 +41,97 @@ public class FitEvent extends RecordData { @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getData16() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getData() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getScore() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getOpponentScore() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getFrontGearNum() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getFrontGear() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getRearGearNum() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getRearGear() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getActivityType() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Long getStartTimestamp() { - return (Long) getFieldByNumber(15); + return getFieldByNumber(15, Long.class); } @Nullable public Integer getRadarThreatLevelMax() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getRadarThreatCount() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Float getRadarThreatAvgApproachSpeed() { - return (Float) getFieldByNumber(23); + return getFieldByNumber(23, Float.class); } @Nullable public Float getRadarThreatMaxApproachSpeed() { - return (Float) getFieldByNumber(24); + return getFieldByNumber(24, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataConceptConfiguration.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataConceptConfiguration.java index 34276061d1..1ffc11b4ae 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataConceptConfiguration.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataConceptConfiguration.java @@ -41,57 +41,57 @@ public class FitExdDataConceptConfiguration extends RecordData { @Nullable public Integer getScreenIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getConceptField() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getFieldId() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getConceptCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getDataPage() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getConceptKey() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getScaling() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getDataUnits() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getQualifier() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getDescriptor() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Boolean getIsSigned() { - return (Boolean) getFieldByNumber(11); + return getFieldByNumber(11, Boolean.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataFieldConfiguration.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataFieldConfiguration.java index 0f1459ba1f..496a8a6b9b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataFieldConfiguration.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdDataFieldConfiguration.java @@ -41,32 +41,32 @@ public class FitExdDataFieldConfiguration extends RecordData { @Nullable public Integer getScreenIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getConceptField() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getFieldId() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getConceptCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getDisplayType() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public String getTitle() { - return (String) getFieldByNumber(5); + return getFieldByNumber(5, String.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdScreenConfiguration.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdScreenConfiguration.java index 389e1f8338..6ff44f1a7c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdScreenConfiguration.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExdScreenConfiguration.java @@ -41,22 +41,22 @@ public class FitExdScreenConfiguration extends RecordData { @Nullable public Integer getScreenIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getFieldCount() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getLayout() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Boolean getScreenEnabled() { - return (Boolean) getFieldByNumber(3); + return getFieldByNumber(3, Boolean.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExerciseTitle.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExerciseTitle.java index 8c79fb96f9..e2edcf20b2 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExerciseTitle.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitExerciseTitle.java @@ -41,22 +41,22 @@ public class FitExerciseTitle extends RecordData { @Nullable public Integer getExerciseCategory() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getExerciseName() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getWktStepName() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldCapabilities.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldCapabilities.java index 6c5b389223..49e6a0fb8a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldCapabilities.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldCapabilities.java @@ -41,27 +41,27 @@ public class FitFieldCapabilities extends RecordData { @Nullable public Integer getFile() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getMesgNum() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getFieldNum() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldDescription.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldDescription.java index 83f2609ee8..c5ebf393d1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldDescription.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFieldDescription.java @@ -41,72 +41,72 @@ public class FitFieldDescription extends RecordData { @Nullable public Integer getDeveloperDataIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getFieldDefinitionNumber() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getFitBaseTypeId() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public String getFieldName() { - return (String) getFieldByNumber(3); + return getFieldByNumber(3, String.class); } @Nullable public Integer getArray() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public String getComponents() { - return (String) getFieldByNumber(5); + return getFieldByNumber(5, String.class); } @Nullable public Integer getScale() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getOffset() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public String getUnits() { - return (String) getFieldByNumber(8); + return getFieldByNumber(8, String.class); } @Nullable public String getBits() { - return (String) getFieldByNumber(9); + return getFieldByNumber(9, String.class); } @Nullable public String getAccumulate() { - return (String) getFieldByNumber(10); + return getFieldByNumber(10, String.class); } @Nullable public Integer getFitBaseUnitId() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getNativeMesgNum() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Integer getNativeFieldNum() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCapabilities.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCapabilities.java index 05599f9134..db04144e5f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCapabilities.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCapabilities.java @@ -41,32 +41,32 @@ public class FitFileCapabilities extends RecordData { @Nullable public Integer getType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getFlags() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getDirectory() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getMaxCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getMaxSize() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCreator.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCreator.java index d23a8cb876..6ac075bcb3 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCreator.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileCreator.java @@ -41,12 +41,12 @@ public class FitFileCreator extends RecordData { @Nullable public Integer getSoftwareVersion() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getHardwareVersion() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileId.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileId.java index 732e97abbf..71dbaa7bd4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileId.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitFileId.java @@ -42,42 +42,42 @@ public class FitFileId extends RecordData { @Nullable public FILETYPE getType() { - return (FILETYPE) getFieldByNumber(0); + return getFieldByNumber(0, FILETYPE.class); } @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getProduct() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getSerialNumber() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Long getTimeCreated() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Integer getNumber() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getManufacturerPartner() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public String getProductName() { - return (String) getFieldByNumber(8); + return getFieldByNumber(8, String.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGoals.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGoals.java index 11c3ef858e..1469b46793 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGoals.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGoals.java @@ -43,67 +43,67 @@ public class FitGoals extends RecordData { @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getStartDate() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getEndDate() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Type getType() { - return (Type) getFieldByNumber(4); + return getFieldByNumber(4, Type.class); } @Nullable public Long getValue() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getRepeat() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getTargetValue() { - return (Long) getFieldByNumber(7); + return getFieldByNumber(7, Long.class); } @Nullable public Integer getRecurrence() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getRecurrenceValue() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getEnabled() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Source getSource() { - return (Source) getFieldByNumber(11); + return getFieldByNumber(11, Source.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsEvent.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsEvent.java index 7948caf667..d7e28b90cc 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsEvent.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsEvent.java @@ -41,17 +41,17 @@ public class FitGpsEvent extends RecordData { @Nullable public Long getEventType() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Long getData() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsMetadata.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsMetadata.java index 9741c9ad58..667fcdd92a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsMetadata.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGpsMetadata.java @@ -41,58 +41,47 @@ public class FitGpsMetadata extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Double getEnhancedAltitude() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getEnhancedSpeed() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Float getHeading() { - return (Float) getFieldByNumber(5); + return getFieldByNumber(5, Float.class); } @Nullable public Long getUtcTimestamp() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Number[] getVelocity() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGyroscopeData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGyroscopeData.java index e8dddf4460..0488b2fd0d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGyroscopeData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitGyroscopeData.java @@ -41,124 +41,47 @@ public class FitGyroscopeData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSampleTimeOffset() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getGyroX() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getGyroY() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getGyroZ() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getCalibratedGyroX() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Number[] getCalibratedGyroY() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Number.class); } @Nullable public Number[] getCalibratedGyroZ() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHr.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHr.java index 6a8e207e4d..c684941170 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHr.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHr.java @@ -41,65 +41,32 @@ public class FitHr extends RecordData { @Nullable public Float getFractionalTimestamp() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Float getTime256() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Number[] getFilteredBpm() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Number.class); } @Nullable public Number[] getEventTimestamp() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public Number[] getEventTimestamp12() { - final Object object = getFieldByNumber(10); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(10, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrZone.java index fa92692dcc..7b67d3ba7a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrZone.java @@ -41,17 +41,17 @@ public class FitHrZone extends RecordData { @Nullable public Integer getHighBpm() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrmProfile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrmProfile.java index e33fde938a..d2712798d8 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrmProfile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrmProfile.java @@ -41,27 +41,27 @@ public class FitHrmProfile extends RecordData { @Nullable public Boolean getEnabled() { - return (Boolean) getFieldByNumber(0); + return getFieldByNumber(0, Boolean.class); } @Nullable public Integer getHrmAntId() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getLogHrv() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getHrmAntIdTransType() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrv.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrv.java index bb1b90adf0..218fcb7421 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrv.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrv.java @@ -41,18 +41,7 @@ public class FitHrv extends RecordData { @Nullable public Number[] getTime() { - final Object object = getFieldByNumber(0); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(0, Number.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvSummary.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvSummary.java index c6b6b81f07..1f43954f8b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvSummary.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvSummary.java @@ -42,42 +42,42 @@ public class FitHrvSummary extends RecordData { @Nullable public Float getWeeklyAverage() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Float getLastNightAverage() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Float getLastNight5MinHigh() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Float getBaselineLowUpper() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Float getBaselineBalancedLower() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Float getBaselineBalancedUpper() { - return (Float) getFieldByNumber(5); + return getFieldByNumber(5, Float.class); } @Nullable public HrvStatus getStatus() { - return (HrvStatus) getFieldByNumber(6); + return getFieldByNumber(6, HrvStatus.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvValue.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvValue.java index bd5d434486..1e43433fd9 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvValue.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHrvValue.java @@ -41,12 +41,12 @@ public class FitHrvValue extends RecordData { @Nullable public Float getValue() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaAccelerometerData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaAccelerometerData.java index 4212f48e6e..dd045e3840 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaAccelerometerData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaAccelerometerData.java @@ -41,70 +41,37 @@ public class FitHsaAccelerometerData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSamplingInterval() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Number[] getAccelX() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getAccelY() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getAccelZ() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getTimestamp32k() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaBodyBatteryData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaBodyBatteryData.java index ccabe24c4e..2ef1134dac 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaBodyBatteryData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaBodyBatteryData.java @@ -41,60 +41,27 @@ public class FitHsaBodyBatteryData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getLevel() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getCharged() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getUncharged() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaConfigurationData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaConfigurationData.java index 0d138d65f2..f74b086cad 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaConfigurationData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaConfigurationData.java @@ -41,28 +41,17 @@ public class FitHsaConfigurationData extends RecordData { @Nullable public Number[] getData() { - final Object object = getFieldByNumber(0); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(0, Number.class); } @Nullable public Integer getDataSize() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaEvent.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaEvent.java index 28c70683a8..6c6e71f07d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaEvent.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaEvent.java @@ -41,12 +41,12 @@ public class FitHsaEvent extends RecordData { @Nullable public Integer getEventId() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaGyroscopeData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaGyroscopeData.java index 84fb7b5684..19214d122b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaGyroscopeData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaGyroscopeData.java @@ -41,70 +41,37 @@ public class FitHsaGyroscopeData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSamplingInterval() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Number[] getGyroX() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getGyroY() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getGyroZ() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getTimestamp32k() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaHeartRateData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaHeartRateData.java index 69e652aa21..c0438be138 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaHeartRateData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaHeartRateData.java @@ -41,33 +41,22 @@ public class FitHsaHeartRateData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Number[] getHeartRate() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaRespirationData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaRespirationData.java index 5fc2f0eb52..f236ace9f2 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaRespirationData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaRespirationData.java @@ -41,28 +41,17 @@ public class FitHsaRespirationData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getRespirationRate() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaSpo2Data.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaSpo2Data.java index 6200ff61e4..4b2bf2caf9 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaSpo2Data.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaSpo2Data.java @@ -41,44 +41,22 @@ public class FitHsaSpo2Data extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getReadingSpo2() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getConfidence() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStepData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStepData.java index 8e7fecda47..7eb2c908de 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStepData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStepData.java @@ -41,28 +41,17 @@ public class FitHsaStepData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSteps() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStressData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStressData.java index f97eadc2b1..2cbfb9c8dd 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStressData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaStressData.java @@ -41,28 +41,17 @@ public class FitHsaStressData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getStressLevel() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaWristTemperatureData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaWristTemperatureData.java index 0f9f1e647f..00449d7cfd 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaWristTemperatureData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitHsaWristTemperatureData.java @@ -41,28 +41,17 @@ public class FitHsaWristTemperatureData extends RecordData { @Nullable public Integer getProcessingInterval() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getValue() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitJump.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitJump.java index ee86caa9c3..f14f28a0b7 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitJump.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitJump.java @@ -41,52 +41,52 @@ public class FitJump extends RecordData { @Nullable public Float getDistance() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Float getHeigh() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Integer getRotations() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Float getHangTime() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Float getScore() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Float getSpeed() { - return (Float) getFieldByNumber(7); + return getFieldByNumber(7, Float.class); } @Nullable public Double getEnhancedSpeed() { - return (Double) getFieldByNumber(8); + return getFieldByNumber(8, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLap.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLap.java index 43255c7d64..2ac406b93a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLap.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLap.java @@ -42,842 +42,622 @@ public class FitLap extends RecordData { @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Double getStartLat() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getStartLong() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Double getEndLat() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Double getEndLong() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Double getTotalElapsedTime() { - return (Double) getFieldByNumber(7); + return getFieldByNumber(7, Double.class); } @Nullable public Double getTotalTimerTime() { - return (Double) getFieldByNumber(8); + return getFieldByNumber(8, Double.class); } @Nullable public Double getTotalDistance() { - return (Double) getFieldByNumber(9); + return getFieldByNumber(9, Double.class); } @Nullable public Long getTotalCycles() { - return (Long) getFieldByNumber(10); + return getFieldByNumber(10, Long.class); } @Nullable public Integer getTotalCalories() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getTotalFatCalories() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Float getAvgSpeed() { - return (Float) getFieldByNumber(13); + return getFieldByNumber(13, Float.class); } @Nullable public Float getMaxSpeed() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Integer getAvgHeartRate() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getAvgCadence() { - return (Integer) getFieldByNumber(17); + return getFieldByNumber(17, Integer.class); } @Nullable public Integer getMaxCadence() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Integer getAvgPower() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Integer getMaxPower() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getTotalAscent() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getTotalDescent() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Integer getIntensity() { - return (Integer) getFieldByNumber(23); + return getFieldByNumber(23, Integer.class); } @Nullable public Integer getLapTrigger() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(26); + return getFieldByNumber(26, Integer.class); } @Nullable public Integer getNumLengths() { - return (Integer) getFieldByNumber(32); + return getFieldByNumber(32, Integer.class); } @Nullable public Integer getNormalizedPower() { - return (Integer) getFieldByNumber(33); + return getFieldByNumber(33, Integer.class); } @Nullable public Integer getLeftRightBalance() { - return (Integer) getFieldByNumber(34); + return getFieldByNumber(34, Integer.class); } @Nullable public Integer getFirstLengthIndex() { - return (Integer) getFieldByNumber(35); + return getFieldByNumber(35, Integer.class); } @Nullable public Integer getAvgStrokeDistance() { - return (Integer) getFieldByNumber(37); + return getFieldByNumber(37, Integer.class); } @Nullable public SwimStyle getSwimStyle() { - return (SwimStyle) getFieldByNumber(38); + return getFieldByNumber(38, SwimStyle.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(39); + return getFieldByNumber(39, Integer.class); } @Nullable public Integer getNumActiveLengths() { - return (Integer) getFieldByNumber(40); + return getFieldByNumber(40, Integer.class); } @Nullable public Long getTotalWork() { - return (Long) getFieldByNumber(41); + return getFieldByNumber(41, Long.class); } @Nullable public Float getAvgAltitude() { - return (Float) getFieldByNumber(42); + return getFieldByNumber(42, Float.class); } @Nullable public Float getMaxAltitude() { - return (Float) getFieldByNumber(43); + return getFieldByNumber(43, Float.class); } @Nullable public Integer getGpsAccuracy() { - return (Integer) getFieldByNumber(44); + return getFieldByNumber(44, Integer.class); } @Nullable public Float getAvgGrade() { - return (Float) getFieldByNumber(45); + return getFieldByNumber(45, Float.class); } @Nullable public Float getAvgPosGrade() { - return (Float) getFieldByNumber(46); + return getFieldByNumber(46, Float.class); } @Nullable public Float getAvgNegGrade() { - return (Float) getFieldByNumber(47); + return getFieldByNumber(47, Float.class); } @Nullable public Float getMaxPosGrade() { - return (Float) getFieldByNumber(48); + return getFieldByNumber(48, Float.class); } @Nullable public Float getMaxNegGrade() { - return (Float) getFieldByNumber(49); + return getFieldByNumber(49, Float.class); } @Nullable public Integer getAvgTemperature() { - return (Integer) getFieldByNumber(50); + return getFieldByNumber(50, Integer.class); } @Nullable public Integer getMaxTemperature() { - return (Integer) getFieldByNumber(51); + return getFieldByNumber(51, Integer.class); } @Nullable public Double getTotalMovingTime() { - return (Double) getFieldByNumber(52); + return getFieldByNumber(52, Double.class); } @Nullable public Float getAvgPosVerticalSpeed() { - return (Float) getFieldByNumber(53); + return getFieldByNumber(53, Float.class); } @Nullable public Float getAvgNegVerticalSpeed() { - return (Float) getFieldByNumber(54); + return getFieldByNumber(54, Float.class); } @Nullable public Float getMaxPosVerticalSpeed() { - return (Float) getFieldByNumber(55); + return getFieldByNumber(55, Float.class); } @Nullable public Float getMaxNegVerticalSpeed() { - return (Float) getFieldByNumber(56); + return getFieldByNumber(56, Float.class); } @Nullable public Number[] getTimeInHrZone() { - final Object object = getFieldByNumber(57); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(57, Number.class); } @Nullable public Number[] getTimeInSpeedZone() { - final Object object = getFieldByNumber(58); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(58, Number.class); } @Nullable public Number[] getTimeInCadenceZone() { - final Object object = getFieldByNumber(59); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(59, Number.class); } @Nullable public Number[] getTimeInPowerZone() { - final Object object = getFieldByNumber(60); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(60, Number.class); } @Nullable public Integer getRepetitionNum() { - return (Integer) getFieldByNumber(61); + return getFieldByNumber(61, Integer.class); } @Nullable public Float getMinAltitude() { - return (Float) getFieldByNumber(62); + return getFieldByNumber(62, Float.class); } @Nullable public Integer getMinHeartRate() { - return (Integer) getFieldByNumber(63); + return getFieldByNumber(63, Integer.class); } @Nullable public Integer getWktStepIndex() { - return (Integer) getFieldByNumber(71); + return getFieldByNumber(71, Integer.class); } @Nullable public Integer getAvgSwolf() { - return (Integer) getFieldByNumber(73); + return getFieldByNumber(73, Integer.class); } @Nullable public Integer getOpponentScore() { - return (Integer) getFieldByNumber(74); + return getFieldByNumber(74, Integer.class); } @Nullable public Number[] getStrokeCount() { - final Object object = getFieldByNumber(75); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(75, Number.class); } @Nullable public Number[] getZoneCount() { - final Object object = getFieldByNumber(76); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(76, Number.class); } @Nullable public Float getAvgVerticalOscillation() { - return (Float) getFieldByNumber(77); + return getFieldByNumber(77, Float.class); } @Nullable public Float getAvgStanceTimePercent() { - return (Float) getFieldByNumber(78); + return getFieldByNumber(78, Float.class); } @Nullable public Float getAvgStanceTime() { - return (Float) getFieldByNumber(79); + return getFieldByNumber(79, Float.class); } @Nullable public Float getAvgFractionalCadence() { - return (Float) getFieldByNumber(80); + return getFieldByNumber(80, Float.class); } @Nullable public Float getMaxFractionalCadence() { - return (Float) getFieldByNumber(81); + return getFieldByNumber(81, Float.class); } @Nullable public Float getTotalFractionalCycles() { - return (Float) getFieldByNumber(82); + return getFieldByNumber(82, Float.class); } @Nullable public Integer getPlayerScore() { - return (Integer) getFieldByNumber(83); + return getFieldByNumber(83, Integer.class); } @Nullable public Number[] getAvgTotalHemoglobinConc() { - final Object object = getFieldByNumber(84); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(84, Number.class); } @Nullable public Number[] getMinTotalHemoglobinConc() { - final Object object = getFieldByNumber(85); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(85, Number.class); } @Nullable public Number[] getMaxTotalHemoglobinConc() { - final Object object = getFieldByNumber(86); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(86, Number.class); } @Nullable public Number[] getAvgSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(87); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(87, Number.class); } @Nullable public Number[] getMinSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(88); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(88, Number.class); } @Nullable public Number[] getMaxSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(89); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(89, Number.class); } @Nullable public Float getAvgLeftTorqueEffectiveness() { - return (Float) getFieldByNumber(91); + return getFieldByNumber(91, Float.class); } @Nullable public Float getAvgRightTorqueEffectiveness() { - return (Float) getFieldByNumber(92); + return getFieldByNumber(92, Float.class); } @Nullable public Float getAvgLeftPedalSmoothness() { - return (Float) getFieldByNumber(93); + return getFieldByNumber(93, Float.class); } @Nullable public Float getAvgRightPedalSmoothness() { - return (Float) getFieldByNumber(94); + return getFieldByNumber(94, Float.class); } @Nullable public Float getAvgCombinedPedalSmoothness() { - return (Float) getFieldByNumber(95); + return getFieldByNumber(95, Float.class); } @Nullable public Double getTimeStanding() { - return (Double) getFieldByNumber(98); + return getFieldByNumber(98, Double.class); } @Nullable public Integer getStandCount() { - return (Integer) getFieldByNumber(99); + return getFieldByNumber(99, Integer.class); } @Nullable public Integer getAvgLeftPco() { - return (Integer) getFieldByNumber(100); + return getFieldByNumber(100, Integer.class); } @Nullable public Integer getAvgRightPco() { - return (Integer) getFieldByNumber(101); + return getFieldByNumber(101, Integer.class); } @Nullable public Number[] getAvgLeftPowerPhase() { - final Object object = getFieldByNumber(102); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(102, Number.class); } @Nullable public Number[] getAvgLeftPowerPhasePeak() { - final Object object = getFieldByNumber(103); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(103, Number.class); } @Nullable public Number[] getAvgRightPowerPhase() { - final Object object = getFieldByNumber(104); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(104, Number.class); } @Nullable public Number[] getAvgRightPowerPhasePeak() { - final Object object = getFieldByNumber(105); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(105, Number.class); } @Nullable public Number[] getAvgPowerPosition() { - final Object object = getFieldByNumber(106); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(106, Number.class); } @Nullable public Number[] getMaxPowerPosition() { - final Object object = getFieldByNumber(107); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(107, Number.class); } @Nullable public Number[] getAvgCadencePosition() { - final Object object = getFieldByNumber(108); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(108, Number.class); } @Nullable public Number[] getMaxCadencePosition() { - final Object object = getFieldByNumber(109); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(109, Number.class); } @Nullable public Double getEnhancedAvgSpeed() { - return (Double) getFieldByNumber(110); + return getFieldByNumber(110, Double.class); } @Nullable public Double getEnhancedMaxSpeed() { - return (Double) getFieldByNumber(111); + return getFieldByNumber(111, Double.class); } @Nullable public Double getEnhancedAvgAltitude() { - return (Double) getFieldByNumber(112); + return getFieldByNumber(112, Double.class); } @Nullable public Double getEnhancedMinAltitude() { - return (Double) getFieldByNumber(113); + return getFieldByNumber(113, Double.class); } @Nullable public Double getEnhancedMaxAltitude() { - return (Double) getFieldByNumber(114); + return getFieldByNumber(114, Double.class); } @Nullable public Integer getAvgLevMotorPower() { - return (Integer) getFieldByNumber(115); + return getFieldByNumber(115, Integer.class); } @Nullable public Integer getMaxLevMotorPower() { - return (Integer) getFieldByNumber(116); + return getFieldByNumber(116, Integer.class); } @Nullable public Float getLevBatteryConsumption() { - return (Float) getFieldByNumber(117); + return getFieldByNumber(117, Float.class); } @Nullable public Float getAvgVerticalRatio() { - return (Float) getFieldByNumber(118); + return getFieldByNumber(118, Float.class); } @Nullable public Float getAvgStanceTimeBalance() { - return (Float) getFieldByNumber(119); + return getFieldByNumber(119, Float.class); } @Nullable public Float getAvgStepLength() { - return (Float) getFieldByNumber(120); + return getFieldByNumber(120, Float.class); } @Nullable public Float getAvgVam() { - return (Float) getFieldByNumber(121); + return getFieldByNumber(121, Float.class); } @Nullable public Double getAvgDepth() { - return (Double) getFieldByNumber(122); + return getFieldByNumber(122, Double.class); } @Nullable public Double getMaxDepth() { - return (Double) getFieldByNumber(123); + return getFieldByNumber(123, Double.class); } @Nullable public Integer getMinTemperature() { - return (Integer) getFieldByNumber(124); + return getFieldByNumber(124, Integer.class); } @Nullable public Float getEnhancedAvgRespirationRate() { - return (Float) getFieldByNumber(136); + return getFieldByNumber(136, Float.class); } @Nullable public Float getEnhancedMaxRespirationRate() { - return (Float) getFieldByNumber(137); + return getFieldByNumber(137, Float.class); } @Nullable public Integer getAvgRespirationRate() { - return (Integer) getFieldByNumber(147); + return getFieldByNumber(147, Integer.class); } @Nullable public Integer getMaxRespirationRate() { - return (Integer) getFieldByNumber(148); + return getFieldByNumber(148, Integer.class); } @Nullable public Float getTotalGrit() { - return (Float) getFieldByNumber(149); + return getFieldByNumber(149, Float.class); } @Nullable public Float getTotalFlow() { - return (Float) getFieldByNumber(150); + return getFieldByNumber(150, Float.class); } @Nullable public Integer getJumpCount() { - return (Integer) getFieldByNumber(151); + return getFieldByNumber(151, Integer.class); } @Nullable public Float getAvgGrit() { - return (Float) getFieldByNumber(153); + return getFieldByNumber(153, Float.class); } @Nullable public Float getAvgFlow() { - return (Float) getFieldByNumber(154); + return getFieldByNumber(154, Float.class); } @Nullable public Float getTotalFractionalAscent() { - return (Float) getFieldByNumber(156); + return getFieldByNumber(156, Float.class); } @Nullable public Float getTotalFractionalDescent() { - return (Float) getFieldByNumber(157); + return getFieldByNumber(157, Float.class); } @Nullable public Float getAvgCoreTemperature() { - return (Float) getFieldByNumber(158); + return getFieldByNumber(158, Float.class); } @Nullable public Float getMinCoreTemperature() { - return (Float) getFieldByNumber(159); + return getFieldByNumber(159, Float.class); } @Nullable public Float getMaxCoreTemperature() { - return (Float) getFieldByNumber(160); + return getFieldByNumber(160, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLength.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLength.java index 48e7382da9..e8cc57e9cc 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLength.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLength.java @@ -41,134 +41,112 @@ public class FitLength extends RecordData { @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Double getTotalElapsedTime() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getTotalTimerTime() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Integer getTotalStrokes() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Float getAvgSpeed() { - return (Float) getFieldByNumber(6); + return getFieldByNumber(6, Float.class); } @Nullable public Integer getSwimStroke() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getAvgSwimmingCadence() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getTotalCalories() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getLengthType() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Integer getPlayerScore() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Integer getOpponentScore() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Number[] getStrokeCount() { - final Object object = getFieldByNumber(20); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(20, Number.class); } @Nullable public Number[] getZoneCount() { - final Object object = getFieldByNumber(21); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(21, Number.class); } @Nullable public Float getEnhancedAvgRespirationRate() { - return (Float) getFieldByNumber(22); + return getFieldByNumber(22, Float.class); } @Nullable public Float getEnhancedMaxRespirationRate() { - return (Float) getFieldByNumber(23); + return getFieldByNumber(23, Float.class); } @Nullable public Integer getAvgRespirationRate() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Integer getMaxRespirationRate() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLocation.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLocation.java index 27ad799913..233f25ad7b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLocation.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitLocation.java @@ -42,47 +42,47 @@ public class FitLocation extends RecordData { @Nullable public String getName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public LocationSymbol getSymbol() { - return (LocationSymbol) getFieldByNumber(3); + return getFieldByNumber(3, LocationSymbol.class); } @Nullable public Float getAltitude() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Integer getEnhancedAltitude() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public String getDescription() { - return (String) getFieldByNumber(6); + return getFieldByNumber(6, String.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMagnetometerData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMagnetometerData.java index 5d24c6c22e..cf48837a2b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMagnetometerData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMagnetometerData.java @@ -41,124 +41,47 @@ public class FitMagnetometerData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getSampleTimeOffset() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getMagX() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getMagY() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getMagZ() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getCalibratedMagX() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Number[] getCalibratedMagY() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Number.class); } @Nullable public Number[] getCalibratedMagZ() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMapLayer.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMapLayer.java index f651c3cb6e..ed67db5b8c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMapLayer.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMapLayer.java @@ -41,67 +41,67 @@ public class FitMapLayer extends RecordData { @Nullable public Integer getReliefShading() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getOrientation() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getUserLocations() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getAutoZoom() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Integer getGuideText() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Integer getTrackLog() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getCourses() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getSpotSoundings() { - return (Integer) getFieldByNumber(23); + return getFieldByNumber(23, Integer.class); } @Nullable public Integer getLightSectors() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Integer getSegments() { - return (Integer) getFieldByNumber(27); + return getFieldByNumber(27, Integer.class); } @Nullable public Integer getContours() { - return (Integer) getFieldByNumber(28); + return getFieldByNumber(28, Integer.class); } @Nullable public Integer getPopularity() { - return (Integer) getFieldByNumber(31); + return getFieldByNumber(31, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMaxMetData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMaxMetData.java index f88f36abf7..41fe2d5cd1 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMaxMetData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMaxMetData.java @@ -41,42 +41,42 @@ public class FitMaxMetData extends RecordData { @Nullable public Long getUpdateTime() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Float getVo2Max() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getMaxMetCategory() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getCalibratedData() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getHrSource() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Integer getSpeedSource() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMemoGlob.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMemoGlob.java index 45fe871b10..fd908b349f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMemoGlob.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMemoGlob.java @@ -41,54 +41,32 @@ public class FitMemoGlob extends RecordData { @Nullable public Number[] getMemo() { - final Object object = getFieldByNumber(0); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(0, Number.class); } @Nullable public Integer getMesgNum() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getParentIndex() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getFieldNum() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Number[] getData() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getPartIndex() { - return (Long) getFieldByNumber(250); + return getFieldByNumber(250, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMesgCapabilities.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMesgCapabilities.java index f75c6ff2af..7448075304 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMesgCapabilities.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMesgCapabilities.java @@ -41,32 +41,32 @@ public class FitMesgCapabilities extends RecordData { @Nullable public Integer getFile() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getMesgNum() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getCountType() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getMaxCount() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getCount() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMetZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMetZone.java index a54177daa1..7de8db7811 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMetZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMetZone.java @@ -41,22 +41,22 @@ public class FitMetZone extends RecordData { @Nullable public Integer getHighBpm() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Float getCalories() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Float getFatCalories() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoring.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoring.java index 25283efc58..a492007ef5 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoring.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoring.java @@ -44,158 +44,147 @@ public class FitMonitoring extends RecordData { @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getCalories() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getDistance() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getCycles() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Long getActiveTime() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Integer getActivityType() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getActivitySubtype() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getActivityLevel() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getDistance16() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getCycles16() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getActiveTime16() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(11); + return getFieldByNumber(11, Long.class); } @Nullable public Float getTemperature() { - return (Float) getFieldByNumber(12); + return getFieldByNumber(12, Float.class); } @Nullable public Float getTemperatureMin() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Float getTemperatureMax() { - return (Float) getFieldByNumber(15); + return getFieldByNumber(15, Float.class); } @Nullable public Number[] getActivityTime() { - final Object object = getFieldByNumber(16); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(16, Number.class); } @Nullable public Integer getActiveCalories() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Integer getDurationMin() { - return (Integer) getFieldByNumber(29); + return getFieldByNumber(29, Integer.class); } @Nullable public Integer getCurrentActivityTypeIntensity() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Integer getTimestamp16() { - return (Integer) getFieldByNumber(26); + return getFieldByNumber(26, Integer.class); } @Nullable public Integer getTimestampMin8() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public Integer getHeartRate() { - return (Integer) getFieldByNumber(27); + return getFieldByNumber(27, Integer.class); } @Nullable public Float getIntensity() { - return (Float) getFieldByNumber(28); + return getFieldByNumber(28, Float.class); } @Nullable public Long getDuration() { - return (Long) getFieldByNumber(30); + return getFieldByNumber(30, Long.class); } @Nullable public Double getAscent() { - return (Double) getFieldByNumber(31); + return getFieldByNumber(31, Double.class); } @Nullable public Double getDescent() { - return (Double) getFieldByNumber(32); + return getFieldByNumber(32, Double.class); } @Nullable public Integer getModerateActivityMinutes() { - return (Integer) getFieldByNumber(33); + return getFieldByNumber(33, Integer.class); } @Nullable public Integer getVigorousActivityMinutes() { - return (Integer) getFieldByNumber(34); + return getFieldByNumber(34, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringHrData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringHrData.java index 9a61afe0c2..31ad081ca3 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringHrData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringHrData.java @@ -41,17 +41,17 @@ public class FitMonitoringHrData extends RecordData { @Nullable public Integer getRestingHeartRate() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getCurrentDayRestingHeartRate() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringInfo.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringInfo.java index 33644fccfa..33c3e0a1cc 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringInfo.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitMonitoringInfo.java @@ -41,65 +41,32 @@ public class FitMonitoringInfo extends RecordData { @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Number[] getActivityType() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getStepsToDistance() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getStepsToCalories() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Integer getRestingMetabolicRate() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNap.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNap.java index b6a4d336d5..9008fd1274 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNap.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNap.java @@ -41,42 +41,42 @@ public class FitNap extends RecordData { @Nullable public Long getStartTimestamp() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Integer getUnknown1() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getEndTimestamp() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Integer getUnknown3() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getUnknown4() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getUnknown6() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getTimestamp7() { - return (Long) getFieldByNumber(7); + return getFieldByNumber(7, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNmeaSentence.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNmeaSentence.java index ae0d17e96b..06bfa64efe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNmeaSentence.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitNmeaSentence.java @@ -41,17 +41,17 @@ public class FitNmeaSentence extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public String getSentence() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitObdiiData.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitObdiiData.java index 9efec47719..8090541b6c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitObdiiData.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitObdiiData.java @@ -41,91 +41,47 @@ public class FitObdiiData extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getTimeOffset() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Integer getPid() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Number[] getRawData() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getPidDataSize() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getSystemTime() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Long getStartTimestamp() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Integer getStartTimestampMs() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOhrSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOhrSettings.java index ad4beb6044..b8f8901b0c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOhrSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOhrSettings.java @@ -41,12 +41,12 @@ public class FitOhrSettings extends RecordData { @Nullable public Integer getEnabled() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOneDSensorCalibration.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOneDSensorCalibration.java index 4e44614f84..099ec83c98 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOneDSensorCalibration.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitOneDSensorCalibration.java @@ -41,32 +41,32 @@ public class FitOneDSensorCalibration extends RecordData { @Nullable public Integer getSensorType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getCalibrationFactor() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getCalibrationDivisor() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getLevelShift() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Long getOffsetCal() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPhysiologicalMetrics.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPhysiologicalMetrics.java index c7ede3a672..99eceee09f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPhysiologicalMetrics.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPhysiologicalMetrics.java @@ -41,32 +41,32 @@ public class FitPhysiologicalMetrics extends RecordData { @Nullable public Float getAerobicEffect() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Double getMetMax() { - return (Double) getFieldByNumber(7); + return getFieldByNumber(7, Double.class); } @Nullable public Integer getRecoveryTime() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getLactateThresholdHeartRate() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Float getAnaerobicEffect() { - return (Float) getFieldByNumber(20); + return getFieldByNumber(20, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPowerZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPowerZone.java index b587af984f..5789737694 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPowerZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitPowerZone.java @@ -41,17 +41,17 @@ public class FitPowerZone extends RecordData { @Nullable public Integer getHighValue() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRawBbi.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRawBbi.java index aa30cb6bdc..59369091b3 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRawBbi.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRawBbi.java @@ -41,76 +41,32 @@ public class FitRawBbi extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Number[] getData() { - final Object object = getFieldByNumber(1); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(1, Number.class); } @Nullable public Number[] getTime() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Number.class); } @Nullable public Number[] getQuality() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getGap() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRecord.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRecord.java index eaca271923..ea64d9ea76 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRecord.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRecord.java @@ -45,498 +45,432 @@ public class FitRecord extends RecordData { @Nullable public Double getLatitude() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Double getLongitude() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Float getAltitude() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Integer getHeartRate() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getCadence() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Double getDistance() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Float getSpeed() { - return (Float) getFieldByNumber(6); + return getFieldByNumber(6, Float.class); } @Nullable public Integer getPower() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Number[] getCompressedSpeedDistance() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Float getGrade() { - return (Float) getFieldByNumber(9); + return getFieldByNumber(9, Float.class); } @Nullable public Integer getResistance() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Double getTimeFromCourse() { - return (Double) getFieldByNumber(11); + return getFieldByNumber(11, Double.class); } @Nullable public Float getCycleLength() { - return (Float) getFieldByNumber(12); + return getFieldByNumber(12, Float.class); } @Nullable public Integer getTemperature() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Number[] getSpeed1s() { - final Object object = getFieldByNumber(17); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(17, Number.class); } @Nullable public Integer getCycles() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Long getTotalCycles() { - return (Long) getFieldByNumber(19); + return getFieldByNumber(19, Long.class); } @Nullable public Integer getCompressedAccumulatedPower() { - return (Integer) getFieldByNumber(28); + return getFieldByNumber(28, Integer.class); } @Nullable public Long getAccumulatedPower() { - return (Long) getFieldByNumber(29); + return getFieldByNumber(29, Long.class); } @Nullable public Integer getLeftRightBalance() { - return (Integer) getFieldByNumber(30); + return getFieldByNumber(30, Integer.class); } @Nullable public Integer getGpsAccuracy() { - return (Integer) getFieldByNumber(31); + return getFieldByNumber(31, Integer.class); } @Nullable public Float getVerticalSpeed() { - return (Float) getFieldByNumber(32); + return getFieldByNumber(32, Float.class); } @Nullable public Integer getCalories() { - return (Integer) getFieldByNumber(33); + return getFieldByNumber(33, Integer.class); } @Nullable public Float getOscillation() { - return (Float) getFieldByNumber(39); + return getFieldByNumber(39, Float.class); } @Nullable public Float getStanceTimePercent() { - return (Float) getFieldByNumber(40); + return getFieldByNumber(40, Float.class); } @Nullable public Float getStanceTime() { - return (Float) getFieldByNumber(41); + return getFieldByNumber(41, Float.class); } @Nullable public Integer getActivity() { - return (Integer) getFieldByNumber(42); + return getFieldByNumber(42, Integer.class); } @Nullable public Float getLeftTorqueEffectiveness() { - return (Float) getFieldByNumber(43); + return getFieldByNumber(43, Float.class); } @Nullable public Float getRightTorqueEffectiveness() { - return (Float) getFieldByNumber(44); + return getFieldByNumber(44, Float.class); } @Nullable public Float getLeftPedalSmoothness() { - return (Float) getFieldByNumber(45); + return getFieldByNumber(45, Float.class); } @Nullable public Float getRightPedalSmoothness() { - return (Float) getFieldByNumber(46); + return getFieldByNumber(46, Float.class); } @Nullable public Float getCombinedPedalSmoothness() { - return (Float) getFieldByNumber(47); + return getFieldByNumber(47, Float.class); } @Nullable public Float getTime128() { - return (Float) getFieldByNumber(48); + return getFieldByNumber(48, Float.class); } @Nullable public Integer getStrokeType() { - return (Integer) getFieldByNumber(49); + return getFieldByNumber(49, Integer.class); } @Nullable public Integer getZone() { - return (Integer) getFieldByNumber(50); + return getFieldByNumber(50, Integer.class); } @Nullable public Float getBallSpeed() { - return (Float) getFieldByNumber(51); + return getFieldByNumber(51, Float.class); } @Nullable public Float getCadence256() { - return (Float) getFieldByNumber(52); + return getFieldByNumber(52, Float.class); } @Nullable public Float getFractionalCadence() { - return (Float) getFieldByNumber(53); + return getFieldByNumber(53, Float.class); } @Nullable public Float getAvgTotalHemoglobinConc() { - return (Float) getFieldByNumber(54); + return getFieldByNumber(54, Float.class); } @Nullable public Float getMinTotalHemoglobinConc() { - return (Float) getFieldByNumber(55); + return getFieldByNumber(55, Float.class); } @Nullable public Float getMaxTotalHemoglobinConc() { - return (Float) getFieldByNumber(56); + return getFieldByNumber(56, Float.class); } @Nullable public Float getAvgSaturatedHemoglobinPercent() { - return (Float) getFieldByNumber(57); + return getFieldByNumber(57, Float.class); } @Nullable public Float getMinSaturatedHemoglobinPercent() { - return (Float) getFieldByNumber(58); + return getFieldByNumber(58, Float.class); } @Nullable public Float getMaxSaturatedHemoglobinPercent() { - return (Float) getFieldByNumber(59); + return getFieldByNumber(59, Float.class); } @Nullable public Integer getDeviceIndex() { - return (Integer) getFieldByNumber(62); + return getFieldByNumber(62, Integer.class); } @Nullable public Integer getLeftPco() { - return (Integer) getFieldByNumber(67); + return getFieldByNumber(67, Integer.class); } @Nullable public Integer getRightPco() { - return (Integer) getFieldByNumber(68); + return getFieldByNumber(68, Integer.class); } @Nullable public Number[] getLeftPowerPhase() { - final Object object = getFieldByNumber(69); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(69, Number.class); } @Nullable public Number[] getLeftPowerPhasePeak() { - final Object object = getFieldByNumber(70); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(70, Number.class); } @Nullable public Number[] getRightPowerPhase() { - final Object object = getFieldByNumber(71); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(71, Number.class); } @Nullable public Number[] getRightPowerPhasePeak() { - final Object object = getFieldByNumber(72); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(72, Number.class); } @Nullable public Double getEnhancedSpeed() { - return (Double) getFieldByNumber(73); + return getFieldByNumber(73, Double.class); } @Nullable public Double getEnhancedAltitude() { - return (Double) getFieldByNumber(78); + return getFieldByNumber(78, Double.class); } @Nullable public Float getBatterySoc() { - return (Float) getFieldByNumber(81); + return getFieldByNumber(81, Float.class); } @Nullable public Integer getMotorPower() { - return (Integer) getFieldByNumber(82); + return getFieldByNumber(82, Integer.class); } @Nullable public Float getVerticalRatio() { - return (Float) getFieldByNumber(83); + return getFieldByNumber(83, Float.class); } @Nullable public Float getStanceTimeBalance() { - return (Float) getFieldByNumber(84); + return getFieldByNumber(84, Float.class); } @Nullable public Float getStepLength() { - return (Float) getFieldByNumber(85); + return getFieldByNumber(85, Float.class); } @Nullable public Float getCycleLength16() { - return (Float) getFieldByNumber(87); + return getFieldByNumber(87, Float.class); } @Nullable public Long getAbsolutePressure() { - return (Long) getFieldByNumber(91); + return getFieldByNumber(91, Long.class); } @Nullable public Double getDepth() { - return (Double) getFieldByNumber(92); + return getFieldByNumber(92, Double.class); } @Nullable public Double getNextStopDepth() { - return (Double) getFieldByNumber(93); + return getFieldByNumber(93, Double.class); } @Nullable public Long getNextStopTime() { - return (Long) getFieldByNumber(94); + return getFieldByNumber(94, Long.class); } @Nullable public Long getTimeToSurface() { - return (Long) getFieldByNumber(95); + return getFieldByNumber(95, Long.class); } @Nullable public Long getNdlTime() { - return (Long) getFieldByNumber(96); + return getFieldByNumber(96, Long.class); } @Nullable public Integer getCnsLoad() { - return (Integer) getFieldByNumber(97); + return getFieldByNumber(97, Integer.class); } @Nullable public Integer getN2Load() { - return (Integer) getFieldByNumber(98); + return getFieldByNumber(98, Integer.class); } @Nullable public Integer getRespirationRate() { - return (Integer) getFieldByNumber(99); + return getFieldByNumber(99, Integer.class); } @Nullable public Float getEnhancedRespirationRate() { - return (Float) getFieldByNumber(108); + return getFieldByNumber(108, Float.class); } @Nullable public Float getGrit() { - return (Float) getFieldByNumber(114); + return getFieldByNumber(114, Float.class); } @Nullable public Float getFlow() { - return (Float) getFieldByNumber(115); + return getFieldByNumber(115, Float.class); } @Nullable public Float getCurrentStress() { - return (Float) getFieldByNumber(116); + return getFieldByNumber(116, Float.class); } @Nullable public Integer getEbikeTravelRang() { - return (Integer) getFieldByNumber(117); + return getFieldByNumber(117, Integer.class); } @Nullable public Integer getEbikeBatteryLevel() { - return (Integer) getFieldByNumber(118); + return getFieldByNumber(118, Integer.class); } @Nullable public Integer getEbikeAssistMode() { - return (Integer) getFieldByNumber(119); + return getFieldByNumber(119, Integer.class); } @Nullable public Integer getEbikeAssistLevelPercent() { - return (Integer) getFieldByNumber(120); + return getFieldByNumber(120, Integer.class); } @Nullable public Long getAirTimeRemaining() { - return (Long) getFieldByNumber(123); + return getFieldByNumber(123, Long.class); } @Nullable public Float getPressureSac() { - return (Float) getFieldByNumber(124); + return getFieldByNumber(124, Float.class); } @Nullable public Float getVolumeSac() { - return (Float) getFieldByNumber(125); + return getFieldByNumber(125, Float.class); } @Nullable public Float getRmv() { - return (Float) getFieldByNumber(126); + return getFieldByNumber(126, Float.class); } @Nullable public Double getAscentRate() { - return (Double) getFieldByNumber(127); + return getFieldByNumber(127, Double.class); } @Nullable public Float getPo2() { - return (Float) getFieldByNumber(129); + return getFieldByNumber(129, Float.class); } @Nullable public Integer getWristHeartRate() { - return (Integer) getFieldByNumber(136); + return getFieldByNumber(136, Integer.class); } @Nullable public Float getCoreTemperature() { - return (Float) getFieldByNumber(139); + return getFieldByNumber(139, Float.class); } @Nullable public Integer getBodyBattery() { - return (Integer) getFieldByNumber(143); + return getFieldByNumber(143, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRespirationRate.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRespirationRate.java index 4ae2eddfd6..669bd71a89 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRespirationRate.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitRespirationRate.java @@ -41,12 +41,12 @@ public class FitRespirationRate extends RecordData { @Nullable public Float getRespirationRate() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSchedule.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSchedule.java index 1d558f6e98..9724715cf6 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSchedule.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSchedule.java @@ -41,37 +41,37 @@ public class FitSchedule extends RecordData { @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getProduct() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getSerialNumber() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getTimeCreated() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Boolean getCompleted() { - return (Boolean) getFieldByNumber(4); + return getFieldByNumber(4, Boolean.class); } @Nullable public Integer getType() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Long getScheduledTime() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSdmProfile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSdmProfile.java index a584f230d3..15cc63db53 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSdmProfile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSdmProfile.java @@ -41,42 +41,42 @@ public class FitSdmProfile extends RecordData { @Nullable public Boolean getEnabled() { - return (Boolean) getFieldByNumber(0); + return getFieldByNumber(0, Boolean.class); } @Nullable public Integer getSdmAntId() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Float getSdmCalFactor() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Double getOdometer() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Integer getSpeedSource() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getSdmAntIdTransType() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getOdometerRollover() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentFile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentFile.java index 46a280b64b..4070192a00 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentFile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentFile.java @@ -41,91 +41,47 @@ public class FitSegmentFile extends RecordData { @Nullable public String getFileUuid() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getEnabled() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getUserProfilePrimaryKey() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Number[] getLeaderType() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Number[] getLeaderGroupPrimaryKey() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Number[] getLeaderActivityId() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public String[] getLeaderActivityIdString() { - final Object object = getFieldByNumber(10); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new String[]{(String) object}; - } - final Object[] objectsArray = (Object[]) object; - final String[] ret = new String[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (String) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(10, String.class); } @Nullable public Integer getDefaultRaceLeader() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentId.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentId.java index 0cd1ca6530..ead11e600e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentId.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentId.java @@ -41,47 +41,47 @@ public class FitSegmentId extends RecordData { @Nullable public String getName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public String getUuid() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getEnabled() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getUserProfilePrimaryKey() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Long getDeviceId() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getDefaultRaceLeader() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getDeleteStatus() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getSelectionType() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLap.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLap.java index 41978dede4..2071bd54d4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLap.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLap.java @@ -41,609 +41,477 @@ public class FitSegmentLap extends RecordData { @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Double getStartPositionLat() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getStartPositionLong() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Double getEndPositionLat() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Double getEndPositionLong() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Double getTotalElapsedTime() { - return (Double) getFieldByNumber(7); + return getFieldByNumber(7, Double.class); } @Nullable public Double getTotalTimerTime() { - return (Double) getFieldByNumber(8); + return getFieldByNumber(8, Double.class); } @Nullable public Double getTotalDistance() { - return (Double) getFieldByNumber(9); + return getFieldByNumber(9, Double.class); } @Nullable public Long getTotalCycles() { - return (Long) getFieldByNumber(10); + return getFieldByNumber(10, Long.class); } @Nullable public Integer getTotalCalories() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getTotalFatCalories() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Float getAvgSpeed() { - return (Float) getFieldByNumber(13); + return getFieldByNumber(13, Float.class); } @Nullable public Float getMaxSpeed() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Integer getAvgHeartRate() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getAvgCadence() { - return (Integer) getFieldByNumber(17); + return getFieldByNumber(17, Integer.class); } @Nullable public Integer getMaxCadence() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Integer getAvgPower() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Integer getMaxPower() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getTotalAscent() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getTotalDescent() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(23); + return getFieldByNumber(23, Integer.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Double getNecLat() { - return (Double) getFieldByNumber(25); + return getFieldByNumber(25, Double.class); } @Nullable public Double getNecLong() { - return (Double) getFieldByNumber(26); + return getFieldByNumber(26, Double.class); } @Nullable public Double getSwcLat() { - return (Double) getFieldByNumber(27); + return getFieldByNumber(27, Double.class); } @Nullable public Double getSwcLong() { - return (Double) getFieldByNumber(28); + return getFieldByNumber(28, Double.class); } @Nullable public String getName() { - return (String) getFieldByNumber(29); + return getFieldByNumber(29, String.class); } @Nullable public Integer getNormalizedPower() { - return (Integer) getFieldByNumber(30); + return getFieldByNumber(30, Integer.class); } @Nullable public Integer getLeftRightBalance() { - return (Integer) getFieldByNumber(31); + return getFieldByNumber(31, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(32); + return getFieldByNumber(32, Integer.class); } @Nullable public Long getTotalWork() { - return (Long) getFieldByNumber(33); + return getFieldByNumber(33, Long.class); } @Nullable public Float getAvgAltitude() { - return (Float) getFieldByNumber(34); + return getFieldByNumber(34, Float.class); } @Nullable public Float getMaxAltitude() { - return (Float) getFieldByNumber(35); + return getFieldByNumber(35, Float.class); } @Nullable public Integer getGpsAccuracy() { - return (Integer) getFieldByNumber(36); + return getFieldByNumber(36, Integer.class); } @Nullable public Float getAvgGrade() { - return (Float) getFieldByNumber(37); + return getFieldByNumber(37, Float.class); } @Nullable public Float getAvgPosGrade() { - return (Float) getFieldByNumber(38); + return getFieldByNumber(38, Float.class); } @Nullable public Float getAvgNegGrade() { - return (Float) getFieldByNumber(39); + return getFieldByNumber(39, Float.class); } @Nullable public Float getMaxPosGrade() { - return (Float) getFieldByNumber(40); + return getFieldByNumber(40, Float.class); } @Nullable public Float getMaxNegGrade() { - return (Float) getFieldByNumber(41); + return getFieldByNumber(41, Float.class); } @Nullable public Integer getAvgTemperature() { - return (Integer) getFieldByNumber(42); + return getFieldByNumber(42, Integer.class); } @Nullable public Integer getMaxTemperature() { - return (Integer) getFieldByNumber(43); + return getFieldByNumber(43, Integer.class); } @Nullable public Double getTotalMovingTime() { - return (Double) getFieldByNumber(44); + return getFieldByNumber(44, Double.class); } @Nullable public Float getAvgPosVerticalSpeed() { - return (Float) getFieldByNumber(45); + return getFieldByNumber(45, Float.class); } @Nullable public Float getAvgNegVerticalSpeed() { - return (Float) getFieldByNumber(46); + return getFieldByNumber(46, Float.class); } @Nullable public Float getMaxPosVerticalSpeed() { - return (Float) getFieldByNumber(47); + return getFieldByNumber(47, Float.class); } @Nullable public Float getMaxNegVerticalSpeed() { - return (Float) getFieldByNumber(48); + return getFieldByNumber(48, Float.class); } @Nullable public Number[] getTimeInHrZone() { - final Object object = getFieldByNumber(49); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(49, Number.class); } @Nullable public Number[] getTimeInSpeedZone() { - final Object object = getFieldByNumber(50); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(50, Number.class); } @Nullable public Number[] getTimeInCadenceZone() { - final Object object = getFieldByNumber(51); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(51, Number.class); } @Nullable public Number[] getTimeInPowerZone() { - final Object object = getFieldByNumber(52); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(52, Number.class); } @Nullable public Integer getRepetitionNum() { - return (Integer) getFieldByNumber(53); + return getFieldByNumber(53, Integer.class); } @Nullable public Float getMinAltitude() { - return (Float) getFieldByNumber(54); + return getFieldByNumber(54, Float.class); } @Nullable public Integer getMinHeartRate() { - return (Integer) getFieldByNumber(55); + return getFieldByNumber(55, Integer.class); } @Nullable public Double getActiveTime() { - return (Double) getFieldByNumber(56); + return getFieldByNumber(56, Double.class); } @Nullable public Integer getWktStepIndex() { - return (Integer) getFieldByNumber(57); + return getFieldByNumber(57, Integer.class); } @Nullable public Integer getSportEvent() { - return (Integer) getFieldByNumber(58); + return getFieldByNumber(58, Integer.class); } @Nullable public Float getAvgLeftTorqueEffectiveness() { - return (Float) getFieldByNumber(59); + return getFieldByNumber(59, Float.class); } @Nullable public Float getAvgRightTorqueEffectiveness() { - return (Float) getFieldByNumber(60); + return getFieldByNumber(60, Float.class); } @Nullable public Float getAvgLeftPedalSmoothness() { - return (Float) getFieldByNumber(61); + return getFieldByNumber(61, Float.class); } @Nullable public Float getAvgRightPedalSmoothness() { - return (Float) getFieldByNumber(62); + return getFieldByNumber(62, Float.class); } @Nullable public Float getAvgCombinedPedalSmoothness() { - return (Float) getFieldByNumber(63); + return getFieldByNumber(63, Float.class); } @Nullable public Integer getStatus() { - return (Integer) getFieldByNumber(64); + return getFieldByNumber(64, Integer.class); } @Nullable public String getUuid() { - return (String) getFieldByNumber(65); + return getFieldByNumber(65, String.class); } @Nullable public Float getAvgFractionalCadence() { - return (Float) getFieldByNumber(66); + return getFieldByNumber(66, Float.class); } @Nullable public Float getMaxFractionalCadence() { - return (Float) getFieldByNumber(67); + return getFieldByNumber(67, Float.class); } @Nullable public Float getTotalFractionalCycles() { - return (Float) getFieldByNumber(68); + return getFieldByNumber(68, Float.class); } @Nullable public Integer getFrontGearShiftCount() { - return (Integer) getFieldByNumber(69); + return getFieldByNumber(69, Integer.class); } @Nullable public Integer getRearGearShiftCount() { - return (Integer) getFieldByNumber(70); + return getFieldByNumber(70, Integer.class); } @Nullable public Double getTimeStanding() { - return (Double) getFieldByNumber(71); + return getFieldByNumber(71, Double.class); } @Nullable public Integer getStandCount() { - return (Integer) getFieldByNumber(72); + return getFieldByNumber(72, Integer.class); } @Nullable public Integer getAvgLeftPco() { - return (Integer) getFieldByNumber(73); + return getFieldByNumber(73, Integer.class); } @Nullable public Integer getAvgRightPco() { - return (Integer) getFieldByNumber(74); + return getFieldByNumber(74, Integer.class); } @Nullable public Number[] getAvgLeftPowerPhase() { - final Object object = getFieldByNumber(75); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(75, Number.class); } @Nullable public Number[] getAvgLeftPowerPhasePeak() { - final Object object = getFieldByNumber(76); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(76, Number.class); } @Nullable public Number[] getAvgRightPowerPhase() { - final Object object = getFieldByNumber(77); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(77, Number.class); } @Nullable public Number[] getAvgRightPowerPhasePeak() { - final Object object = getFieldByNumber(78); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(78, Number.class); } @Nullable public Number[] getAvgPowerPosition() { - final Object object = getFieldByNumber(79); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(79, Number.class); } @Nullable public Number[] getMaxPowerPosition() { - final Object object = getFieldByNumber(80); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(80, Number.class); } @Nullable public Number[] getAvgCadencePosition() { - final Object object = getFieldByNumber(81); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(81, Number.class); } @Nullable public Number[] getMaxCadencePosition() { - final Object object = getFieldByNumber(82); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(82, Number.class); } @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(83); + return getFieldByNumber(83, Integer.class); } @Nullable public Float getTotalGrit() { - return (Float) getFieldByNumber(84); + return getFieldByNumber(84, Float.class); } @Nullable public Float getTotalFlow() { - return (Float) getFieldByNumber(85); + return getFieldByNumber(85, Float.class); } @Nullable public Float getAvgGrit() { - return (Float) getFieldByNumber(86); + return getFieldByNumber(86, Float.class); } @Nullable public Float getAvgFlow() { - return (Float) getFieldByNumber(87); + return getFieldByNumber(87, Float.class); } @Nullable public Float getTotalFractionalAscent() { - return (Float) getFieldByNumber(89); + return getFieldByNumber(89, Float.class); } @Nullable public Float getTotalFractionalDescent() { - return (Float) getFieldByNumber(90); + return getFieldByNumber(90, Float.class); } @Nullable public Double getEnhancedAvgAltitude() { - return (Double) getFieldByNumber(91); + return getFieldByNumber(91, Double.class); } @Nullable public Double getEnhancedMaxAltitude() { - return (Double) getFieldByNumber(92); + return getFieldByNumber(92, Double.class); } @Nullable public Double getEnhancedMinAltitude() { - return (Double) getFieldByNumber(93); + return getFieldByNumber(93, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLeaderboardEntry.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLeaderboardEntry.java index 44350e655b..d7f853579e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLeaderboardEntry.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentLeaderboardEntry.java @@ -41,37 +41,37 @@ public class FitSegmentLeaderboardEntry extends RecordData { @Nullable public String getName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Integer getType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getGroupPrimaryKey() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getActivityId() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Double getSegmentTime() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public String getActivityIdString() { - return (String) getFieldByNumber(5); + return getFieldByNumber(5, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentPoint.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentPoint.java index b1cdee9724..1ea3654605 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentPoint.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSegmentPoint.java @@ -41,48 +41,37 @@ public class FitSegmentPoint extends RecordData { @Nullable public Double getPositionLat() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Double getPositionLong() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Double getDistance() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Float getAltitude() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Number[] getLeaderTime() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Double getEnhancedAltitude() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSensorSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSensorSettings.java index 8348802c85..dc05b49d2b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSensorSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSensorSettings.java @@ -41,32 +41,32 @@ public class FitSensorSettings extends RecordData { @Nullable public Long getAntId() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public String getName() { - return (String) getFieldByNumber(2); + return getFieldByNumber(2, String.class); } @Nullable public Integer getUseForSpeed() { - return (Integer) getFieldByNumber(45); + return getFieldByNumber(45, Integer.class); } @Nullable public Integer getUseForDistance() { - return (Integer) getFieldByNumber(46); + return getFieldByNumber(46, Integer.class); } @Nullable public Integer getConnectionType() { - return (Integer) getFieldByNumber(51); + return getFieldByNumber(51, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java index caa8b7f5bc..5b8128d202 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSession.java @@ -47,1082 +47,862 @@ public class FitSession extends RecordData { @Nullable public Integer getEvent() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getEventType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Double getStartLatitude() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getStartLongitude() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Long getTotalElapsedTime() { - return (Long) getFieldByNumber(7); + return getFieldByNumber(7, Long.class); } @Nullable public Long getTotalTimerTime() { - return (Long) getFieldByNumber(8); + return getFieldByNumber(8, Long.class); } @Nullable public Long getTotalDistance() { - return (Long) getFieldByNumber(9); + return getFieldByNumber(9, Long.class); } @Nullable public Long getTotalCycles() { - return (Long) getFieldByNumber(10); + return getFieldByNumber(10, Long.class); } @Nullable public Integer getTotalCalories() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getTotalFatCalories() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Float getAvgSpeed() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Float getMaxSpeed() { - return (Float) getFieldByNumber(15); + return getFieldByNumber(15, Float.class); } @Nullable public Integer getAverageHeartRate() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(17); + return getFieldByNumber(17, Integer.class); } @Nullable public Integer getAvgCadence() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Integer getMaxCadence() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Integer getAvgPower() { - return (Integer) getFieldByNumber(20); + return getFieldByNumber(20, Integer.class); } @Nullable public Integer getMaxPower() { - return (Integer) getFieldByNumber(21); + return getFieldByNumber(21, Integer.class); } @Nullable public Integer getTotalAscent() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Integer getTotalDescent() { - return (Integer) getFieldByNumber(23); + return getFieldByNumber(23, Integer.class); } @Nullable public Float getTotalTrainingEffect() { - return (Float) getFieldByNumber(24); + return getFieldByNumber(24, Float.class); } @Nullable public Integer getFirstLapIndex() { - return (Integer) getFieldByNumber(25); + return getFieldByNumber(25, Integer.class); } @Nullable public Integer getNumLaps() { - return (Integer) getFieldByNumber(26); + return getFieldByNumber(26, Integer.class); } @Nullable public Integer getEventGroup() { - return (Integer) getFieldByNumber(27); + return getFieldByNumber(27, Integer.class); } @Nullable public Integer getTrigger() { - return (Integer) getFieldByNumber(28); + return getFieldByNumber(28, Integer.class); } @Nullable public Double getNecLatitude() { - return (Double) getFieldByNumber(29); + return getFieldByNumber(29, Double.class); } @Nullable public Double getNecLongitude() { - return (Double) getFieldByNumber(30); + return getFieldByNumber(30, Double.class); } @Nullable public Double getSwcLatitude() { - return (Double) getFieldByNumber(31); + return getFieldByNumber(31, Double.class); } @Nullable public Double getSwcLongitude() { - return (Double) getFieldByNumber(32); + return getFieldByNumber(32, Double.class); } @Nullable public Integer getNumLengths() { - return (Integer) getFieldByNumber(33); + return getFieldByNumber(33, Integer.class); } @Nullable public Integer getNormalizedPower() { - return (Integer) getFieldByNumber(34); + return getFieldByNumber(34, Integer.class); } @Nullable public Float getTrainingStressScore() { - return (Float) getFieldByNumber(35); + return getFieldByNumber(35, Float.class); } @Nullable public Float getIntensityFactor() { - return (Float) getFieldByNumber(36); + return getFieldByNumber(36, Float.class); } @Nullable public Integer getLeftRightBalance() { - return (Integer) getFieldByNumber(37); + return getFieldByNumber(37, Integer.class); } @Nullable public Double getEndLatitude() { - return (Double) getFieldByNumber(38); + return getFieldByNumber(38, Double.class); } @Nullable public Double getEndLongitude() { - return (Double) getFieldByNumber(39); + return getFieldByNumber(39, Double.class); } @Nullable public Long getAvgStrokeCount() { - return (Long) getFieldByNumber(41); + return getFieldByNumber(41, Long.class); } @Nullable public Float getAvgStrokeDistance() { - return (Float) getFieldByNumber(42); + return getFieldByNumber(42, Float.class); } @Nullable public Integer getSwimStroke() { - return (Integer) getFieldByNumber(43); + return getFieldByNumber(43, Integer.class); } @Nullable public Float getPoolLength() { - return (Float) getFieldByNumber(44); + return getFieldByNumber(44, Float.class); } @Nullable public Integer getThresholdPower() { - return (Integer) getFieldByNumber(45); + return getFieldByNumber(45, Integer.class); } @Nullable public Integer getPoolLengthUnit() { - return (Integer) getFieldByNumber(46); + return getFieldByNumber(46, Integer.class); } @Nullable public Integer getNumActiveLengths() { - return (Integer) getFieldByNumber(47); + return getFieldByNumber(47, Integer.class); } @Nullable public Long getTotalWork() { - return (Long) getFieldByNumber(48); + return getFieldByNumber(48, Long.class); } @Nullable public Float getAvgAltitude() { - return (Float) getFieldByNumber(49); + return getFieldByNumber(49, Float.class); } @Nullable public Float getMaxAltitude() { - return (Float) getFieldByNumber(50); + return getFieldByNumber(50, Float.class); } @Nullable public Integer getGpsAccuracy() { - return (Integer) getFieldByNumber(51); + return getFieldByNumber(51, Integer.class); } @Nullable public Float getAvgGrade() { - return (Float) getFieldByNumber(52); + return getFieldByNumber(52, Float.class); } @Nullable public Float getAvgPosGrade() { - return (Float) getFieldByNumber(53); + return getFieldByNumber(53, Float.class); } @Nullable public Float getAvgNegGrade() { - return (Float) getFieldByNumber(54); + return getFieldByNumber(54, Float.class); } @Nullable public Float getMaxPosGrade() { - return (Float) getFieldByNumber(55); + return getFieldByNumber(55, Float.class); } @Nullable public Float getMaxNegGrade() { - return (Float) getFieldByNumber(56); + return getFieldByNumber(56, Float.class); } @Nullable public Integer getAvgTemperature() { - return (Integer) getFieldByNumber(57); + return getFieldByNumber(57, Integer.class); } @Nullable public Integer getMaxTemperature() { - return (Integer) getFieldByNumber(58); + return getFieldByNumber(58, Integer.class); } @Nullable public Double getTotalMovingTime() { - return (Double) getFieldByNumber(59); + return getFieldByNumber(59, Double.class); } @Nullable public Float getAvgPosVerticalSpeed() { - return (Float) getFieldByNumber(60); + return getFieldByNumber(60, Float.class); } @Nullable public Float getAvgNegVerticalSpeed() { - return (Float) getFieldByNumber(61); + return getFieldByNumber(61, Float.class); } @Nullable public Float getMaxPosVerticalSpeed() { - return (Float) getFieldByNumber(62); + return getFieldByNumber(62, Float.class); } @Nullable public Float getMaxNegVerticalSpeed() { - return (Float) getFieldByNumber(63); + return getFieldByNumber(63, Float.class); } @Nullable public Integer getMinHeartRate() { - return (Integer) getFieldByNumber(64); + return getFieldByNumber(64, Integer.class); } @Nullable public Number[] getTimeInHrZone() { - final Object object = getFieldByNumber(65); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(65, Number.class); } @Nullable public Number[] getTimeInSpeedZone() { - final Object object = getFieldByNumber(66); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(66, Number.class); } @Nullable public Number[] getTimeInCadenceZone() { - final Object object = getFieldByNumber(67); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(67, Number.class); } @Nullable public Number[] getTimeInPowerZone() { - final Object object = getFieldByNumber(68); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(68, Number.class); } @Nullable public Double getAvgLapTime() { - return (Double) getFieldByNumber(69); + return getFieldByNumber(69, Double.class); } @Nullable public Integer getBestLapIndex() { - return (Integer) getFieldByNumber(70); + return getFieldByNumber(70, Integer.class); } @Nullable public Float getMinAltitude() { - return (Float) getFieldByNumber(71); + return getFieldByNumber(71, Float.class); } @Nullable public Float getAvgSwimCadence() { - return (Float) getFieldByNumber(79); + return getFieldByNumber(79, Float.class); } @Nullable public Integer getAvgSwolf() { - return (Integer) getFieldByNumber(80); + return getFieldByNumber(80, Integer.class); } @Nullable public Integer getPlayerScore() { - return (Integer) getFieldByNumber(82); + return getFieldByNumber(82, Integer.class); } @Nullable public Integer getOpponentScore() { - return (Integer) getFieldByNumber(83); + return getFieldByNumber(83, Integer.class); } @Nullable public String getOpponentName() { - return (String) getFieldByNumber(84); + return getFieldByNumber(84, String.class); } @Nullable public Number[] getStrokeCount() { - final Object object = getFieldByNumber(85); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(85, Number.class); } @Nullable public Number[] getZoneCount() { - final Object object = getFieldByNumber(86); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(86, Number.class); } @Nullable public Float getMaxBallSpeed() { - return (Float) getFieldByNumber(87); + return getFieldByNumber(87, Float.class); } @Nullable public Float getAvgBallSpeed() { - return (Float) getFieldByNumber(88); + return getFieldByNumber(88, Float.class); } @Nullable public Float getAvgVerticalOscillation() { - return (Float) getFieldByNumber(89); + return getFieldByNumber(89, Float.class); } @Nullable public Float getAvgStanceTimePercent() { - return (Float) getFieldByNumber(90); + return getFieldByNumber(90, Float.class); } @Nullable public Float getAvgStanceTime() { - return (Float) getFieldByNumber(91); + return getFieldByNumber(91, Float.class); } @Nullable public Float getAvgFractionalCadence() { - return (Float) getFieldByNumber(92); + return getFieldByNumber(92, Float.class); } @Nullable public Float getMaxFractionalCadence() { - return (Float) getFieldByNumber(93); + return getFieldByNumber(93, Float.class); } @Nullable public Float getTotalFractionalCycles() { - return (Float) getFieldByNumber(94); + return getFieldByNumber(94, Float.class); } @Nullable public Number[] getAvgTotalHemoglobinConc() { - final Object object = getFieldByNumber(95); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(95, Number.class); } @Nullable public Number[] getMinTotalHemoglobinConc() { - final Object object = getFieldByNumber(96); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(96, Number.class); } @Nullable public Number[] getMaxTotalHemoglobinConc() { - final Object object = getFieldByNumber(97); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(97, Number.class); } @Nullable public Number[] getAvgSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(98); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(98, Number.class); } @Nullable public Number[] getMinSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(99); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(99, Number.class); } @Nullable public Number[] getMaxSaturatedHemoglobinPercent() { - final Object object = getFieldByNumber(100); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(100, Number.class); } @Nullable public Float getAvgLeftTorqueEffectiveness() { - return (Float) getFieldByNumber(101); + return getFieldByNumber(101, Float.class); } @Nullable public Float getAvgRightTorqueEffectiveness() { - return (Float) getFieldByNumber(102); + return getFieldByNumber(102, Float.class); } @Nullable public Float getAvgLeftPedalSmoothness() { - return (Float) getFieldByNumber(103); + return getFieldByNumber(103, Float.class); } @Nullable public Float getAvgRightPedalSmoothness() { - return (Float) getFieldByNumber(104); + return getFieldByNumber(104, Float.class); } @Nullable public Float getAvgCombinedPedalSmoothness() { - return (Float) getFieldByNumber(105); + return getFieldByNumber(105, Float.class); } @Nullable public Integer getFrontShifts() { - return (Integer) getFieldByNumber(107); + return getFieldByNumber(107, Integer.class); } @Nullable public Integer getRearShifts() { - return (Integer) getFieldByNumber(108); + return getFieldByNumber(108, Integer.class); } @Nullable public String getSportProfileName() { - return (String) getFieldByNumber(110); + return getFieldByNumber(110, String.class); } @Nullable public Integer getSportIndex() { - return (Integer) getFieldByNumber(111); + return getFieldByNumber(111, Integer.class); } @Nullable public Long getStandTime() { - return (Long) getFieldByNumber(112); + return getFieldByNumber(112, Long.class); } @Nullable public Integer getStandCount() { - return (Integer) getFieldByNumber(113); + return getFieldByNumber(113, Integer.class); } @Nullable public Integer getAvgLeftPco() { - return (Integer) getFieldByNumber(114); + return getFieldByNumber(114, Integer.class); } @Nullable public Integer getAvgRightPco() { - return (Integer) getFieldByNumber(115); + return getFieldByNumber(115, Integer.class); } @Nullable public Number[] getAvgLeftPowerPhase() { - final Object object = getFieldByNumber(116); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(116, Number.class); } @Nullable public Number[] getAvgLeftPowerPhasePeak() { - final Object object = getFieldByNumber(117); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(117, Number.class); } @Nullable public Number[] getAvgRightPowerPhase() { - final Object object = getFieldByNumber(118); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(118, Number.class); } @Nullable public Number[] getAvgRightPowerPhasePeak() { - final Object object = getFieldByNumber(119); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(119, Number.class); } @Nullable public Number[] getAvgPowerPosition() { - final Object object = getFieldByNumber(120); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(120, Number.class); } @Nullable public Number[] getMaxPowerPosition() { - final Object object = getFieldByNumber(121); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(121, Number.class); } @Nullable public Number[] getAvgCadencePosition() { - final Object object = getFieldByNumber(122); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(122, Number.class); } @Nullable public Number[] getMaxCadencePosition() { - final Object object = getFieldByNumber(123); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(123, Number.class); } @Nullable public Double getEnhancedAvgSpeed() { - return (Double) getFieldByNumber(124); + return getFieldByNumber(124, Double.class); } @Nullable public Double getEnhancedMaxSpeed() { - return (Double) getFieldByNumber(125); + return getFieldByNumber(125, Double.class); } @Nullable public Double getEnhancedAvgAltitude() { - return (Double) getFieldByNumber(126); + return getFieldByNumber(126, Double.class); } @Nullable public Double getEnhancedMinAltitude() { - return (Double) getFieldByNumber(127); + return getFieldByNumber(127, Double.class); } @Nullable public Double getEnhancedMaxAltitude() { - return (Double) getFieldByNumber(128); + return getFieldByNumber(128, Double.class); } @Nullable public Integer getAvgLevMotorPower() { - return (Integer) getFieldByNumber(129); + return getFieldByNumber(129, Integer.class); } @Nullable public Integer getMaxLevMotorPower() { - return (Integer) getFieldByNumber(130); + return getFieldByNumber(130, Integer.class); } @Nullable public Float getLevBatteryConsumption() { - return (Float) getFieldByNumber(131); + return getFieldByNumber(131, Float.class); } @Nullable public Float getAvgVerticalRatio() { - return (Float) getFieldByNumber(132); + return getFieldByNumber(132, Float.class); } @Nullable public Float getAvgStanceTimeBalance() { - return (Float) getFieldByNumber(133); + return getFieldByNumber(133, Float.class); } @Nullable public Float getAvgStepLength() { - return (Float) getFieldByNumber(134); + return getFieldByNumber(134, Float.class); } @Nullable public Float getTotalAnaerobicTrainingEffect() { - return (Float) getFieldByNumber(137); + return getFieldByNumber(137, Float.class); } @Nullable public Float getAvgVam() { - return (Float) getFieldByNumber(139); + return getFieldByNumber(139, Float.class); } @Nullable public Double getAvgDepth() { - return (Double) getFieldByNumber(140); + return getFieldByNumber(140, Double.class); } @Nullable public Double getMaxDepth() { - return (Double) getFieldByNumber(141); + return getFieldByNumber(141, Double.class); } @Nullable public Long getSurfaceInterval() { - return (Long) getFieldByNumber(142); + return getFieldByNumber(142, Long.class); } @Nullable public Integer getStartCns() { - return (Integer) getFieldByNumber(143); + return getFieldByNumber(143, Integer.class); } @Nullable public Integer getEndCns() { - return (Integer) getFieldByNumber(144); + return getFieldByNumber(144, Integer.class); } @Nullable public Integer getStartN2() { - return (Integer) getFieldByNumber(145); + return getFieldByNumber(145, Integer.class); } @Nullable public Integer getEndN2() { - return (Integer) getFieldByNumber(146); + return getFieldByNumber(146, Integer.class); } @Nullable public Integer getAvgRespirationRate() { - return (Integer) getFieldByNumber(147); + return getFieldByNumber(147, Integer.class); } @Nullable public Integer getMaxRespirationRate() { - return (Integer) getFieldByNumber(148); + return getFieldByNumber(148, Integer.class); } @Nullable public Integer getMinRespirationRate() { - return (Integer) getFieldByNumber(149); + return getFieldByNumber(149, Integer.class); } @Nullable public Integer getMinTemperature() { - return (Integer) getFieldByNumber(150); + return getFieldByNumber(150, Integer.class); } @Nullable public Integer getO2Toxicity() { - return (Integer) getFieldByNumber(155); + return getFieldByNumber(155, Integer.class); } @Nullable public Long getDiveNumber() { - return (Long) getFieldByNumber(156); + return getFieldByNumber(156, Long.class); } @Nullable public Double getTrainingLoadPeak() { - return (Double) getFieldByNumber(168); + return getFieldByNumber(168, Double.class); } @Nullable public Float getEnhancedAvgRespirationRate() { - return (Float) getFieldByNumber(169); + return getFieldByNumber(169, Float.class); } @Nullable public Float getEnhancedMaxRespirationRate() { - return (Float) getFieldByNumber(170); + return getFieldByNumber(170, Float.class); } @Nullable public Integer getCaloriesConsumed() { - return (Integer) getFieldByNumber(177); + return getFieldByNumber(177, Integer.class); } @Nullable public Integer getEstimatedSweatLoss() { - return (Integer) getFieldByNumber(178); + return getFieldByNumber(178, Integer.class); } @Nullable public Integer getFluidConsumed() { - return (Integer) getFieldByNumber(179); + return getFieldByNumber(179, Integer.class); } @Nullable public Float getEnhancedMinRespirationRate() { - return (Float) getFieldByNumber(180); + return getFieldByNumber(180, Float.class); } @Nullable public Float getTotalGrit() { - return (Float) getFieldByNumber(181); + return getFieldByNumber(181, Float.class); } @Nullable public Float getTotalFlow() { - return (Float) getFieldByNumber(182); + return getFieldByNumber(182, Float.class); } @Nullable public Integer getJumpCount() { - return (Integer) getFieldByNumber(183); + return getFieldByNumber(183, Integer.class); } @Nullable public Float getAvgGrit() { - return (Float) getFieldByNumber(186); + return getFieldByNumber(186, Float.class); } @Nullable public Float getAvgFlow() { - return (Float) getFieldByNumber(187); + return getFieldByNumber(187, Float.class); } @Nullable public Integer getPrimaryBenefit() { - return (Integer) getFieldByNumber(188); + return getFieldByNumber(188, Integer.class); } @Nullable public Integer getWorkoutFeel() { - return (Integer) getFieldByNumber(192); + return getFieldByNumber(192, Integer.class); } @Nullable public Integer getWorkoutRpe() { - return (Integer) getFieldByNumber(193); + return getFieldByNumber(193, Integer.class); } @Nullable public Integer getAvgSpo2() { - return (Integer) getFieldByNumber(194); + return getFieldByNumber(194, Integer.class); } @Nullable public Integer getAvgStress() { - return (Integer) getFieldByNumber(195); + return getFieldByNumber(195, Integer.class); } @Nullable public Integer getRestingCalories() { - return (Integer) getFieldByNumber(196); + return getFieldByNumber(196, Integer.class); } @Nullable public Integer getHrvSdrr() { - return (Integer) getFieldByNumber(197); + return getFieldByNumber(197, Integer.class); } @Nullable public Integer getHrvRmssd() { - return (Integer) getFieldByNumber(198); + return getFieldByNumber(198, Integer.class); } @Nullable public Float getTotalFractionalAscent() { - return (Float) getFieldByNumber(199); + return getFieldByNumber(199, Float.class); } @Nullable public Float getTotalFractionalDescent() { - return (Float) getFieldByNumber(200); + return getFieldByNumber(200, Float.class); } @Nullable public Long getBatteryGain() { - return (Long) getFieldByNumber(203); + return getFieldByNumber(203, Long.class); } @Nullable public Float getSolarIntensity() { - return (Float) getFieldByNumber(204); + return getFieldByNumber(204, Float.class); } @Nullable public Integer getBeginningPotential() { - return (Integer) getFieldByNumber(205); + return getFieldByNumber(205, Integer.class); } @Nullable public Integer getEndingPotential() { - return (Integer) getFieldByNumber(206); + return getFieldByNumber(206, Integer.class); } @Nullable public Integer getMinStamina() { - return (Integer) getFieldByNumber(207); + return getFieldByNumber(207, Integer.class); } @Nullable public Float getAvgCoreTemperature() { - return (Float) getFieldByNumber(208); + return getFieldByNumber(208, Float.class); } @Nullable public Float getMinCoreTemperature() { - return (Float) getFieldByNumber(209); + return getFieldByNumber(209, Float.class); } @Nullable public Float getMaxCoreTemperature() { - return (Float) getFieldByNumber(210); + return getFieldByNumber(210, Float.class); } @Nullable public Float getStepSpeedLoss() { - return (Float) getFieldByNumber(222); + return getFieldByNumber(222, Float.class); } @Nullable public Float getStepSpeedLossPercentage() { - return (Float) getFieldByNumber(223); + return getFieldByNumber(223, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSet.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSet.java index f8075c4f4a..d9023693ce 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSet.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSet.java @@ -42,79 +42,57 @@ public class FitSet extends RecordData { @Nullable public Double getDuration() { - return (Double) getFieldByNumber(0); + return getFieldByNumber(0, Double.class); } @Nullable public Integer getRepetitions() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Float getWeight() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Integer getSetType() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public ExerciseCategory[] getCategory() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new ExerciseCategory[]{(ExerciseCategory) object}; - } - final Object[] objectsArray = (Object[]) object; - final ExerciseCategory[] ret = new ExerciseCategory[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (ExerciseCategory) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, ExerciseCategory.class); } @Nullable public Number[] getCategorySubtype() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Integer getWeightDisplayUnit() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getWktStepIndex() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(254); + return getFieldByNumber(254, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempOvernight.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempOvernight.java index f298233394..dfe1c69315 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempOvernight.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempOvernight.java @@ -41,32 +41,32 @@ public class FitSkinTempOvernight extends RecordData { @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Float getAverageDeviation() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Float getAverage7DayDeviation() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Integer getUnk3() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Float getNightlyValue() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempRaw.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempRaw.java index 7f301d21af..22f69812e5 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempRaw.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSkinTempRaw.java @@ -41,12 +41,12 @@ public class FitSkinTempRaw extends RecordData { @Nullable public Float getDeviation() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSlaveDevice.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSlaveDevice.java index 226b543883..8bf37b025e 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSlaveDevice.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSlaveDevice.java @@ -41,12 +41,12 @@ public class FitSlaveDevice extends RecordData { @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getProduct() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataInfo.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataInfo.java index 57f6ee707a..3c38f22a7b 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataInfo.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataInfo.java @@ -41,32 +41,32 @@ public class FitSleepDataInfo extends RecordData { @Nullable public Integer getUnk0() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSampleLength() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Integer getUnk3() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public String getVersion() { - return (String) getFieldByNumber(4); + return getFieldByNumber(4, String.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataRaw.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataRaw.java index 79215d8aae..b93cbe434c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataRaw.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepDataRaw.java @@ -41,7 +41,7 @@ public class FitSleepDataRaw extends RecordData { @Nullable public Integer getBytes() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepSchedule.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepSchedule.java index 9a476e88c4..1605e5085f 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepSchedule.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepSchedule.java @@ -41,17 +41,17 @@ public class FitSleepSchedule extends RecordData { @Nullable public Long getBedTime() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Long getWakeTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStage.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStage.java index 1780eff46b..055717ce75 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStage.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStage.java @@ -42,12 +42,12 @@ public class FitSleepStage extends RecordData { @Nullable public SleepStage getSleepStage() { - return (SleepStage) getFieldByNumber(0); + return getFieldByNumber(0, SleepStage.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStats.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStats.java index 347a7b03f5..a466c0b675 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStats.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSleepStats.java @@ -41,87 +41,87 @@ public class FitSleepStats extends RecordData { @Nullable public Integer getCombinedAwakeScore() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getAwakeTimeScore() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getAwakeningsCountScore() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getDeepSleepScore() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getSleepDurationScore() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getLightSleepScore() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getOverallSleepScore() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getSleepQualityScore() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public Integer getSleepRecoveryScore() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getRemSleepScore() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getSleepRestlessnessScore() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getAwakeningsCount() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getUnk12() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Integer getUnk13() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getInterruptionsScore() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Float getAverageStressDuringSleep() { - return (Float) getFieldByNumber(15); + return getFieldByNumber(15, Float.class); } @Nullable public Integer getUnk16() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSoftware.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSoftware.java index 3ebea2ea67..e27739e4e6 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSoftware.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSoftware.java @@ -41,17 +41,17 @@ public class FitSoftware extends RecordData { @Nullable public Float getVersion() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public String getPartNumber() { - return (String) getFieldByNumber(5); + return getFieldByNumber(5, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpeedZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpeedZone.java index ede32266ab..9527683a1c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpeedZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpeedZone.java @@ -41,17 +41,17 @@ public class FitSpeedZone extends RecordData { @Nullable public Float getHighValue() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public String getName() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplit.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplit.java index 7aca315c58..2d6d6184f7 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplit.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplit.java @@ -41,97 +41,97 @@ public class FitSplit extends RecordData { @Nullable public Integer getSplitType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Double getTotalElapsedTime() { - return (Double) getFieldByNumber(1); + return getFieldByNumber(1, Double.class); } @Nullable public Double getTotalTimerTime() { - return (Double) getFieldByNumber(2); + return getFieldByNumber(2, Double.class); } @Nullable public Double getTotalDistance() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Double getAvgSpeed() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Long getStartTime() { - return (Long) getFieldByNumber(9); + return getFieldByNumber(9, Long.class); } @Nullable public Integer getTotalAscent() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getTotalDescent() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Double getStartPositionLat() { - return (Double) getFieldByNumber(21); + return getFieldByNumber(21, Double.class); } @Nullable public Double getStartPositionLong() { - return (Double) getFieldByNumber(22); + return getFieldByNumber(22, Double.class); } @Nullable public Double getEndPositionLat() { - return (Double) getFieldByNumber(23); + return getFieldByNumber(23, Double.class); } @Nullable public Double getEndPositionLong() { - return (Double) getFieldByNumber(24); + return getFieldByNumber(24, Double.class); } @Nullable public Double getMaxSpeed() { - return (Double) getFieldByNumber(25); + return getFieldByNumber(25, Double.class); } @Nullable public Double getAvgVertSpeed() { - return (Double) getFieldByNumber(26); + return getFieldByNumber(26, Double.class); } @Nullable public Long getEndTime() { - return (Long) getFieldByNumber(27); + return getFieldByNumber(27, Long.class); } @Nullable public Long getTotalCalories() { - return (Long) getFieldByNumber(28); + return getFieldByNumber(28, Long.class); } @Nullable public Double getStartElevation() { - return (Double) getFieldByNumber(74); + return getFieldByNumber(74, Double.class); } @Nullable public Double getTotalMovingTime() { - return (Double) getFieldByNumber(110); + return getFieldByNumber(110, Double.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplitSummary.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplitSummary.java index 802ae8011e..d98abd4028 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplitSummary.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSplitSummary.java @@ -41,77 +41,77 @@ public class FitSplitSummary extends RecordData { @Nullable public Integer getSplitType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getNumSplits() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Double getTotalTimerTime() { - return (Double) getFieldByNumber(4); + return getFieldByNumber(4, Double.class); } @Nullable public Double getTotalDistance() { - return (Double) getFieldByNumber(5); + return getFieldByNumber(5, Double.class); } @Nullable public Double getAvgSpeed() { - return (Double) getFieldByNumber(6); + return getFieldByNumber(6, Double.class); } @Nullable public Double getMaxSpeed() { - return (Double) getFieldByNumber(7); + return getFieldByNumber(7, Double.class); } @Nullable public Integer getTotalAscent() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getTotalDescent() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getAvgHeartRate() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Double getAvgVertSpeed() { - return (Double) getFieldByNumber(12); + return getFieldByNumber(12, Double.class); } @Nullable public Long getTotalCalories() { - return (Long) getFieldByNumber(13); + return getFieldByNumber(13, Long.class); } @Nullable public Double getTotalMovingTime() { - return (Double) getFieldByNumber(77); + return getFieldByNumber(77, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpo2.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpo2.java index df89cea9aa..f0bbdc89f4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpo2.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSpo2.java @@ -41,22 +41,22 @@ public class FitSpo2 extends RecordData { @Nullable public Integer getReadingSpo2() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getReadingConfidence() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getMode() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSport.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSport.java index 516425afa8..aeaccf3999 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSport.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitSport.java @@ -41,17 +41,17 @@ public class FitSport extends RecordData { @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(3); + return getFieldByNumber(3, String.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitStressLevel.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitStressLevel.java index 01dfede11e..ab54c6a338 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitStressLevel.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitStressLevel.java @@ -41,17 +41,17 @@ public class FitStressLevel extends RecordData { @Nullable public Integer getStressLevelValue() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getStressLevelTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Integer getBodyEnergy() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankSummary.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankSummary.java index df6c1f7048..29282fa925 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankSummary.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankSummary.java @@ -41,27 +41,27 @@ public class FitTankSummary extends RecordData { @Nullable public Long getSensor() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Float getStartPressure() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Float getEndPressure() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Double getVolumeUsed() { - return (Double) getFieldByNumber(3); + return getFieldByNumber(3, Double.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankUpdate.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankUpdate.java index 6ab374f860..39c5995688 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankUpdate.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTankUpdate.java @@ -41,17 +41,17 @@ public class FitTankUpdate extends RecordData { @Nullable public Long getSensor() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Float getPressure() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitThreeDSensorCalibration.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitThreeDSensorCalibration.java index 7ca889060f..76446fe379 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitThreeDSensorCalibration.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitThreeDSensorCalibration.java @@ -41,59 +41,37 @@ public class FitThreeDSensorCalibration extends RecordData { @Nullable public Integer getSensorType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getCalibrationFactor() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getCalibrationDivisor() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Long getLevelShift() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Number[] getOffsetCal() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getOrientationMatrix() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimeInZone.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimeInZone.java index df76a74c1e..be31e4d429 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimeInZone.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimeInZone.java @@ -41,175 +41,87 @@ public class FitTimeInZone extends RecordData { @Nullable public Integer getReferenceMessage() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getReferenceIndex() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Double[] getTimeInZone() { - final Object object = getFieldByNumber(2); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Double[]{(Double) object}; - } - final Object[] objectsArray = (Object[]) object; - final Double[] ret = new Double[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Double) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(2, Double.class); } @Nullable public Number[] getTimeInSpeedZone() { - final Object object = getFieldByNumber(3); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(3, Number.class); } @Nullable public Number[] getTimeInCadenceZone() { - final Object object = getFieldByNumber(4); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(4, Number.class); } @Nullable public Number[] getTimeInPowerZone() { - final Object object = getFieldByNumber(5); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(5, Number.class); } @Nullable public Integer[] getHrZoneHighBoundary() { - final Object object = getFieldByNumber(6); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Integer[]{(Integer) object}; - } - final Object[] objectsArray = (Object[]) object; - final Integer[] ret = new Integer[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Integer) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(6, Integer.class); } @Nullable public Number[] getSpeedZoneHighBoundary() { - final Object object = getFieldByNumber(7); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(7, Number.class); } @Nullable public Number[] getCadenceZoneHighBoundary() { - final Object object = getFieldByNumber(8); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(8, Number.class); } @Nullable public Number[] getPowerZoneHighBoundary() { - final Object object = getFieldByNumber(9); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(9, Number.class); } @Nullable public Integer getHrCalcType() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getRestingHeartRate() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Integer getThresholdHeartRate() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getPwrCalcType() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Integer getFunctionalThresholdPower() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimestampCorrelation.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimestampCorrelation.java index e934c32edc..1a13c68fbe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimestampCorrelation.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTimestampCorrelation.java @@ -41,37 +41,37 @@ public class FitTimestampCorrelation extends RecordData { @Nullable public Float getFractionalTimestamp() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Long getSystemTimestamp() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Float getFractionalSystemTimestamp() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Long getLocalTimestamp() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getSystemTimestampMs() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTotals.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTotals.java index cc54ea7fff..fd84b2c904 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTotals.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTotals.java @@ -41,57 +41,57 @@ public class FitTotals extends RecordData { @Nullable public Long getTimerTime() { - return (Long) getFieldByNumber(0); + return getFieldByNumber(0, Long.class); } @Nullable public Long getDistance() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getCalories() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getElapsedTime() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Integer getSessions() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Long getActiveTime() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Integer getSportIndex() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public String getActivityProfile() { - return (String) getFieldByNumber(10); + return getFieldByNumber(10, String.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingFile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingFile.java index fa30fd545c..c7c9e8af39 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingFile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingFile.java @@ -41,32 +41,32 @@ public class FitTrainingFile extends RecordData { @Nullable public Integer getType() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getManufacturer() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getProduct() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getSerialNumber() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Long getTimeCreated() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingLoad.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingLoad.java index 30e75434f3..2e426b71a4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingLoad.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingLoad.java @@ -41,17 +41,17 @@ public class FitTrainingLoad extends RecordData { @Nullable public Integer getTrainingLoadAcute() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getTrainingLoadChronic() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingSettings.java index a2c348f4ad..55263cfcb2 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitTrainingSettings.java @@ -41,22 +41,22 @@ public class FitTrainingSettings extends RecordData { @Nullable public Double getTargetDistance() { - return (Double) getFieldByNumber(31); + return getFieldByNumber(31, Double.class); } @Nullable public Float getTargetSpeed() { - return (Float) getFieldByNumber(32); + return getFieldByNumber(32, Float.class); } @Nullable public Long getTargetTime() { - return (Long) getFieldByNumber(33); + return getFieldByNumber(33, Long.class); } @Nullable public Double getPreciseTargetSpeed() { - return (Double) getFieldByNumber(153); + return getFieldByNumber(153, Double.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserMetrics.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserMetrics.java index e15497b83b..71a980a6df 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserMetrics.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserMetrics.java @@ -41,67 +41,67 @@ public class FitUserMetrics extends RecordData { @Nullable public Integer getVo2Max() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getAge() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Float getHeight() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Float getWeight() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Integer getGender() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Integer getMaxHr() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getRemainingRecoveryTime() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getInitialBodyBattery() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Long getStartOfActivity() { - return (Long) getFieldByNumber(16); + return getFieldByNumber(16, Long.class); } @Nullable public Integer getBeginningPotential() { - return (Integer) getFieldByNumber(32); + return getFieldByNumber(32, Integer.class); } @Nullable public Long getEndOfPreviousActivity() { - return (Long) getFieldByNumber(35); + return getFieldByNumber(35, Long.class); } @Nullable public Long getWakeUpTime() { - return (Long) getFieldByNumber(39); + return getFieldByNumber(39, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserProfile.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserProfile.java index 9d017ced4f..069c06617c 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserProfile.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitUserProfile.java @@ -43,178 +43,167 @@ public class FitUserProfile extends RecordData { @Nullable public String getFriendlyName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Integer getGender() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getAge() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getHeight() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Float getWeight() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Language getLanguage() { - return (Language) getFieldByNumber(5); + return getFieldByNumber(5, Language.class); } @Nullable public Type getElevSetting() { - return (Type) getFieldByNumber(6); + return getFieldByNumber(6, Type.class); } @Nullable public Type getWeightSetting() { - return (Type) getFieldByNumber(7); + return getFieldByNumber(7, Type.class); } @Nullable public Integer getRestingHeartRate() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Integer getDefaultMaxRunningHeartRate() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getDefaultMaxBikingHeartRate() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getDefaultMaxHeartRate() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getHrSetting() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Type getSpeedSetting() { - return (Type) getFieldByNumber(13); + return getFieldByNumber(13, Type.class); } @Nullable public Type getDistSetting() { - return (Type) getFieldByNumber(14); + return getFieldByNumber(14, Type.class); } @Nullable public Integer getPowerSetting() { - return (Integer) getFieldByNumber(16); + return getFieldByNumber(16, Integer.class); } @Nullable public Integer getActivityClass() { - return (Integer) getFieldByNumber(17); + return getFieldByNumber(17, Integer.class); } @Nullable public Integer getPositionSetting() { - return (Integer) getFieldByNumber(18); + return getFieldByNumber(18, Integer.class); } @Nullable public Type getTemperatureSetting() { - return (Type) getFieldByNumber(21); + return getFieldByNumber(21, Type.class); } @Nullable public Integer getLocalId() { - return (Integer) getFieldByNumber(22); + return getFieldByNumber(22, Integer.class); } @Nullable public Number[] getGlobalId() { - final Object object = getFieldByNumber(23); - if (object == null) - return null; - if (!object.getClass().isArray()) { - return new Number[]{(Number) object}; - } - final Object[] objectsArray = (Object[]) object; - final Number[] ret = new Number[objectsArray.length]; - for (int i = 0; i < objectsArray.length; i++) { - ret[i] = (Number) objectsArray[i]; - } - return ret; + return getArrayFieldByNumber(23, Number.class); } @Nullable public Integer getYearOfBirth() { - return (Integer) getFieldByNumber(24); + return getFieldByNumber(24, Integer.class); } @Nullable public Long getWakeTime() { - return (Long) getFieldByNumber(28); + return getFieldByNumber(28, Long.class); } @Nullable public Long getSleepTime() { - return (Long) getFieldByNumber(29); + return getFieldByNumber(29, Long.class); } @Nullable public Type getHeightSetting() { - return (Type) getFieldByNumber(30); + return getFieldByNumber(30, Type.class); } @Nullable public Integer getUserRunningStepLength() { - return (Integer) getFieldByNumber(31); + return getFieldByNumber(31, Integer.class); } @Nullable public Integer getUserWalkingStepLength() { - return (Integer) getFieldByNumber(32); + return getFieldByNumber(32, Integer.class); } @Nullable public Float getLtspeed() { - return (Float) getFieldByNumber(37); + return getFieldByNumber(37, Float.class); } @Nullable public Long getTimeLastLthrUpdate() { - return (Long) getFieldByNumber(41); + return getFieldByNumber(41, Long.class); } @Nullable public Type getDepthSetting() { - return (Type) getFieldByNumber(47); + return getFieldByNumber(47, Type.class); } @Nullable public Long getDiveCount() { - return (Long) getFieldByNumber(49); + return getFieldByNumber(49, Long.class); } @Nullable public Integer getGenderX() { - return (Integer) getFieldByNumber(62); + return getFieldByNumber(62, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideo.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideo.java index c6e01bb7c3..ed2eda2b93 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideo.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideo.java @@ -41,17 +41,17 @@ public class FitVideo extends RecordData { @Nullable public String getUrl() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public String getHostingProvider() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Long getDuration() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoClip.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoClip.java index 290f08a0fe..603ddf33a3 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoClip.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoClip.java @@ -41,37 +41,37 @@ public class FitVideoClip extends RecordData { @Nullable public Integer getClipNumber() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getStartTimestamp() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Integer getStartTimestampMs() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Long getEndTimestamp() { - return (Long) getFieldByNumber(3); + return getFieldByNumber(3, Long.class); } @Nullable public Integer getEndTimestampMs() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getClipStart() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Long getClipEnd() { - return (Long) getFieldByNumber(7); + return getFieldByNumber(7, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoDescription.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoDescription.java index fe7f2725a4..ab9a645e8d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoDescription.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoDescription.java @@ -41,17 +41,17 @@ public class FitVideoDescription extends RecordData { @Nullable public Integer getMessageCount() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public String getText() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoFrame.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoFrame.java index eea7cc7dcc..bb23edf82d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoFrame.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoFrame.java @@ -41,17 +41,17 @@ public class FitVideoFrame extends RecordData { @Nullable public Integer getTimestampMs() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Long getFrameNumber() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoTitle.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoTitle.java index d416412963..a53f064eb0 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoTitle.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitVideoTitle.java @@ -41,17 +41,17 @@ public class FitVideoTitle extends RecordData { @Nullable public Integer getMessageCount() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public String getText() { - return (String) getFieldByNumber(1); + return getFieldByNumber(1, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWatchfaceSettings.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWatchfaceSettings.java index d5ab16b4bc..aff4f9ab4a 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWatchfaceSettings.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWatchfaceSettings.java @@ -41,17 +41,17 @@ public class FitWatchfaceSettings extends RecordData { @Nullable public Integer getMode() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getLayout() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeather.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeather.java index da2d76c8c5..fd2a620e56 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeather.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeather.java @@ -46,97 +46,97 @@ public class FitWeather extends RecordData { @Nullable public Type getWeatherReport() { - return (Type) getFieldByNumber(0); + return getFieldByNumber(0, Type.class); } @Nullable public Integer getTemperature() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Condition getCondition() { - return (Condition) getFieldByNumber(2); + return getFieldByNumber(2, Condition.class); } @Nullable public Integer getWindDirection() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Float getWindSpeed() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Integer getPrecipitationProbability() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getTemperatureFeelsLike() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public Integer getRelativeHumidity() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public String getLocation() { - return (String) getFieldByNumber(8); + return getFieldByNumber(8, String.class); } @Nullable public Long getObservedAtTime() { - return (Long) getFieldByNumber(9); + return getFieldByNumber(9, Long.class); } @Nullable public Long getObservedLocationLat() { - return (Long) getFieldByNumber(10); + return getFieldByNumber(10, Long.class); } @Nullable public Long getObservedLocationLong() { - return (Long) getFieldByNumber(11); + return getFieldByNumber(11, Long.class); } @Nullable public DayOfWeek getDayOfWeek() { - return (DayOfWeek) getFieldByNumber(12); + return getFieldByNumber(12, DayOfWeek.class); } @Nullable public Integer getHighTemperature() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getLowTemperature() { - return (Integer) getFieldByNumber(14); + return getFieldByNumber(14, Integer.class); } @Nullable public Integer getDewPoint() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public Float getUvIndex() { - return (Float) getFieldByNumber(16); + return getFieldByNumber(16, Float.class); } @Nullable public AQI_LEVELS getAirQuality() { - return (AQI_LEVELS) getFieldByNumber(17); + return getFieldByNumber(17, AQI_LEVELS.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeatherAlert.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeatherAlert.java index cdd58b7e2f..b5487fcd21 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeatherAlert.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeatherAlert.java @@ -41,32 +41,32 @@ public class FitWeatherAlert extends RecordData { @Nullable public String getReportId() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Long getIssueTime() { - return (Long) getFieldByNumber(1); + return getFieldByNumber(1, Long.class); } @Nullable public Long getExpireTime() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Integer getSeverity() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getType() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeightScale.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeightScale.java index bb7905bb5c..db76e316b4 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeightScale.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWeightScale.java @@ -41,72 +41,72 @@ public class FitWeightScale extends RecordData { @Nullable public Float getWeight() { - return (Float) getFieldByNumber(0); + return getFieldByNumber(0, Float.class); } @Nullable public Float getPercentFat() { - return (Float) getFieldByNumber(1); + return getFieldByNumber(1, Float.class); } @Nullable public Float getPercentHydration() { - return (Float) getFieldByNumber(2); + return getFieldByNumber(2, Float.class); } @Nullable public Float getVisceralFatMass() { - return (Float) getFieldByNumber(3); + return getFieldByNumber(3, Float.class); } @Nullable public Float getBoneMass() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Float getMuscleMass() { - return (Float) getFieldByNumber(5); + return getFieldByNumber(5, Float.class); } @Nullable public Float getBasalMet() { - return (Float) getFieldByNumber(7); + return getFieldByNumber(7, Float.class); } @Nullable public Integer getPhysiqueRating() { - return (Integer) getFieldByNumber(8); + return getFieldByNumber(8, Integer.class); } @Nullable public Float getActiveMet() { - return (Float) getFieldByNumber(9); + return getFieldByNumber(9, Float.class); } @Nullable public Integer getMetabolicAge() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getVisceralFatRating() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Integer getUserProfileIndex() { - return (Integer) getFieldByNumber(12); + return getFieldByNumber(12, Integer.class); } @Nullable public Float getBmi() { - return (Float) getFieldByNumber(13); + return getFieldByNumber(13, Float.class); } @Nullable public Long getTimestamp() { - return (Long) getFieldByNumber(253); + return getFieldByNumber(253, Long.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkout.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkout.java index f4d9f6c101..16f61a2241 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkout.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkout.java @@ -41,47 +41,47 @@ public class FitWorkout extends RecordData { @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(4); + return getFieldByNumber(4, Integer.class); } @Nullable public Long getCapabilities() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Integer getNumValidSteps() { - return (Integer) getFieldByNumber(6); + return getFieldByNumber(6, Integer.class); } @Nullable public String getName() { - return (String) getFieldByNumber(8); + return getFieldByNumber(8, String.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Float getPoolLength() { - return (Float) getFieldByNumber(14); + return getFieldByNumber(14, Float.class); } @Nullable public Integer getPoolLengthUnit() { - return (Integer) getFieldByNumber(15); + return getFieldByNumber(15, Integer.class); } @Nullable public String getNotes() { - return (String) getFieldByNumber(17); + return getFieldByNumber(17, String.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutSession.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutSession.java index 3aadc798db..e1b7493130 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutSession.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutSession.java @@ -41,37 +41,37 @@ public class FitWorkoutSession extends RecordData { @Nullable public Integer getSport() { - return (Integer) getFieldByNumber(0); + return getFieldByNumber(0, Integer.class); } @Nullable public Integer getSubSport() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getNumValidSteps() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getFirstStepIndex() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Float getPoolLength() { - return (Float) getFieldByNumber(4); + return getFieldByNumber(4, Float.class); } @Nullable public Integer getPoolLengthUnit() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutStep.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutStep.java index 9b84f8c67a..9b4a96c90d 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutStep.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitWorkoutStep.java @@ -41,97 +41,97 @@ public class FitWorkoutStep extends RecordData { @Nullable public String getWktStepName() { - return (String) getFieldByNumber(0); + return getFieldByNumber(0, String.class); } @Nullable public Integer getDurationType() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Long getDurationValue() { - return (Long) getFieldByNumber(2); + return getFieldByNumber(2, Long.class); } @Nullable public Integer getTargetType() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Long getTargetValue() { - return (Long) getFieldByNumber(4); + return getFieldByNumber(4, Long.class); } @Nullable public Long getCustomTargetValueLow() { - return (Long) getFieldByNumber(5); + return getFieldByNumber(5, Long.class); } @Nullable public Long getCustomTargetValueHigh() { - return (Long) getFieldByNumber(6); + return getFieldByNumber(6, Long.class); } @Nullable public Integer getIntensity() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } @Nullable public String getNotes() { - return (String) getFieldByNumber(8); + return getFieldByNumber(8, String.class); } @Nullable public Integer getEquipment() { - return (Integer) getFieldByNumber(9); + return getFieldByNumber(9, Integer.class); } @Nullable public Integer getExerciseCategory() { - return (Integer) getFieldByNumber(10); + return getFieldByNumber(10, Integer.class); } @Nullable public Integer getExerciseName() { - return (Integer) getFieldByNumber(11); + return getFieldByNumber(11, Integer.class); } @Nullable public Float getExerciseWeight() { - return (Float) getFieldByNumber(12); + return getFieldByNumber(12, Float.class); } @Nullable public Integer getWeightDisplayUnit() { - return (Integer) getFieldByNumber(13); + return getFieldByNumber(13, Integer.class); } @Nullable public Integer getSecondaryTargetType() { - return (Integer) getFieldByNumber(19); + return getFieldByNumber(19, Integer.class); } @Nullable public Long getSecondaryTargetValue() { - return (Long) getFieldByNumber(20); + return getFieldByNumber(20, Long.class); } @Nullable public Long getSecondaryCustomTargetValueLow() { - return (Long) getFieldByNumber(21); + return getFieldByNumber(21, Long.class); } @Nullable public Long getSecondaryCustomTargetValueHigh() { - return (Long) getFieldByNumber(22); + return getFieldByNumber(22, Long.class); } @Nullable public Integer getMessageIndex() { - return (Integer) getFieldByNumber(254); + return getFieldByNumber(254, Integer.class); } /** diff --git a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitZonesTarget.java b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitZonesTarget.java index dbf0029ece..47c0aecdbe 100644 --- a/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitZonesTarget.java +++ b/app/src/main/java/nodomain/freeyourgadget/gadgetbridge/service/devices/garmin/fit/messages/FitZonesTarget.java @@ -41,27 +41,27 @@ public class FitZonesTarget extends RecordData { @Nullable public Integer getFunctionalThresholdPower() { - return (Integer) getFieldByNumber(3); + return getFieldByNumber(3, Integer.class); } @Nullable public Integer getMaxHeartRate() { - return (Integer) getFieldByNumber(1); + return getFieldByNumber(1, Integer.class); } @Nullable public Integer getThresholdHeartRate() { - return (Integer) getFieldByNumber(2); + return getFieldByNumber(2, Integer.class); } @Nullable public Integer getHrCalcType() { - return (Integer) getFieldByNumber(5); + return getFieldByNumber(5, Integer.class); } @Nullable public Integer getPwrCalcType() { - return (Integer) getFieldByNumber(7); + return getFieldByNumber(7, Integer.class); } /**