From 71afde90ef2263236e958761d0555c1753512292 Mon Sep 17 00:00:00 2001 From: Gino Tosti <gino.tosti@unipg.it> Date: Thu, 24 Jun 2021 13:16:43 +0200 Subject: [PATCH] added check on set input values --- templates/BaseJavaIDL.tmpl | 21 ++++++++++++++++++++- templates/CDBInstance.tmpl | 3 ++- test/myDeviceInterfaces.xls | Bin 0 -> 42496 bytes 3 files changed, 22 insertions(+), 2 deletions(-) create mode 100755 test/myDeviceInterfaces.xls diff --git a/templates/BaseJavaIDL.tmpl b/templates/BaseJavaIDL.tmpl index 4ea7de1..ffee13e 100644 --- a/templates/BaseJavaIDL.tmpl +++ b/templates/BaseJavaIDL.tmpl @@ -416,7 +416,26 @@ public class ${Assembly}BaseImpl extends TCSHardwareDeviceImpl implements ${Asse } @Override public void ${x.SetSheet["Name of command"][$idx]}($($y[$type][4]) arg0) throws IllegalParameterErrorEx,INACTErrorEx { - baciH.set$(($y[$type][4]).capitalize())ValSync(${x.SetSheet["Short name"][$idx]},arg0); +#if str($x.SetSheet["Alarm high"][$idx]) !="nan" and str($x.SetSheet["Alarm high"][$idx]).strip() !="NA" and str($x.SetSheet["Alarm high"][$idx]).strip() !="" and $y[$type][1] != "S" + #if $type[0]=="I" or $type[0]=="U" + $y[$type][4] maxval=str($x.SetSheet["Alarm high"][$idx]).split(".")[0]; + #else + $y[$type][4] maxval=$x.SetSheet["Alarm high"][$idx]; + #end if + #end if +#if str($x.SetSheet["Alarm low"][$idx]).strip() !="nan" and str($x.SetSheet["Alarm low"][$idx]).strip() !="NA" and str($x.SetSheet["Alarm low"][$idx]).strip() !="" and $y[$type][1] != "S" +#if $type[0]=="I" or $type[0]=="U" + $y[$type][4] minval=str($x.SetSheet["Alarm low"][$idx]).split(".")[0]; +#else + $y[$type][4] minval=$x.SetSheet["Alarm low"][$idx]; +#end if +#end if + if (arg0>=minval && arg0<=maxval){ + baciH.set$(($y[$type][4]).capitalize())ValSync(${x.SetSheet["Short name"][$idx]},arg0); + } else { + m_logger.log(Level.SEVERE, "Value outside range for:"+"$x.SetSheet["Short name"][$idx]"); + throws new IllegalParameterErrorEx(); + } } #end if diff --git a/templates/CDBInstance.tmpl b/templates/CDBInstance.tmpl index 525cd2f..0b0dfe2 100644 --- a/templates/CDBInstance.tmpl +++ b/templates/CDBInstance.tmpl @@ -107,8 +107,9 @@ #else units="" #end if + min_timer_trig="0" - #if $y[$type][1] != 's' + #if $y[$type][1] != "S" min_delta_trig="0" min_step="1" #end if diff --git a/test/myDeviceInterfaces.xls b/test/myDeviceInterfaces.xls new file mode 100755 index 0000000000000000000000000000000000000000..e4347e05c0609eed8c8488035519464e57c5a5a2 GIT binary patch literal 42496 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 GEdc-^YCwtr literal 0 HcmV?d00001 -- GitLab