aboutsummaryrefslogtreecommitdiff
path: root/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java
diff options
context:
space:
mode:
Diffstat (limited to 'id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java')
-rw-r--r--id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java47
1 files changed, 37 insertions, 10 deletions
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java
index 7ecd7dde8..e6e77911a 100644
--- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java
+++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/legacy/BuildFromLegacyConfig.java
@@ -28,6 +28,9 @@ import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import java.math.BigInteger;
+import java.net.URI;
+import java.net.URL;
+import java.nio.file.Path;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
@@ -55,6 +58,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.MOAIDConfiguration;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOAKeyBoxSelector;
import at.gv.egovernment.moa.id.commons.db.dao.config.MOASP;
import at.gv.egovernment.moa.id.commons.db.dao.config.Mandates;
+import at.gv.egovernment.moa.id.commons.db.dao.config.MandatesProfileNameItem;
import at.gv.egovernment.moa.id.commons.db.dao.config.OAPVP2;
import at.gv.egovernment.moa.id.commons.db.dao.config.OASAML1;
import at.gv.egovernment.moa.id.commons.db.dao.config.OASSO;
@@ -83,6 +87,7 @@ import at.gv.egovernment.moa.id.data.IssuerAndSerial;
import at.gv.egovernment.moa.logging.Logger;
import at.gv.egovernment.moa.util.Base64Utils;
import at.gv.egovernment.moa.util.DOMUtils;
+import at.gv.egovernment.moa.util.FileUtils;
import at.gv.egovernment.moa.util.MiscUtil;
public class BuildFromLegacyConfig {
@@ -237,7 +242,10 @@ public class BuildFromLegacyConfig {
for (int i=0; i<transformsInfos.length; i++) {
TransformsInfoType transforminfotype = new TransformsInfoType();
- transforminfotype.setFilename(transformsInfoFileNames[i]);
+
+ String fileURL = FileUtils.makeAbsoluteURL(transformsInfoFileNames[i], rootConfigFileDir);
+ Path fileName_ = new File(new URI(fileURL)).toPath().getFileName();
+ transforminfotype.setFilename(fileName_.toString());
transforminfotype.setTransformation(Base64Utils.encode(transformsInfos[i].getBytes("UTF-8")).getBytes("UTF-8"));
auth_transformInfos.add(transforminfotype);
@@ -392,22 +400,32 @@ public class BuildFromLegacyConfig {
templates.setTemplate(template_list);
- //set TransformsInfo
+ //TransformsInfo not supported by MOAID 2.0
String[] transforminfos = oa.getTransformsInfos();
- ArrayList<TransformsInfoType> oa_transforminfos = new ArrayList<TransformsInfoType>();
- for (String e1 : transforminfos) {
- TransformsInfoType transforminfo = new TransformsInfoType();
- transforminfo.setFilename(e1);
- oa_transforminfos.add(transforminfo);
+ for (String e1 : transforminfos) {
+ if (MiscUtil.isNotEmpty(e1)) {
+ Logger.warn("OA specific transformation for OA " + oa.getPublicURLPrefix()
+ + " are not supported. USE AdditionalAuthBlock text!");
+ }
}
- oa_auth.setTransformsInfo(oa_transforminfos);
//VerifyInfoBoxes not supported by MOAID 2.0
//set Mandates
Mandates oa_mandates = new Mandates();
oa_auth.setMandates(oa_mandates);
- oa_mandates.setProfiles(oa.getMandateProfiles());
+ List<MandatesProfileNameItem> profileList = new ArrayList<MandatesProfileNameItem>();
+
+ String oldProfiles = oa.getMandateProfiles();
+ if (MiscUtil.isNotEmpty(oldProfiles)) {
+ String[] oldprofileList = oldProfiles.split(",");
+ for (int i=0; i<oldprofileList.length; i++) {
+ MandatesProfileNameItem item = new MandatesProfileNameItem();
+ item.setItem(oldprofileList[i].trim());
+ profileList.add(item);
+ }
+ oa_mandates.setProfileNameItems(profileList );
+ }
//STORK
//TODO: OA specific STORK config is deactivated in MOA 1.5.2
@@ -447,7 +465,16 @@ public class BuildFromLegacyConfig {
ChainingModes moa_chainingModes = new ChainingModes();
moaIDConfig.setChainingModes(moa_chainingModes);
- ChainingModeType type = ChainingModeType.fromValue(builder.getDefaultChainingMode());
+
+
+ String defaultmode = builder.getDefaultChainingMode();
+ ChainingModeType type;
+ if (defaultmode.equals(iaik.pki.pathvalidation.ChainingModes.CHAIN_MODE))
+ type = ChainingModeType.CHAINING;
+ else
+ type = ChainingModeType.PKIX;
+
+
moa_chainingModes.setSystemDefaultMode(type);
Map<IssuerAndSerial, String> chainingModes = builder.buildChainingModes();