Skip to content
Snippets Groups Projects
Commit 0bbaefec authored by Raphael GIRARDOT's avatar Raphael GIRARDOT
Browse files

better unsigned values management (TANGOARCH-897)

parent bb748829
No related branches found
No related tags found
No related merge requests found
......@@ -25,6 +25,7 @@ import fr.soleil.lib.project.math.ArrayUtils;
import fr.soleil.lib.project.math.MathConst;
import fr.soleil.lib.project.math.NumberArrayUtils;
import fr.soleil.lib.project.math.NumberMatrixUtils;
import fr.soleil.lib.project.math.UnsignedConverter;
import fr.soleil.tango.archiving.config.AttributeConfig;
import fr.soleil.tango.archiving.event.select.AttributeValue;
import fr.soleil.tango.archiving.event.select.AttributeValueSeries;
......@@ -71,13 +72,12 @@ public class ExtractionUtils {
} else {
StringBuilder builder = new StringBuilder();
short factor = samplingType.hasAdditionalFiltering() ? samplingType.getAdditionalFilteringFactor() : 1;
// TODO TTS quotes should be added by API, not by mambo
builder.append('\'').append(factor);
builder.append(factor);
builder.append(' ').append(samplingType.getLabel().toLowerCase());
if ((factor == 1) && (builder.charAt(builder.length() - 1) == 's')) {
builder.deleteCharAt(builder.length() - 1);
}
period = builder.append('\'').toString();
period = builder.toString();
builder.delete(0, builder.length());
}
return period;
......@@ -295,6 +295,12 @@ public class ExtractionUtils {
}
}
}
switch (dataType) {
case TangoConst.Tango_DEV_USHORT:
case TangoConst.Tango_DEV_UCHAR:
case TangoConst.Tango_DEV_ULONG:
value = UnsignedConverter.convertUnsigned(value);
}
data.setValue(value, nullElements);
dataList.add(data);
}
......@@ -415,6 +421,12 @@ public class ExtractionUtils {
value = null;
break;
}
switch (dataType) {
case TangoConst.Tango_DEV_USHORT:
case TangoConst.Tango_DEV_UCHAR:
case TangoConst.Tango_DEV_ULONG:
value = UnsignedConverter.convertUnsigned(value);
}
} // end if (extracted == null) ... else
data.setValue(value, nullElements);
dataList.add(data);
......@@ -563,6 +575,12 @@ public class ExtractionUtils {
value = null;
break;
}
switch (dataType) {
case TangoConst.Tango_DEV_USHORT:
case TangoConst.Tango_DEV_UCHAR:
case TangoConst.Tango_DEV_ULONG:
value = UnsignedConverter.convertUnsigned(value);
}
} else {
data = DbData.initNullableTimedData(dataType, date, 1, 1);
nullElements = initNullElementsForNullImageValue();
......
......@@ -45,23 +45,29 @@ public class ImageTableModel extends DefaultTableModel {
if (value != null) {
switch (data_type) {
case TangoConst.Tango_DEV_CHAR:
case TangoConst.Tango_DEV_UCHAR:
if (((byte[][]) value).length != 0 && ((byte[][]) value)[0].length != 0) {
return ((byte[][]) value).length;
}
break;
case TangoConst.Tango_DEV_UCHAR:
case TangoConst.Tango_DEV_SHORT:
case TangoConst.Tango_DEV_USHORT:
if (((short[][]) value).length != 0 && ((short[][]) value)[0].length != 0) {
return ((short[][]) value).length;
}
break;
case TangoConst.Tango_DEV_USHORT:
case TangoConst.Tango_DEV_LONG:
case TangoConst.Tango_DEV_ULONG:
if (((int[][]) value).length != 0 && ((int[][]) value)[0].length != 0) {
return ((int[][]) value).length;
}
break;
case TangoConst.Tango_DEV_ULONG:
case TangoConst.Tango_DEV_LONG64:
case TangoConst.Tango_DEV_ULONG64:
if (((long[][]) value).length != 0 && ((long[][]) value)[0].length != 0) {
return ((long[][]) value).length;
}
break;
case TangoConst.Tango_DEV_FLOAT:
if (((float[][]) value).length != 0 && ((float[][]) value)[0].length != 0) {
return ((float[][]) value).length;
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment