aboutsummaryrefslogtreecommitdiff
path: root/id/moa-id-webgui/src/main/java
diff options
context:
space:
mode:
Diffstat (limited to 'id/moa-id-webgui/src/main/java')
-rw-r--r--id/moa-id-webgui/src/main/java/at/gv/egovernment/moa/id/config/webgui/validation/task/impl/GeneralMOAIDConfigurationTask.java48
1 files changed, 34 insertions, 14 deletions
diff --git a/id/moa-id-webgui/src/main/java/at/gv/egovernment/moa/id/config/webgui/validation/task/impl/GeneralMOAIDConfigurationTask.java b/id/moa-id-webgui/src/main/java/at/gv/egovernment/moa/id/config/webgui/validation/task/impl/GeneralMOAIDConfigurationTask.java
index 0e9411042..616d9f0f4 100644
--- a/id/moa-id-webgui/src/main/java/at/gv/egovernment/moa/id/config/webgui/validation/task/impl/GeneralMOAIDConfigurationTask.java
+++ b/id/moa-id-webgui/src/main/java/at/gv/egovernment/moa/id/config/webgui/validation/task/impl/GeneralMOAIDConfigurationTask.java
@@ -115,13 +115,16 @@ public class GeneralMOAIDConfigurationTask extends AbstractTaskValidator impleme
check = input.get(KeyValueUtils.removePrefixFromKey(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX, getKeyPrefix()));
if (MiscUtil.isNotEmpty(check)) {
- if (!ValidationHelper.validateURL(check)) {
- log.info("Public URL Prefix is not valid");
- errors.add(new ValidationObjectIdentifier(
- MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX,
- "Public URL Prefix",
- LanguageHelper.getErrorString("validation.general.publicURLprefix.valid")));
- }
+ String[] preFixList = check.split(",");
+ for (String el : preFixList) {
+ if (!ValidationHelper.validateURL(el)) {
+ log.info("Public URL Prefix is not valid");
+ errors.add(new ValidationObjectIdentifier(
+ MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX,
+ "Public URL Prefix",
+ LanguageHelper.getErrorString("validation.general.publicURLprefix.valid", new Object[]{el})));
+ }
+ }
} else {
log.info("PublicURL Prefix is empty.");
errors.add(new ValidationObjectIdentifier(
@@ -511,15 +514,32 @@ public class GeneralMOAIDConfigurationTask extends AbstractTaskValidator impleme
Map<String, String> newConfigValues = new HashMap<String, String>();
- String pubURLPrefix = input.get(KeyValueUtils.removePrefixFromKey(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX, getKeyPrefix()));
- if(pubURLPrefix.endsWith("/")) {
- int length = pubURLPrefix.length();
- pubURLPrefix = pubURLPrefix.substring(0, length-1);
- newConfigValues.put(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX, pubURLPrefix);
+ String pubURLPrefix = input.get(KeyValueUtils.removePrefixFromKey(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX, getKeyPrefix()));
+ String normalizedPubURLPrefix = KeyValueUtils.normalizeCSVValueString(pubURLPrefix);
+ String[] normalizedPubURLPrefixList = normalizedPubURLPrefix.split(",");
+ String modifiedPubURLPrefixCSV = null;
+
+ for (String el : normalizedPubURLPrefixList) {
+ String newPubURLPrefix = el;
+ if(el.endsWith("/")) {
+ int length = el.length();
+ newPubURLPrefix = el.substring(0, length-1);
+ }
+
+ if (modifiedPubURLPrefixCSV == null)
+ modifiedPubURLPrefixCSV = newPubURLPrefix;
+ else
+ modifiedPubURLPrefixCSV += "," + newPubURLPrefix;
+
+ }
+
+ if (!modifiedPubURLPrefixCSV.equals(pubURLPrefix)) {
+ newConfigValues.put(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX, modifiedPubURLPrefixCSV);
log.debug("Change key: " + MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX
+ " from value: " + input.get(MOAIDConfigurationConstants.GENERAL_PUBLICURLPREFIX)
- + " to value: " + pubURLPrefix);
- }
+ + " to value: " + modifiedPubURLPrefixCSV);
+ }
+
String ssoTarget = input.get(KeyValueUtils.removePrefixFromKey(MOAIDConfigurationConstants.GENERAL_AUTH_SSO_TARGET, getKeyPrefix()));
if (MiscUtil.isNotEmpty(ssoTarget)) {