This is an automated email from the git hooks/post-receive script. New commit to branch develop in repository observe. See http://git.codelutin.com/observe.git commit ab4e4575476e3606b81306bf6ddae5afe4bd1394 Author: Tony CHEMIT <chemit@codelutin.com> Date: Fri May 22 20:23:05 2015 +0200 permettre d'utiliser des valeurs de variables non String (refs #7137) --- .../main/java/fr/ird/observe/report/model/ReportExecute.java | 12 ++++++------ .../java/fr/ird/observe/report/model/ReportOperation.java | 2 +- .../main/java/fr/ird/observe/report/model/ReportRequest.java | 10 +++++----- .../ird/observe/report/model/operations/ExecuteRequests.java | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/observe-business/src/main/java/fr/ird/observe/report/model/ReportExecute.java b/observe-business/src/main/java/fr/ird/observe/report/model/ReportExecute.java index 559f20f..83f5983 100644 --- a/observe-business/src/main/java/fr/ird/observe/report/model/ReportExecute.java +++ b/observe-business/src/main/java/fr/ird/observe/report/model/ReportExecute.java @@ -98,7 +98,7 @@ public class ReportExecute { doPopulateVariables(tripId); } - public DataMatrix execute(Map<String, String> variables) throws DataSourceException, TopiaException { + public DataMatrix execute(Map<String, Object> variables) throws DataSourceException, TopiaException { if (report == null) { @@ -172,7 +172,7 @@ public class ReportExecute { } } - public boolean canExecute(Map<String, String> variables) { + public boolean canExecute(Map<String, Object> variables) { // il faut un report non null if (report == null) { @@ -196,8 +196,8 @@ public class ReportExecute { } // et que sa valeur n'est pas null (ou vide) - String variableValue = variables.get(name); - if (StringUtils.isEmpty(variableValue)) { + Object variableValue = variables.get(name); + if (variableValue==null || StringUtils.isEmpty(variableValue.toString())) { if (log.isInfoEnabled()) { log.info("variable " + name + " is empty or null"); @@ -236,7 +236,7 @@ public class ReportExecute { TopiaContext tx = source.beginTransaction(txName); try { - Map<String, String> vars = new TreeMap<String, String>(); + Map<String, Object> vars = new TreeMap<String, Object>(); vars.put(TRIP_ID_VARIABLE, tripId); for (ReportVariable variable : report.getVariables()) { String hql = variable.getRequest(); @@ -249,7 +249,7 @@ public class ReportExecute { } } - protected void doPopulateRepeatVariables(Map<String, String> variables) throws DataSourceException, TopiaException { + protected void doPopulateRepeatVariables(Map<String, Object> variables) throws DataSourceException, TopiaException { // on nettoye les univers de variables de répétition avant tout repeatVariablesUniverse.clear(); diff --git a/observe-business/src/main/java/fr/ird/observe/report/model/ReportOperation.java b/observe-business/src/main/java/fr/ird/observe/report/model/ReportOperation.java index 7434091..24041f3 100644 --- a/observe-business/src/main/java/fr/ird/observe/report/model/ReportOperation.java +++ b/observe-business/src/main/java/fr/ird/observe/report/model/ReportOperation.java @@ -81,7 +81,7 @@ public abstract class ReportOperation implements Serializable { public abstract DataMatrix execute(TopiaContext tx, Report model, DataMatrix incoming, - Map<String, String> variables, + Map<String, Object> variables, Map<String, List<?>> repeatVariablesUniverse ) throws TopiaException; diff --git a/observe-business/src/main/java/fr/ird/observe/report/model/ReportRequest.java b/observe-business/src/main/java/fr/ird/observe/report/model/ReportRequest.java index dbb0802..705daa6 100644 --- a/observe-business/src/main/java/fr/ird/observe/report/model/ReportRequest.java +++ b/observe-business/src/main/java/fr/ird/observe/report/model/ReportRequest.java @@ -135,12 +135,12 @@ public class ReportRequest implements Serializable { } public DataMatrix execute(TopiaContext tx, - Map<String, String> params, + Map<String, Object> params, List<?> repeatValues) throws TopiaException { DataMatrix result = new DataMatrix(); for (Object repeatValue : repeatValues) { - params.put(repeat.getVariableName(), repeatValue + ""); + params.put(repeat.getVariableName(), repeatValue); DataMatrix tmp = execute(tx, params); if (result == null) { @@ -178,7 +178,7 @@ public class ReportRequest implements Serializable { } public DataMatrix execute(TopiaContext tx, - Map<String, String> params) throws TopiaException { + Map<String, Object> params) throws TopiaException { // création des paramètres : couples (key, value) Object[] datas = getParams(request, params); @@ -337,7 +337,7 @@ public class ReportRequest implements Serializable { return new Dimension(width, height); } - public static Object[] getParams(String request, Map<String, String> params) { + public static Object[] getParams(String request, Map<String, Object> params) { // on parcourt la liste de tous les paramètres pour savoir si on doit // les inclure pour la requête donnée : @@ -350,7 +350,7 @@ public class ReportRequest implements Serializable { Object[] datas = new Object[namesToUsed.size() * 2]; int index = 0; for (String name : namesToUsed) { - String value = params.get(name); + Object value = params.get(name); datas[index * 2] = name; datas[index * 2 + 1] = value; index++; diff --git a/observe-business/src/main/java/fr/ird/observe/report/model/operations/ExecuteRequests.java b/observe-business/src/main/java/fr/ird/observe/report/model/operations/ExecuteRequests.java index 3ed0839..07bb21d 100644 --- a/observe-business/src/main/java/fr/ird/observe/report/model/operations/ExecuteRequests.java +++ b/observe-business/src/main/java/fr/ird/observe/report/model/operations/ExecuteRequests.java @@ -64,7 +64,7 @@ public class ExecuteRequests extends ReportOperation { public DataMatrix execute(TopiaContext tx, Report report, DataMatrix incoming, - Map<String, String> variables, + Map<String, Object> variables, Map<String, List<?>> repeatVariablesUniverse) throws TopiaException { if (log.isDebugEnabled()) { -- To stop receiving notification emails like this one, please contact codelutin.com SCM administrator <admin+scm@list.forge.codelutin.com>.