From e9ee1134408429b6d0051156279577c114c17404 Mon Sep 17 00:00:00 2001 From: chenson42 Date: Tue, 12 Aug 2014 16:31:23 +0000 Subject: [PATCH] 0001906: parameter edit screen doesn't show configured parameters when using views other than ALL --- .../symmetric/service/IParameterService.java | 4 +++- .../symmetric/service/impl/ParameterService.java | 14 +++++++++++--- .../service/impl/ParameterServiceSqlMap.java | 7 +++++++ .../service/impl/MockParameterService.java | 4 ++++ 4 files changed, 25 insertions(+), 4 deletions(-) diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/IParameterService.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/IParameterService.java index 86fe262f44..c850d5dc6b 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/IParameterService.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/IParameterService.java @@ -25,7 +25,7 @@ import java.util.Date; import java.util.List; import java.util.Map; - + import org.jumpmind.properties.TypedProperties; import org.jumpmind.symmetric.config.IParameterFilter; import org.jumpmind.symmetric.model.DatabaseParameter; @@ -70,6 +70,8 @@ public interface IParameterService { public List getDatabaseParametersFor(String paramKey); public TypedProperties getDatabaseParametersByNodeGroupId(String nodeGroupId); + + public TypedProperties getDatabaseParametersByExternalId(String externalId); public TypedProperties getAllParameters(); diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterService.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterService.java index c90384edde..616a9831dd 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterService.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterService.java @@ -114,8 +114,12 @@ public void saveParameters(String externalId, String nodeGroupId, Map() { + sqlTemplate.query(sql.getSql(sqlKey), new ISqlRowMapper() { public Object mapRow(Row row) { String value = row.getString("param_value"); if (value != null) { @@ -123,7 +127,7 @@ public Object mapRow(Row row) { } return row; } - }, externalId, nodeGroupId); + }, values); return properties; } @@ -146,7 +150,11 @@ public List getDatabaseParametersFor(String paramKey) { } public TypedProperties getDatabaseParametersByNodeGroupId(String nodeGroupId) { - return rereadDatabaseParameters(ParameterConstants.ALL, nodeGroupId); + return readParametersFromDatabase("selectParametersByNodeGroupIdSql", nodeGroupId); + } + + public TypedProperties getDatabaseParametersByExternalId(String externalId) { + return readParametersFromDatabase("selectParametersByExternalIdSql", externalId); } class DatabaseParameterMapper implements ISqlRowMapper { diff --git a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterServiceSqlMap.java b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterServiceSqlMap.java index f92b26c1fc..ac3c559d27 100644 --- a/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterServiceSqlMap.java +++ b/symmetric-core/src/main/java/org/jumpmind/symmetric/service/impl/ParameterServiceSqlMap.java @@ -40,6 +40,13 @@ public ParameterServiceSqlMap(IDatabasePlatform platform, Map re putSql("selectParametersSql" ,"" + "select param_key, param_value from $(parameter) where external_id=? and " + " node_group_id=? " ); + + putSql("selectParametersByNodeGroupIdSql" ,"" + +"select param_key, param_value from $(parameter) where " + +" node_group_id=? " ); + + putSql("selectParametersByExternalIdSql" ,"" + +"select param_key, param_value from $(parameter) where external_id=? " ); putSql("selectParametersByKeySql" ,"" + "select param_key, param_value, external_id, node_group_id from $(parameter) where param_key=? " + diff --git a/symmetric-core/src/test/java/org/jumpmind/symmetric/service/impl/MockParameterService.java b/symmetric-core/src/test/java/org/jumpmind/symmetric/service/impl/MockParameterService.java index a3dc0e1fa2..08adab20b6 100644 --- a/symmetric-core/src/test/java/org/jumpmind/symmetric/service/impl/MockParameterService.java +++ b/symmetric-core/src/test/java/org/jumpmind/symmetric/service/impl/MockParameterService.java @@ -95,5 +95,9 @@ protected TypedProperties rereadDatabaseParameters(String externalId, String nod return new TypedProperties(properties); } + @Override + public TypedProperties getDatabaseParametersByExternalId(String externalId) { + return null; + } }