diff options
author | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-11-03 11:13:38 +0100 |
---|---|---|
committer | Thomas Lenz <tlenz@iaik.tugraz.at> | 2014-11-03 11:13:38 +0100 |
commit | a3e59e5011e16271dab6cc8299a1d1241b4a7fb2 (patch) | |
tree | aae2f450b7296a286c09a8c51d423aec4bedd0dd | |
parent | 83dc74e60a4d9031285ac27aa0661fe0c26485e0 (diff) | |
parent | 1fbff5f5a86733bc6a75c8ae901153baa0963441 (diff) | |
download | moa-id-spss-a3e59e5011e16271dab6cc8299a1d1241b4a7fb2.tar.gz moa-id-spss-a3e59e5011e16271dab6cc8299a1d1241b4a7fb2.tar.bz2 moa-id-spss-a3e59e5011e16271dab6cc8299a1d1241b4a7fb2.zip |
Merge branch 'moa-2.1-Snapshot'MOA-SPSS-2.0.3MOA-ID-2.1.2
Conflicts:
.gitignore
239 files changed, 4933 insertions, 16429 deletions
diff --git a/DocumentService/.gitignore b/DocumentService/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/DocumentService/.gitignore @@ -0,0 +1 @@ +/target diff --git a/common/.gitignore b/common/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/common/.gitignore @@ -0,0 +1 @@ +/target diff --git a/common/src/main/java/at/gv/egovernment/moa/util/DateTimeUtils.java b/common/src/main/java/at/gv/egovernment/moa/util/DateTimeUtils.java index dbc9faba6..a2e0965d4 100644 --- a/common/src/main/java/at/gv/egovernment/moa/util/DateTimeUtils.java +++ b/common/src/main/java/at/gv/egovernment/moa/util/DateTimeUtils.java @@ -491,6 +491,7 @@ public class DateTimeUtils { fmt = DateTimeFormat.forPattern("yyyyMMdd"); break; default: + fmt = DateTimeFormat.forPattern("yyyy-MM-dd"); break; } diff --git a/id/ConfigWebTool/.gitignore b/id/ConfigWebTool/.gitignore new file mode 100644 index 000000000..4dc009173 --- /dev/null +++ b/id/ConfigWebTool/.gitignore @@ -0,0 +1,2 @@ +/target +/bin diff --git a/id/ConfigWebTool/pom.xml b/id/ConfigWebTool/pom.xml index ec027b497..18bd1306b 100644 --- a/id/ConfigWebTool/pom.xml +++ b/id/ConfigWebTool/pom.xml @@ -83,16 +83,20 @@ <dependency> <groupId>at.gv.util</groupId> <artifactId>egovutils</artifactId> - <version>1.0.7</version> + <version>2.0.0</version> <exclusions> <exclusion> - <groupId>com.sun</groupId> + <groupId>org.apache.cxf</groupId> <artifactId>*</artifactId> </exclusion> <exclusion> <groupId>org.slf4j</groupId> <artifactId>*</artifactId> </exclusion> + <exclusion> + <artifactId>bcprov-jdk16</artifactId> + <groupId>bouncycastle</groupId> + </exclusion> </exclusions> </dependency> <!-- <dependency> @@ -109,6 +113,14 @@ <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> </exclusion> + <exclusion> + <groupId>org.apache.xerces</groupId> + <artifactId>*</artifactId> + </exclusion> + <exclusion> + <groupId>xalan</groupId> + <artifactId>*</artifactId> + </exclusion> </exclusions> </dependency> <dependency> @@ -119,6 +131,14 @@ <groupId>org.slf4j</groupId> <artifactId>log4j-over-slf4j</artifactId> </exclusion> + <exclusion> + <groupId>org.apache.xerces</groupId> + <artifactId>*</artifactId> + </exclusion> + <exclusion> + <groupId>xalan</groupId> + <artifactId>*</artifactId> + </exclusion> </exclusions> </dependency> diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java index 5e177655d..975f627d4 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/GeneralStorkConfig.java @@ -26,6 +26,7 @@ import java.util.ArrayList; import java.util.List; import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead; +import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils; import at.gv.egovernment.moa.id.commons.db.dao.config.AuthComponentGeneral; import at.gv.egovernment.moa.id.commons.db.dao.config.CPEPS; import at.gv.egovernment.moa.id.commons.db.dao.config.ForeignIdentities; @@ -42,6 +43,22 @@ public class GeneralStorkConfig { private int qaa; private static final Logger log = Logger.getLogger(GeneralStorkConfig.class); + private MOAIDConfiguration dbconfig = null; + + /** + * + */ + public GeneralStorkConfig() { + dbconfig = ConfigurationDBRead.getMOAIDConfiguration(); + + } + + @Override + protected void finalize() throws Throwable { + ConfigurationDBUtils.closeSession(); + super.finalize(); + } + public void parse(MOAIDConfiguration config) { log.info("Initializing general Stork config"); @@ -93,7 +110,7 @@ public class GeneralStorkConfig { if (null == cpepslist) return null; - MOAIDConfiguration dbconfig = ConfigurationDBRead.getMOAIDConfiguration(); + //MOAIDConfiguration dbconfig = ConfigurationDBRead.getMOAIDConfiguration(); try { List<CPEPS> cpepss = dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS(); diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java index c4a825589..28eba9f34 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/OAListElement.java @@ -24,7 +24,7 @@ package at.gv.egovernment.moa.id.configuration.data; public class OAListElement { - public enum ServiceType {OA, VIDP, IDP} + public enum ServiceType {OA, VIDP, IDP, GWAY} private long dataBaseID; private String oaIdentifier; diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java index 9431cc1fd..2f9df18aa 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OAMOAIDPInterfederationConfig.java @@ -45,9 +45,11 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { private static final Logger log = Logger.getLogger(OAMOAIDPInterfederationConfig.class); private String queryURL; - private boolean inboundSSO = true; - private boolean outboundSSO = true; - private boolean storeSSOSession = true; + private Boolean inboundSSO = true; + private Boolean outboundSSO = true; + private Boolean storeSSOSession = true; + private Boolean passiveRequest = true; + private Boolean localAuthOnError = true; /* (non-Javadoc) * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#getName() @@ -70,6 +72,8 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { this.inboundSSO = moaIDP.isInboundSSO(); this.outboundSSO = moaIDP.isOutboundSSO(); this.storeSSOSession = moaIDP.isStoreSSOSession(); + this.localAuthOnError = moaIDP.isPerformLocalAuthenticationOnError(); + this.passiveRequest = moaIDP.isPerformPassivRequest(); } return null; @@ -95,8 +99,10 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { moaIDP.setInboundSSO(inboundSSO); moaIDP.setOutboundSSO(outboundSSO); moaIDP.setStoreSSOSession(storeSSOSession); - } - + moaIDP.setPerformLocalAuthenticationOnError(localAuthOnError); + moaIDP.setPerformPassivRequest(passiveRequest); + + } return null; } @@ -143,7 +149,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { * @return the inboundSSO */ public boolean isInboundSSO() { - return inboundSSO; + return inboundSSO.booleanValue(); } /** @@ -157,7 +163,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { * @return the outboundSSO */ public boolean isOutboundSSO() { - return outboundSSO; + return outboundSSO.booleanValue(); } /** @@ -171,7 +177,7 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { * @return the storeSSOSession */ public boolean isStoreSSOSession() { - return storeSSOSession; + return storeSSOSession.booleanValue(); } /** @@ -180,6 +186,34 @@ public class OAMOAIDPInterfederationConfig implements IOnlineApplicationData { public void setStoreSSOSession(boolean storeSSOSession) { this.storeSSOSession = storeSSOSession; } + + /** + * @return the passiveRequest + */ + public boolean isPassiveRequest() { + return passiveRequest.booleanValue(); + } + + /** + * @param passiveRequest the passiveRequest to set + */ + public void setPassiveRequest(boolean passiveRequest) { + this.passiveRequest = passiveRequest; + } + + /** + * @return the localAuthOnError + */ + public boolean isLocalAuthOnError() { + return localAuthOnError.booleanValue(); + } + + /** + * @param localAuthOnError the localAuthOnError to set + */ + public void setLocalAuthOnError(boolean localAuthOnError) { + this.localAuthOnError = localAuthOnError; + } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OASTORKConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OASTORKConfig.java index 45875010b..e0a312c09 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OASTORKConfig.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/OASTORKConfig.java @@ -30,9 +30,11 @@ import javax.servlet.http.HttpServletRequest; import org.apache.log4j.Logger; import at.gv.egovernment.moa.id.commons.db.ConfigurationDBRead; +import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils; import at.gv.egovernment.moa.id.commons.db.dao.config.AttributeProviderPlugin; import at.gv.egovernment.moa.id.commons.db.dao.config.AuthComponentOA; import at.gv.egovernment.moa.id.commons.db.dao.config.CPEPS; +import at.gv.egovernment.moa.id.commons.db.dao.config.MOAIDConfiguration; import at.gv.egovernment.moa.id.commons.db.dao.config.OASTORK; import at.gv.egovernment.moa.id.commons.db.dao.config.OAStorkAttribute; import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication; @@ -59,11 +61,16 @@ public class OASTORKConfig implements IOnlineApplicationData{ private List<String> citizenCountries; private List<String> enabledCitizenCountries; + private MOAIDConfiguration dbconfig = null; + public OASTORKConfig() { // fetch available citizen countries citizenCountries = new ArrayList<String>(); + + dbconfig = ConfigurationDBRead.getMOAIDConfiguration(); + try { - for(CPEPS current : ConfigurationDBRead.getMOAIDConfiguration().getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS()) { + for(CPEPS current : dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS()) { citizenCountries.add(current.getCountryCode()); } @@ -73,6 +80,12 @@ public class OASTORKConfig implements IOnlineApplicationData{ } + @Override + protected void finalize() throws Throwable { + ConfigurationDBUtils.closeSession(); + super.finalize(); + } + /* (non-Javadoc) * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#getName() */ @@ -98,7 +111,7 @@ public class OASTORKConfig implements IOnlineApplicationData{ setQaa(config.getQaa()); } catch(NullPointerException e) { // if there is no configuration available for the OA, get the default qaa level - setQaa(ConfigurationDBRead.getMOAIDConfiguration().getAuthComponentGeneral().getForeignIdentities().getSTORK().getQualityAuthenticationAssuranceLevel()); + setQaa(dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getQualityAuthenticationAssuranceLevel()); } @@ -110,7 +123,7 @@ public class OASTORKConfig implements IOnlineApplicationData{ attributes = new ArrayList<AttributeHelper>(); try { try { - for(StorkAttribute current : ConfigurationDBRead.getMOAIDConfiguration().getAuthComponentGeneral().getForeignIdentities().getSTORK().getAttributes()) { + for(StorkAttribute current : dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getAttributes()) { AttributeHelper tmp = null; for(OAStorkAttribute sepp : config.getOAAttributes()) @@ -220,7 +233,7 @@ public class OASTORKConfig implements IOnlineApplicationData{ return result; for(AttributeHelper current : getHelperAttributes()) { - for(StorkAttribute currentAttribute : ConfigurationDBRead.getMOAIDConfiguration().getAuthComponentGeneral().getForeignIdentities().getSTORK().getAttributes()) + for(StorkAttribute currentAttribute : dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getAttributes()) if(currentAttribute.getName().equals(current.getName())) { if(current.isUsed() || currentAttribute.isMandatory()) { OAStorkAttribute tmp = new OAStorkAttribute(); @@ -260,7 +273,7 @@ public class OASTORKConfig implements IOnlineApplicationData{ List<CPEPS> result = new ArrayList<CPEPS>(); try { - for(CPEPS current : ConfigurationDBRead.getMOAIDConfiguration().getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS()) { + for(CPEPS current : dbconfig.getAuthComponentGeneral().getForeignIdentities().getSTORK().getCPEPS()) { if(enabledCitizenCountries.contains(current.getCountryCode())) result.add(current); } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java new file mode 100644 index 000000000..23af59d8e --- /dev/null +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/data/oa/PVPGatewayInterfederationConfig.java @@ -0,0 +1,136 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.configuration.data.oa; + +import java.util.ArrayList; +import java.util.List; + +import javax.servlet.http.HttpServletRequest; + +import org.apache.log4j.Logger; + +import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationGatewayType; +import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationIDPType; +import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication; +import at.gv.egovernment.moa.id.commons.validation.ValidationHelper; +import at.gv.egovernment.moa.id.configuration.Constants; +import at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser; +import at.gv.egovernment.moa.id.configuration.helper.LanguageHelper; +import at.gv.egovernment.moa.util.MiscUtil; + +/** + * @author tlenz + * + */ +public class PVPGatewayInterfederationConfig implements IOnlineApplicationData { + + private static final Logger log = Logger.getLogger(PVPGatewayInterfederationConfig.class); + + private String entityID = null; + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#getName() + */ + @Override + public String getName() { + return "PVPGatewayInterfederation"; + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#parse(at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication, at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser, javax.servlet.http.HttpServletRequest) + */ + @Override + public List<String> parse(OnlineApplication dbOA, + AuthenticatedUser authUser, HttpServletRequest request) { + + InterfederationGatewayType gateway = dbOA.getInterfederationGateway(); + if (gateway != null) { + this.entityID = gateway.getForwardIDPIdentifier(); + + } + + return null; + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#store(at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication, at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser, javax.servlet.http.HttpServletRequest) + */ + @Override + public String store(OnlineApplication dbOA, AuthenticatedUser authUser, + HttpServletRequest request) { + + if (authUser.isAdmin()) { + dbOA.setIsInterfederationGateway(true); + + InterfederationGatewayType gateway = dbOA.getInterfederationGateway(); + if (gateway == null) { + gateway = new InterfederationGatewayType(); + dbOA.setInterfederationGateway(gateway); + } + + gateway.setForwardIDPIdentifier(entityID); + } + + dbOA.setType(Constants.MOA_CONFIG_BUSINESSSERVICE); + return null; + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData#validate(at.gv.egovernment.moa.id.configuration.data.oa.OAGeneralConfig, at.gv.egovernment.moa.id.configuration.auth.AuthenticatedUser, javax.servlet.http.HttpServletRequest) + */ + @Override + public List<String> validate(OAGeneralConfig general, + AuthenticatedUser authUser, HttpServletRequest request) { + + List<String> errors = new ArrayList<String>(); + + if (MiscUtil.isNotEmpty(entityID)) { + if (!ValidationHelper.validateURL(entityID)) { + log.info("PVP gateway EntityID is not valid"); + errors.add(LanguageHelper.getErrorString("validation.interfederation.gateway.entityID.valid", request)); + + } + + } else + errors.add(LanguageHelper.getErrorString("validation.interfederation.gateway.entityID.empty", request)); + + return errors; + } + + /** + * @return the entityID + */ + public String getEntityID() { + return entityID; + } + + /** + * @param entityID the entityID to set + */ + public void setEntityID(String entityID) { + this.entityID = entityID; + } + + + +} diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java index dc97dd2c8..150483dd8 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/helper/FormDataHelper.java @@ -43,6 +43,9 @@ public class FormDataHelper { if (dboa.isIsInterfederationIDP()!= null && dboa.isIsInterfederationIDP()) formOAs.add(addOAFormListElement(dboa, ServiceType.IDP)); + else if (dboa.isIsInterfederationGateway()!= null && dboa.isIsInterfederationGateway()) + formOAs.add(addOAFormListElement(dboa, ServiceType.GWAY)); + else if (dboa.getAuthComponentOA().getOASTORK() != null && dboa.getAuthComponentOA().getOASTORK().isVidpEnabled() != null && dboa.getAuthComponentOA().getOASTORK().isVidpEnabled()) diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java index 9c1cb90e0..5a9787069 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/BasicOAAction.java @@ -142,7 +142,7 @@ public class BasicOAAction extends BasicAction { session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, null); } - protected OnlineApplication postProcessSaveOnlineApplication(OnlineApplication onlineapplication ) throws BasicOAActionException { + protected OnlineApplication postProcessSaveOnlineApplication(OnlineApplication onlineapplication, boolean persistOA) throws BasicOAActionException { if (onlineapplication == null) { onlineapplication = new OnlineApplication(); onlineapplication.setIsNew(true); @@ -186,7 +186,7 @@ public class BasicOAAction extends BasicAction { } //save OA configuration - String error = saveOAConfigToDatabase(onlineapplication); + String error = saveOAConfigToDatabase(onlineapplication, persistOA); if (MiscUtil.isNotEmpty(error)) { log.warn("OA configuration can not be stored!"); addActionError(error); @@ -395,15 +395,13 @@ public class BasicOAAction extends BasicAction { } } - private String saveOAConfigToDatabase(OnlineApplication dboa) { + private String saveOAConfigToDatabase(OnlineApplication dboa, boolean persistOA) { for (IOnlineApplicationData form : formList.values()) form.store(dboa, authUser, request); try { - if (dboa.isIsNew()) { - ConfigurationDBUtils.save(dboa); - + if (dboa.isIsNew()) { if (!authUser.isAdmin()) { UserDatabase user = ConfigurationDBRead.getUserWithID(authUser.getUserID()); @@ -412,9 +410,16 @@ public class BasicOAAction extends BasicAction { useroas.add(dboa); ConfigurationDBUtils.saveOrUpdate(user); + + } else { + if (persistOA) + ConfigurationDBUtils.save(dboa); + } + } else - ConfigurationDBUtils.saveOrUpdate(dboa); + if (persistOA) + ConfigurationDBUtils.saveOrUpdate(dboa); } catch (MOADatabaseException e) { log.warn("Online-Application can not be stored.", e); diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java index 7f609d95e..31c29aef0 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditGeneralConfigAction.java @@ -132,7 +132,7 @@ public class EditGeneralConfigAction extends BasicAction { public String saveConfig() { try { populateBasicInformations(); - + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; @@ -210,6 +210,8 @@ public class EditGeneralConfigAction extends BasicAction { public String back() { try { populateBasicInformations(); + ConfigurationDBUtils.closeSession(); + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; @@ -222,15 +224,15 @@ public class EditGeneralConfigAction extends BasicAction { private String saveFormToDatabase() { log.debug("Saving form to database"); - log.error("Saving form to db"); - log.info("SV frm db"); +// log.error("Saving form to db"); +// log.info("SV frm db"); - for (Object obj : Collections.list(request.getParameterNames())) { - log.error(" PARAM: " + obj.toString()); - } - for (Object obj : Collections.list(request.getSession().getAttributeNames())) { - log.error(" SES PARAM: " + obj.toString()); - } +// for (Object obj : Collections.list(request.getParameterNames())) { +// log.error(" PARAM: " + obj.toString()); +// } +// for (Object obj : Collections.list(request.getSession().getAttributeNames())) { +// log.error(" SES PARAM: " + obj.toString()); +// } try { log.error(" ASSERTION " + moaconfig.getTimeoutAssertion()); @@ -523,8 +525,11 @@ public class EditGeneralConfigAction extends BasicAction { ForeignIdentities foreign = dbauth.getForeignIdentities(); if (foreign != null) { STORK stork = foreign.getSTORK(); - if (stork == null) + if (stork == null) { stork = new STORK(); + foreign.setSTORK(stork); + + } try { log.error("QAAAA " + storkconfig.getDefaultQaa()); @@ -651,9 +656,11 @@ public class EditGeneralConfigAction extends BasicAction { } catch (MOADatabaseException e) { log.warn("MOAID Configuration can not be stored in Database", e); return LanguageHelper.getErrorString("error.db.oa.store", request); + + } finally { + ConfigurationDBUtils.closeSession(); + } - - ConfigurationDBUtils.closeSession(); return null; } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java index 3d96cc1e5..1da948eec 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/EditOAAction.java @@ -108,9 +108,7 @@ public class EditOAAction extends BasicOAAction { } setNewOA(false); - - ConfigurationDBUtils.closeSession(); - + formID = Random.nextRandom(); session.setAttribute(Constants.SESSION_FORMID, formID); session.setAttribute(Constants.SESSION_OAID, oaid); @@ -123,6 +121,10 @@ public class EditOAAction extends BasicOAAction { } catch (BasicOAActionException e) { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); + + } finally { + ConfigurationDBUtils.closeSession(); + } } @@ -149,32 +151,34 @@ public class EditOAAction extends BasicOAAction { } getStorkOA().setHelperAttributes(attributes); - + + UserDatabase userdb = ConfigurationDBRead.getUserWithID(authUser + .getUserID()); + + if (!authUser.isAdmin() && userdb.isIsMailAddressVerified() != null + && !userdb.isIsMailAddressVerified()) { + log.info("Online-Applikation managemant disabled. Mail address is not verified."); + addActionError(LanguageHelper.getErrorString( + "error.editoa.mailverification", request)); + return Constants.STRUTS_SUCCESS; + } + + session.setAttribute( + Constants.SESSION_OAUTH20SECRET, + ((OAOAuth20Config) formList.get(new OAOAuth20Config().getName())) + .getClientSecret()); + session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, getFormOA().getFormMap()); + nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); + + return Constants.STRUTS_OA_EDIT; + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; + } finally { + ConfigurationDBUtils.closeSession(); + } - - UserDatabase userdb = ConfigurationDBRead.getUserWithID(authUser - .getUserID()); - - if (!authUser.isAdmin() && userdb.isIsMailAddressVerified() != null - && !userdb.isIsMailAddressVerified()) { - log.info("Online-Applikation managemant disabled. Mail address is not verified."); - addActionError(LanguageHelper.getErrorString( - "error.editoa.mailverification", request)); - return Constants.STRUTS_SUCCESS; - } - - ConfigurationDBUtils.closeSession(); - session.setAttribute( - Constants.SESSION_OAUTH20SECRET, - ((OAOAuth20Config) formList.get(new OAOAuth20Config().getName())) - .getClientSecret()); - session.setAttribute(Constants.SESSION_BKUFORMPREVIEW, getFormOA().getFormMap()); - nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); - - return Constants.STRUTS_OA_EDIT; } public String saveOA() { @@ -183,9 +187,92 @@ public class EditOAAction extends BasicOAAction { try { populateBasicInformations(); - onlineapplication = preProcessSaveOnlineApplication(); + List<String> errors = new ArrayList<String>(); + + // validate forms + for (IOnlineApplicationData form : formList.values()) + errors.addAll(form.validate(getGeneralOA(), authUser, request)); + + // Do not allow SSO in combination with special BKUSelection features + if (getSsoOA().isUseSSO() + && (getFormOA().isOnlyMandateAllowed() || !getFormOA() + .isShowMandateLoginButton())) { + log.warn("Special BKUSelection features can not be used in combination with SSO"); + errors.add(LanguageHelper.getErrorString( + "validation.general.bkuselection.specialfeatures.valid", + request)); + } + + if (errors.size() > 0) { + log.info("OAConfiguration with ID " + + getGeneralOA().getIdentifier() + " has some errors."); + for (String el : errors) + addActionError(el); + + formID = Random.nextRandom(); + session.setAttribute(Constants.SESSION_FORMID, formID); + return Constants.STRUTS_ERROR_VALIDATION; + + } else { + try { + onlineapplication = postProcessSaveOnlineApplication(onlineapplication, true); + + } catch (BasicOAActionException e) { + addActionError(e.getStrutsError()); + return e.getStrutsReturnValue(); + } + + } + + Object nextPageAttr = session + .getAttribute(Constants.SESSION_RETURNAREA); + if (nextPageAttr != null && nextPageAttr instanceof String) { + nextPage = (String) nextPageAttr; + session.setAttribute(Constants.SESSION_RETURNAREA, null); + + } else { + nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); + } + + if (onlineapplication.isIsAdminRequired()) { + int numoas = 0; + int numusers = 0; + + List<OnlineApplication> openOAs = ConfigurationDBRead + .getAllNewOnlineApplications(); + if (openOAs != null) + numoas = openOAs.size(); + + List<UserDatabase> openUsers = ConfigurationDBRead.getAllNewUsers(); + if (openUsers != null) + numusers = openUsers.size(); + try { + + addActionMessage(LanguageHelper.getGUIString( + "webpages.oaconfig.success.admin", getGeneralOA() + .getIdentifier(), request)); + + if (numusers > 0 || numoas > 0) + MailHelper.sendAdminMail(numoas, numusers); + + } catch (ConfigurationException e) { + log.warn("Sending Mail to Admin failed.", e); + } + + } else + addActionMessage(LanguageHelper.getGUIString( + "webpages.oaconfig.success", + getGeneralOA().getIdentifier(), request)); + + // remove session attributes + session.setAttribute(Constants.SESSION_OAID, null); + session.removeAttribute(Constants.SESSION_BKUSELECTIONTEMPLATE); + session.removeAttribute(Constants.SESSION_SENDASSERTIONTEMPLATE); + + return Constants.STRUTS_SUCCESS; + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; @@ -193,122 +280,41 @@ public class EditOAAction extends BasicOAAction { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); + } finally { + ConfigurationDBUtils.closeSession(); + } - - List<String> errors = new ArrayList<String>(); - - // validate forms - for (IOnlineApplicationData form : formList.values()) - errors.addAll(form.validate(getGeneralOA(), authUser, request)); - - // Do not allow SSO in combination with special BKUSelection features - if (getSsoOA().isUseSSO() - && (getFormOA().isOnlyMandateAllowed() || !getFormOA() - .isShowMandateLoginButton())) { - log.warn("Special BKUSelection features can not be used in combination with SSO"); - errors.add(LanguageHelper.getErrorString( - "validation.general.bkuselection.specialfeatures.valid", - request)); - } - - if (errors.size() > 0) { - log.info("OAConfiguration with ID " - + getGeneralOA().getIdentifier() + " has some errors."); - for (String el : errors) - addActionError(el); - - formID = Random.nextRandom(); - session.setAttribute(Constants.SESSION_FORMID, formID); - return Constants.STRUTS_ERROR_VALIDATION; - - } else { - try { - onlineapplication = postProcessSaveOnlineApplication(onlineapplication); - - } catch (BasicOAActionException e) { - addActionError(e.getStrutsError()); - return e.getStrutsReturnValue(); - } - - } - - Object nextPageAttr = session - .getAttribute(Constants.SESSION_RETURNAREA); - if (nextPageAttr != null && nextPageAttr instanceof String) { - nextPage = (String) nextPageAttr; - session.setAttribute(Constants.SESSION_RETURNAREA, null); - - } else { - nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); - } - - if (onlineapplication.isIsAdminRequired()) { - int numoas = 0; - int numusers = 0; - - List<OnlineApplication> openOAs = ConfigurationDBRead - .getAllNewOnlineApplications(); - if (openOAs != null) - numoas = openOAs.size(); - - List<UserDatabase> openUsers = ConfigurationDBRead.getAllNewUsers(); - if (openUsers != null) - numusers = openUsers.size(); - try { - - addActionMessage(LanguageHelper.getGUIString( - "webpages.oaconfig.success.admin", getGeneralOA() - .getIdentifier(), request)); - - if (numusers > 0 || numoas > 0) - MailHelper.sendAdminMail(numoas, numusers); - - } catch (ConfigurationException e) { - log.warn("Sending Mail to Admin failed.", e); - } - - } else - addActionMessage(LanguageHelper.getGUIString( - "webpages.oaconfig.success", - getGeneralOA().getIdentifier(), request)); - - // remove session attributes - session.setAttribute(Constants.SESSION_OAID, null); - session.removeAttribute(Constants.SESSION_BKUSELECTIONTEMPLATE); - session.removeAttribute(Constants.SESSION_SENDASSERTIONTEMPLATE); - - ConfigurationDBUtils.closeSession(); - return Constants.STRUTS_SUCCESS; } public String cancleAndBackOA() { try { populateBasicInformations(); + Object nextPageAttr = session + .getAttribute(Constants.SESSION_RETURNAREA); + if (nextPageAttr != null && nextPageAttr instanceof String) { + nextPage = (String) nextPageAttr; + session.setAttribute(Constants.SESSION_RETURNAREA, null); + + } else { + nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); + } + + session.setAttribute(Constants.SESSION_OAID, null); + + addActionMessage(LanguageHelper.getGUIString( + "webpages.oaconfig.cancle", getGeneralOA().getIdentifier(), + request)); + + return Constants.STRUTS_SUCCESS; + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; + } finally { + ConfigurationDBUtils.closeSession(); + } - - Object nextPageAttr = session - .getAttribute(Constants.SESSION_RETURNAREA); - if (nextPageAttr != null && nextPageAttr instanceof String) { - nextPage = (String) nextPageAttr; - session.setAttribute(Constants.SESSION_RETURNAREA, null); - - } else { - nextPage = Constants.STRUTS_RETURNAREA_VALUES.main.name(); - } - - session.setAttribute(Constants.SESSION_OAID, null); - - addActionMessage(LanguageHelper.getGUIString( - "webpages.oaconfig.cancle", getGeneralOA().getIdentifier(), - request)); - - ConfigurationDBUtils.closeSession(); - - return Constants.STRUTS_SUCCESS; } public String deleteOA() { @@ -326,7 +332,66 @@ public class EditOAAction extends BasicOAAction { } oaidentifier = preProcessDeleteOnlineApplication(); - + OnlineApplication onlineapplication = ConfigurationDBRead + .getOnlineApplication(oaidentifier); + request.getSession().setAttribute(Constants.SESSION_OAID, null); + + try { + if (MiscUtil.isNotEmpty(onlineapplication.getAuthComponentOA() + .getOAPVP2().getMetadataURL())) { + + MOAIDConfiguration moaconfig = ConfigurationDBRead + .getMOAIDConfiguration(); + moaconfig.setPvp2RefreshItem(new Date()); + ConfigurationDBUtils.saveOrUpdate(moaconfig); + + } + } catch (NullPointerException e) { + log.debug("Found no MetadataURL in OA-Databaseconfig"); + + } catch (Throwable e) { + log.info("Set metadata refresh flag FAILED.", e); + } + + if (ConfigurationDBUtils.delete(onlineapplication)) { + + if (!authUser.isAdmin()) { + UserDatabase user = ConfigurationDBRead.getUserWithID(authUser + .getUserID()); + List<OnlineApplication> useroas = user.getOnlineApplication(); + + for (OnlineApplicationType oa : useroas) { + if (oa.getHjid().equals(onlineapplication.getHjid())) { + useroas.remove(oa); + } + } + + try { + ConfigurationDBUtils.saveOrUpdate(user); + + } catch (MOADatabaseException e) { + log.warn("User information can not be updated in database", + e); + addActionError(LanguageHelper.getGUIString( + "error.db.oa.store", request)); + return Constants.STRUTS_ERROR; + } + } + + ConfigurationDBUtils.closeSession(); + + addActionMessage(LanguageHelper.getGUIString( + "webpages.oaconfig.delete.message", oaidentifier, request)); + + return Constants.STRUTS_SUCCESS; + + } else { + ConfigurationDBUtils.closeSession(); + addActionError(LanguageHelper.getGUIString( + "webpages.oaconfig.delete.error", oaidentifier, request)); + return Constants.STRUTS_SUCCESS; + } + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; @@ -334,63 +399,9 @@ public class EditOAAction extends BasicOAAction { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); - } - - OnlineApplication onlineapplication = ConfigurationDBRead - .getOnlineApplication(oaidentifier); - request.getSession().setAttribute(Constants.SESSION_OAID, null); - - try { - if (MiscUtil.isNotEmpty(onlineapplication.getAuthComponentOA() - .getOAPVP2().getMetadataURL())) { - - MOAIDConfiguration moaconfig = ConfigurationDBRead - .getMOAIDConfiguration(); - moaconfig.setPvp2RefreshItem(new Date()); - ConfigurationDBUtils.saveOrUpdate(moaconfig); - - } - } catch (Throwable e) { - log.info("Found no MetadataURL in OA-Databaseconfig!", e); - } - - if (ConfigurationDBUtils.delete(onlineapplication)) { - - if (!authUser.isAdmin()) { - UserDatabase user = ConfigurationDBRead.getUserWithID(authUser - .getUserID()); - List<OnlineApplication> useroas = user.getOnlineApplication(); - - for (OnlineApplicationType oa : useroas) { - if (oa.getHjid().equals(onlineapplication.getHjid())) { - useroas.remove(oa); - } - } - - try { - ConfigurationDBUtils.saveOrUpdate(user); - - } catch (MOADatabaseException e) { - log.warn("User information can not be updated in database", - e); - addActionError(LanguageHelper.getGUIString( - "error.db.oa.store", request)); - return Constants.STRUTS_ERROR; - } - } - + } finally { ConfigurationDBUtils.closeSession(); - - addActionMessage(LanguageHelper.getGUIString( - "webpages.oaconfig.delete.message", oaidentifier, request)); - - return Constants.STRUTS_SUCCESS; - - } else { - ConfigurationDBUtils.closeSession(); - addActionError(LanguageHelper.getGUIString( - "webpages.oaconfig.delete.error", oaidentifier, request)); - return Constants.STRUTS_SUCCESS; + } } diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IDPGatewayAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IDPGatewayAction.java new file mode 100644 index 000000000..e238c6d37 --- /dev/null +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/IDPGatewayAction.java @@ -0,0 +1,56 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.configuration.struts.action; + +import java.util.LinkedHashMap; + +import at.gv.egovernment.moa.id.configuration.data.oa.IOnlineApplicationData; +import at.gv.egovernment.moa.id.configuration.data.oa.OAMOAIDPInterfederationConfig; +import at.gv.egovernment.moa.id.configuration.data.oa.OAPVP2Config; +import at.gv.egovernment.moa.id.configuration.data.oa.PVPGatewayInterfederationConfig; + +/** + * @author tlenz + * + */ +public class IDPGatewayAction extends InterfederationIDPAction { + + private static final long serialVersionUID = -2047128481980413334L; + + public IDPGatewayAction() { + super(); + formList.putAll(buildIDPGatewayFormList()); + } + + public static LinkedHashMap<String, IOnlineApplicationData> buildIDPGatewayFormList() { + + LinkedHashMap<String, IOnlineApplicationData> forms = + new LinkedHashMap<String, IOnlineApplicationData>(); + + PVPGatewayInterfederationConfig pvpGatewayconfig = new PVPGatewayInterfederationConfig(); + forms.put(pvpGatewayconfig.getName(), pvpGatewayconfig); + + return forms; + } + +} diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java index 813aa1960..eead280be 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/action/InterfederationIDPAction.java @@ -46,6 +46,7 @@ import at.gv.egovernment.moa.id.configuration.data.oa.OAMOAIDPInterfederationCon import at.gv.egovernment.moa.id.configuration.data.oa.OAOAuth20Config; import at.gv.egovernment.moa.id.configuration.data.oa.OASTORKConfig; import at.gv.egovernment.moa.id.configuration.data.oa.OATargetConfiguration; +import at.gv.egovernment.moa.id.configuration.data.oa.PVPGatewayInterfederationConfig; import at.gv.egovernment.moa.id.configuration.exception.BasicActionException; import at.gv.egovernment.moa.id.configuration.exception.BasicOAActionException; import at.gv.egovernment.moa.id.configuration.helper.FormDataHelper; @@ -63,6 +64,7 @@ public class InterfederationIDPAction extends BasicOAAction { public static final String STRUTS_IDP_VIDP = "-VIDP"; public static final String STRUTS_IDP_MOA = "-MOAIDP"; + public static final String STRUTS_IDP_GATEWAY = "-IDPGATEWAY"; private List<OAListElement> formOAs; @@ -89,9 +91,7 @@ public class InterfederationIDPAction extends BasicOAAction { session.setAttribute(Constants.SESSION_RETURNAREA, Constants.STRUTS_RETURNAREA_VALUES.main.name()); - - ConfigurationDBUtils.closeSession(); - + return Constants.STRUTS_SUCCESS; } else { @@ -103,6 +103,9 @@ public class InterfederationIDPAction extends BasicOAAction { } catch (BasicActionException e) { return Constants.STRUTS_ERROR; + } finally { + ConfigurationDBUtils.closeSession(); + } } @@ -122,6 +125,9 @@ public class InterfederationIDPAction extends BasicOAAction { if (STRUTS_IDP_MOA.equals(interfederationType)) { formList.putAll(MOAIDPAction.buildMOAIDPFormList()); + + } else if (STRUTS_IDP_GATEWAY.equals(interfederationType)) { + formList.putAll(IDPGatewayAction.buildIDPGatewayFormList()); } else if (STRUTS_IDP_VIDP.equals(interfederationType)) { formList.putAll(VIDPAction.buildVIDPFormList()); @@ -140,6 +146,9 @@ public class InterfederationIDPAction extends BasicOAAction { } catch (BasicActionException e) { return Constants.STRUTS_ERROR; + } finally { + ConfigurationDBUtils.closeSession(); + } return Constants.STRUTS_OA_EDIT + interfederationType; @@ -174,6 +183,10 @@ public class InterfederationIDPAction extends BasicOAAction { getStorkOA().getAttributeProviderPlugins().add(new AttributeProviderPlugin()); interfederationType = STRUTS_IDP_VIDP; + } else if (oa.isIsInterfederationGateway() != null && oa.isIsInterfederationGateway()) { + formList.putAll(IDPGatewayAction.buildIDPGatewayFormList()); + interfederationType = STRUTS_IDP_GATEWAY; + } else { log.warn("Requested application is not an interfederation IDP."); return Constants.STRUTS_NOTALLOWED; @@ -190,7 +203,10 @@ public class InterfederationIDPAction extends BasicOAAction { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); - } + } finally { + ConfigurationDBUtils.closeSession(); + + } } public String saveIDP() { @@ -210,6 +226,7 @@ public class InterfederationIDPAction extends BasicOAAction { if ( onlineapplication != null && !((onlineapplication.isIsInterfederationIDP() != null && onlineapplication.isIsInterfederationIDP()) || + (onlineapplication.isIsInterfederationGateway() != null && onlineapplication.isIsInterfederationGateway()) || (onlineapplication.getAuthComponentOA().getOASTORK() != null && onlineapplication.getAuthComponentOA().getOASTORK().isVidpEnabled() != null && onlineapplication.getAuthComponentOA().getOASTORK().isVidpEnabled()))) { @@ -246,9 +263,10 @@ public class InterfederationIDPAction extends BasicOAAction { formID = Random.nextRandom(); session.setAttribute(Constants.SESSION_FORMID, formID); return Constants.STRUTS_ERROR_VALIDATION; - + } else { - onlineapplication = postProcessSaveOnlineApplication(onlineapplication); + onlineapplication = postProcessSaveOnlineApplication(onlineapplication, + !(this instanceof MOAIDPAction)); //set default Target interfederated nameID caluclation if (getPvp2OA() != null) { @@ -287,7 +305,10 @@ public class InterfederationIDPAction extends BasicOAAction { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); - } + } finally { + ConfigurationDBUtils.closeSession(); + + } } public String cancleAndBackIDP() { @@ -300,16 +321,19 @@ public class InterfederationIDPAction extends BasicOAAction { return Constants.STRUTS_NOTALLOWED; } + session.setAttribute(Constants.SESSION_OAID, null); + addActionMessage(LanguageHelper.getGUIString("webpages.idp.cancle", getGeneralOA().getIdentifier(), request)); + ConfigurationDBUtils.closeSession(); + + return Constants.STRUTS_SUCCESS; + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; + } finally { + ConfigurationDBUtils.closeSession(); + } - - session.setAttribute(Constants.SESSION_OAID, null); - addActionMessage(LanguageHelper.getGUIString("webpages.idp.cancle", getGeneralOA().getIdentifier(), request)); - ConfigurationDBUtils.closeSession(); - - return Constants.STRUTS_SUCCESS; } public String deleteIDP() { @@ -325,7 +349,30 @@ public class InterfederationIDPAction extends BasicOAAction { oaidentifier = preProcessDeleteOnlineApplication(); - + session.setAttribute(Constants.SESSION_OAID, null); + OnlineApplication onlineapplication = ConfigurationDBRead.getOnlineApplication(oaidentifier); + + try { + if (onlineapplication.getAuthComponentOA().getOAPVP2() != null && + MiscUtil.isNotEmpty(onlineapplication.getAuthComponentOA().getOAPVP2().getMetadataURL())) { + MOAIDConfiguration moaconfig = ConfigurationDBRead.getMOAIDConfiguration(); + moaconfig.setPvp2RefreshItem(new Date()); + ConfigurationDBUtils.saveOrUpdate(moaconfig); + + } + } catch (Throwable e) { + log.info("Found no MetadataURL in OA-Databaseconfig!", e); + } + + if (ConfigurationDBUtils.delete(onlineapplication)) { + addActionMessage(LanguageHelper.getGUIString("webpages.oaconfig.delete.message", oaidentifier, request)); + return Constants.STRUTS_SUCCESS; + + } else { + addActionError(LanguageHelper.getGUIString("webpages.oaconfig.delete.error", oaidentifier, request)); + return Constants.STRUTS_SUCCESS; + } + } catch (BasicActionException e) { return Constants.STRUTS_ERROR; @@ -333,34 +380,10 @@ public class InterfederationIDPAction extends BasicOAAction { addActionError(e.getStrutsError()); return e.getStrutsReturnValue(); + } finally { + ConfigurationDBUtils.closeSession(); + } - - session.setAttribute(Constants.SESSION_OAID, null); - OnlineApplication onlineapplication = ConfigurationDBRead.getOnlineApplication(oaidentifier); - - try { - if (onlineapplication.getAuthComponentOA().getOAPVP2() != null && - MiscUtil.isNotEmpty(onlineapplication.getAuthComponentOA().getOAPVP2().getMetadataURL())) { - MOAIDConfiguration moaconfig = ConfigurationDBRead.getMOAIDConfiguration(); - moaconfig.setPvp2RefreshItem(new Date()); - ConfigurationDBUtils.saveOrUpdate(moaconfig); - - } - } catch (Throwable e) { - log.info("Found no MetadataURL in OA-Databaseconfig!", e); - } - - if (ConfigurationDBUtils.delete(onlineapplication)) { - - ConfigurationDBUtils.closeSession(); - addActionMessage(LanguageHelper.getGUIString("webpages.oaconfig.delete.message", oaidentifier, request)); - return Constants.STRUTS_SUCCESS; - - } else { - ConfigurationDBUtils.closeSession(); - addActionError(LanguageHelper.getGUIString("webpages.oaconfig.delete.error", oaidentifier, request)); - return Constants.STRUTS_SUCCESS; - } } @@ -403,6 +426,14 @@ public class InterfederationIDPAction extends BasicOAAction { formList.put(pvp2oa.getName(), pvp2oa); } + public PVPGatewayInterfederationConfig getPVPGateway() { + return (PVPGatewayInterfederationConfig) formList.get(new PVPGatewayInterfederationConfig().getName()); + } + + public void setPVPGateway(PVPGatewayInterfederationConfig val) { + formList.put(val.getName(), val); + } + /** * @return the formOA */ diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/interceptor/HibernateSessionInterceptor.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/interceptor/HibernateSessionInterceptor.java new file mode 100644 index 000000000..084d054f7 --- /dev/null +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/struts/interceptor/HibernateSessionInterceptor.java @@ -0,0 +1,59 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.configuration.struts.interceptor; + +import org.apache.log4j.Logger; + +import at.gv.egovernment.moa.id.commons.db.ConfigurationDBUtils; + +import com.opensymphony.xwork2.ActionInvocation; +import com.opensymphony.xwork2.interceptor.AbstractInterceptor; + +/** + * @author tlenz + * + */ +public class HibernateSessionInterceptor extends AbstractInterceptor { + + private static final long serialVersionUID = 2457987431702749278L; + private static Logger log = Logger.getLogger(HibernateSessionInterceptor.class); + + /* (non-Javadoc) + * @see com.opensymphony.xwork2.interceptor.AbstractInterceptor#intercept(com.opensymphony.xwork2.ActionInvocation) + */ + @Override + public String intercept(ActionInvocation arg0) throws Exception { + log.trace("Hibernate session interceptor starts .... "); + + try { + return arg0.invoke(); + + } finally { + log.debug("Hibernate-Session interceptor close active sessions."); + ConfigurationDBUtils.closeSession(); + + } + + } + +} diff --git a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java index a75f8307d..27e29e292 100644 --- a/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java +++ b/id/ConfigWebTool/src/main/java/at/gv/egovernment/moa/id/configuration/utils/UserRequestCleaner.java @@ -68,7 +68,8 @@ public class UserRequestCleaner implements Runnable { //clean up active user storage AuthenticationManager.getInstance().removeAllUsersAfterTimeOut(); - + ConfigurationDBUtils.closeSession(); + Thread.sleep(SESSION_CLEANUP_INTERVAL * 1000); } catch (ConfigurationException e) { diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties index 39bfcd36b..072f44981 100644 --- a/id/ConfigWebTool/src/main/resources/applicationResources_de.properties +++ b/id/ConfigWebTool/src/main/resources/applicationResources_de.properties @@ -108,9 +108,13 @@ webpages.inderfederation.moaid.inboundSSO=Eingehendes SSO erlauben webpages.inderfederation.moaid.outboundSSO=Ausgehendes SSO erlauben webpages.inderfederation.moaid.storeSSOSession=SSO Session speichern webpages.inderfederation.moaid.attributQueryURL=AttributQuery Service URL +webpages.inderfederation.moaid.sendPassivRequest=Verwende SAML2 isPassive Attribut +webpages.inderfederation.moaid.perfomLocalAuthOnError=Im Fehlerfall Authentifizierung lokal durchf\u00FChren webpages.interfederation.new.header=Neuen Identity Provider hinzuf\u00FCgen webpages.interfederation.new.vidp=STORK VIDP webpages.interfederation.new.moaid=MOA-ID IDP +webpages.interfederation.new.gateway=STORK<->PVP Gateway +webpages.inderfederation.gateway.entityID=EntityID des PVP Portals @@ -492,9 +496,11 @@ validation.pvp2.metadata.validation=Die Metadaten konnten von der angegebenen UR validation.sso.logouturl.empty=Eine URL zum Single Log-Out Service ist erforderlich. validation.sso.logouturl.valid=Die URL zum Single Log-Out Service wei\u00DFt kein g\u00FCltiges Format auf. -validation.interfederation.moaidp.queryurl.valid=Die URL zum zum AttributQuery Service wei\u00DFt kein g\u00FCltiges Format auf. -validation.interfederation.moaidp.queryurl.empty=Die URL zum zum AttributQuery Service muss f\u00FCr eingehende Single Sign-On Interfederation konfiguriert werden. +validation.interfederation.moaidp.queryurl.valid=Die URL zum AttributQuery Service wei\u00DFt kein g\u00FCltiges Format auf. +validation.interfederation.moaidp.queryurl.empty=Die URL zum AttributQuery Service muss konfiguriert werden. validation.interfederation.moaidp.metadataurl.publicservice=Die Domain des Metadaten Services f\u00FCr diesen IDP erlaubt nur Applikationen aus dem privatwirtschaftlichen Bereich. +validation.interfederation.gateway.entityID.valid=Die EntityID zum PVP Portal wei\u00DFt kein g\u00FCltiges Format auf. +validation.interfederation.gateway.entityID.empty=Die EntityID zum PVP Portal muss konfiguriert werden. validation.saml1.providestammzahl=ProvideStammZahl kann nicht mit Applikationen aus dem privatwirtschaftlichen Bereich kombiniert werden. diff --git a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties index 07c8d708d..b717377e0 100644 --- a/id/ConfigWebTool/src/main/resources/applicationResources_en.properties +++ b/id/ConfigWebTool/src/main/resources/applicationResources_en.properties @@ -108,9 +108,13 @@ webpages.inderfederation.moaid.inboundSSO=Allow inbound SSO webpages.inderfederation.moaid.outboundSSO=Allow outbound SSO webpages.inderfederation.moaid.storeSSOSession=Store SSO session webpages.inderfederation.moaid.attributQueryURL=AttributQuery service URL +webpages.inderfederation.moaid.sendPassivRequest=Use SAML2 isPassive attribute +webpages.inderfederation.moaid.perfomLocalAuthOnError=Local authentication in case of an error webpages.interfederation.new.header=Add new Identity Provider webpages.interfederation.new.vidp=STORK VIDP webpages.interfederation.new.moaid=MOA-ID IDP +webpages.interfederation.new.gateway=STORK<->PVP Gateway +webpages.inderfederation.gateway.entityID=PVP portal EntityID webpages.moaconfig.save.success=MOA-ID has been successfully saved. webpages.moaconfig.header=General configuration @@ -490,8 +494,10 @@ validation.sso.logouturl.empty=URL for Single Log-Out Service is necessary. validation.sso.logouturl.valid=URL for Single Log-Out Service has incorrect format. validation.interfederation.moaidp.queryurl.valid=URL for AttributQuery Service has incorrect format. -validation.interfederation.moaidp.queryurl.empty=URL for AttributQuery Service is necessary for inbound Single Sign-On interfederation. +validation.interfederation.moaidp.queryurl.empty=URL for AttributQuery Service is necessary. validation.interfederation.moaidp.metadataurl.publicservice=The domain of Metadata service for that IDP permits private sector only. +validation.interfederation.gateway.entityID.valid=PVP portal EntityID has an incorrect format. +validation.interfederation.gateway.entityID.empty=PVP portal EntityID is necessary. validation.saml1.providestammzahl=ProvideSourcePIN cannot be combined with applications from private sector. diff --git a/id/ConfigWebTool/src/main/resources/struts.xml b/id/ConfigWebTool/src/main/resources/struts.xml index 68cd85b2f..39c38ae43 100644 --- a/id/ConfigWebTool/src/main/resources/struts.xml +++ b/id/ConfigWebTool/src/main/resources/struts.xml @@ -16,7 +16,10 @@ <interceptors> + <interceptor name="HibernateSessionInterceptor" class="at.gv.egovernment.moa.id.configuration.struts.interceptor.HibernateSessionInterceptor"/> + <interceptor-stack name="OwnStack"> + <interceptor-ref name="HibernateSessionInterceptor" /> <interceptor-ref name="params"> <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^method:.*</param> @@ -85,7 +88,10 @@ <package name="secure" namespace="/secure" extends="struts-default"> <interceptors> + <interceptor name="HibernateSessionInterceptor" class="at.gv.egovernment.moa.id.configuration.struts.interceptor.HibernateSessionInterceptor"/> + <interceptor-stack name="OwnStack"> + <interceptor-ref name="HibernateSessionInterceptor" /> <interceptor-ref name="params"> <param name="excludeParams">^class\..*,^dojo\..*,^struts\..*,^session\..*,^request\..*,^application\..*,^servlet(Request|Response)\..*,^parameters\..*,^method:.*</param> @@ -149,7 +155,7 @@ <action name="newOA" method="newOA" class="at.gv.egovernment.moa.id.configuration.struts.action.EditOAAction"> <result name="editOA">/jsp/editOAGeneral.jsp</result> - <result name="success" type="chain">main</result> + <result name="success">/jsp/mainpage.jsp</result> <result name="error">/error.jsp</result> <result name="reauthentication" type="redirectAction"> <param name="actionName">logout</param> @@ -379,6 +385,7 @@ <action name="loadIDP" method="loadIDPInformation" class="at.gv.egovernment.moa.id.configuration.struts.action.InterfederationIDPAction"> <result name="success-VIDP">/jsp/interfederation/vidp.jsp</result> <result name="success-MOAIDP">/jsp/interfederation/moa_idp.jsp</result> + <result name="success-IDPGATEWAY">/jsp/interfederation/pvpgateway.jsp</result> <result name="notallowed" type="chain">main</result> <result name="error">/error.jsp</result> <result name="reauthentication" type="redirectAction"> @@ -391,6 +398,7 @@ <action name="newIDP" method="newIDP" class="at.gv.egovernment.moa.id.configuration.struts.action.InterfederationIDPAction"> <result name="editOA-VIDP">/jsp/interfederation/vidp.jsp</result> <result name="editOA-MOAIDP">/jsp/interfederation/moa_idp.jsp</result> + <result name="editOA-IDPGATEWAY">/jsp/interfederation/pvpgateway.jsp</result> <result name="success" type="chain">main</result> <result name="error">/error.jsp</result> <result name="reauthentication" type="redirectAction"> @@ -412,6 +420,17 @@ <interceptor-ref name="OwnStack"/> </action> + <action name="saveIDPGateway" method="saveIDP" class="at.gv.egovernment.moa.id.configuration.struts.action.IDPGatewayAction"> + <result name="success" type="chain">main</result> + <result name="error_validation">/jsp/interfederation/pvpgateway.jsp</result> + <result name="error">/error.jsp</result> + <result name="reauthentication" type="redirectAction"> + <param name="actionName">logout</param> + <param name="namespace">/</param> + </result> + <interceptor-ref name="OwnStack"/> + </action> + <action name="saveVIDP" method="saveIDP" class="at.gv.egovernment.moa.id.configuration.struts.action.VIDPAction"> <result name="success" type="chain">main</result> <result name="error_validation">/jsp/interfederation/vidp.jsp</result> diff --git a/id/ConfigWebTool/src/main/webapp/js/common.js b/id/ConfigWebTool/src/main/webapp/js/common.js index f7ef2c415..9f19e88a2 100644 --- a/id/ConfigWebTool/src/main/webapp/js/common.js +++ b/id/ConfigWebTool/src/main/webapp/js/common.js @@ -223,18 +223,36 @@ function oaOnLoad() { function newPeps() { var target = $(document.getElementById("stork_pepslist").getElementsByTagName("tr")).last()[0]; var clone = target.cloneNode(true); + var lastindex; try { - var lastindex = parseInt(clone.innerHTML.match(/name="storkconfig.cpepslist\[(\d)/)[1]); + lastindex = parseInt(clone.innerHTML.match(/name="storkconfig.cpepslist\[(\d*)\]/)[1]); } catch (err) { - - var lastindex = 1; + lastindex = 1; } var nextindex = lastindex + 1; - - clone.innerHTML = clone.innerHTML.replace(/[A-Z]{2}</, '<'); - clone.innerHTML = clone.innerHTML.replace(/<input.*type="hidden".*>/, '<div id="wwgrp_loadGeneralConfig_storkconfig_cpepslist_0__countryCode" class="wwgrp"> <div id="wwctrl_loadGeneralConfig_storkconfig_cpepslist_0__countryCode" class="wwctrl"> <input id="loadGeneralConfig_storkconfig_cpepslist_0__countryCode" class="textfield_short" type="text" value="IT" name="storkconfig.cpepslist[0].countryCode"> </div> </div>'); - clone.innerHTML = clone.innerHTML.replace(/name="storkconfig.cpepslist\[\d/g, 'name="storkconfig.cpepslist[' + nextindex); - clone.innerHTML = clone.innerHTML.replace(/(.*" value=").*?(".*)/g, '$1$2'); + clone.innerHTML = '<tr>\ + <td>\ + <div id="wwgrp_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__countryCode" class="wwgrp">\ + <div id="wwctrl_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__countryCode" class="wwctrl">\ + <input id="loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__countryCode" class="textfield_short" type="text" value="" name="storkconfig.cpepslist['+nextindex+'].countryCode"></div>\ + </div>\ + </td>\ + <td>\ + <div id="wwgrp_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__URL" class="wwgrp">\ + <div id="wwctrl_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__URL" class="wwctrl">\ + <input type="text" name="storkconfig.cpepslist['+nextindex+'].URL" value="" id="loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__URL" class="textfield_long"></div>\ + </div>\ + </td>\ + <td>\ + <div id="wwgrp_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__supportsXMLSignature" class="wwgrp">\ + <div id="wwctrl_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__supportsXMLSignature" class="wwctrl">\ + <input type="checkbox" name="storkconfig.cpepslist['+nextindex+'].supportsXMLSignature" value="true" checked="checked" id="loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__supportsXMLSignature">\ + <input type="hidden" id="__checkbox_loadGeneralConfig_storkconfig_cpepslist_'+nextindex+'__supportsXMLSignature" name="__checkbox_storkconfig.cpepslist['+nextindex+'].supportsXMLSignature" value=""></div>\ + </div>\ + </td>\ + <td>\ + <input type="button" value="löschen" onclick="this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);"></td>\ + </tr>'; target.parentNode.appendChild(clone); } function newStorkAttribute() { diff --git a/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp b/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp index bf5625419..1aeda519f 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/editMOAConfig.jsp @@ -260,6 +260,7 @@ <s:if test="%{storkconfig.cpepslist == null || storkconfig.cpepslist.isEmpty}"> <tr><td><s:textfield name="storkconfig.cpepslist[0].countryCode" value="CC" cssClass="textfield_short"/></td> <td><s:textfield name="storkconfig.cpepslist[0].URL" value="http://" cssClass="textfield_long"/></td> + <td><s:checkbox name="storkconfig.cpepslist[0].supportsXMLSignature" value="true" /></td> <td><input type="button" value="<%=LanguageHelper.getGUIString("webpages.moaconfig.stork.removepeps", request) %>" onclick='this.parentNode.parentNode.parentNode.removeChild(this.parentNode.parentNode);'/></td></tr> </s:if> </table> diff --git a/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp index 3e7404dfc..ef666b357 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/idplist.jsp @@ -46,7 +46,11 @@ <s:form action="newIDP" namespace="/secure" method="POST" > <s:hidden name="interfederationType" value="-VIDP"></s:hidden> <s:submit key="webpages.interfederation.new.vidp"/> - </s:form> + </s:form> + <s:form action="newIDP" namespace="/secure" method="POST" > + <s:hidden name="interfederationType" value="-IDPGATEWAY"></s:hidden> + <s:submit key="webpages.interfederation.new.gateway"/> + </s:form> </div> diff --git a/id/ConfigWebTool/src/main/webapp/jsp/interfederation/pvpgateway.jsp b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/pvpgateway.jsp new file mode 100644 index 000000000..ee86c4b91 --- /dev/null +++ b/id/ConfigWebTool/src/main/webapp/jsp/interfederation/pvpgateway.jsp @@ -0,0 +1,61 @@ +<%@page import="at.gv.egovernment.moa.id.configuration.helper.LanguageHelper"%> + +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="s" uri="/struts-tags" %> + +<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> +<html> + <head> + <meta content="text/html; charset=utf-8" http-equiv="Content-Type"> + <link rel="stylesheet" type="text/css" href="../css/index.css"> + <title><%=LanguageHelper.getGUIString("title", request) %></title> + <script type="text/javascript" src="../js/common.js"></script> + <script src="../js/jquery.js"></script> + </head> + + <body> + + <jsp:include page="../snippets/header_userinfos.jsp"></jsp:include> + + <jsp:include page="../snippets/main_menu.jsp"></jsp:include> + + <div id="information_area"> + <s:if test="hasActionErrors()"> + <div id="error_area"> + <label><%=LanguageHelper.getGUIString("error.title", request) %></label> + <s:actionerror/> + </div> + </s:if> + + <s:if test="authUser.isAdmin()"> + <div id="list_area"> + <h2><%=LanguageHelper.getGUIString("webpages.interfederation.header", request) %></h2> + + <s:form namespace="/secure" method="POST" enctype="multipart/form-data"> + + <s:include value="../snippets/OA/generalInformation.jsp"></s:include> + + <s:include value="../snippets/OA/pvpgateway.jsp"></s:include> + + <s:hidden name="formID" value="%{formID}"></s:hidden> + <s:hidden name="interfederationType" value="%{interfederationType}"></s:hidden> + + <div id="button_area"> + <s:submit key="webpages.edit.back" action="cancleandbackIDP"/> + <s:submit key="webpages.edit.save" action="saveIDPGateway"/> + <s:if test="!isNewOA()"> + <s:submit key="webpages.edit.delete" action="deleteIDP"/> + </s:if> + </div> + + </s:form> + + </div> + </s:if> + + </div> + + <jsp:include page="../snippets/footer.jsp"></jsp:include> + + </body> +</html>
\ No newline at end of file diff --git a/id/ConfigWebTool/src/main/webapp/jsp/openadminrequests.jsp b/id/ConfigWebTool/src/main/webapp/jsp/openadminrequests.jsp index 954bf9b8b..0cd861884 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/openadminrequests.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/openadminrequests.jsp @@ -38,7 +38,9 @@ <div class="oa_config_block"> <h3><%=LanguageHelper.getGUIString("webpages.openadminrequests.oas.header", request) %></h3> - <jsp:include page="snippets/oas_list.jsp"></jsp:include> + <s:include value="snippets/oas_list.jsp"> + <s:param name="editAction">loadOA</s:param> + </s:include> </div> </s:if> diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp index 97d21bcb4..b104e0fa7 100644 --- a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp +++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/interfederation.jsp @@ -20,6 +20,16 @@ labelposition="left" cssClass="checkbox" name="moaIDP.storeSSOSession"></s:checkbox> + + <s:checkbox key="webpages.inderfederation.moaid.sendPassivRequest" + labelposition="left" + cssClass="checkbox" + name="moaIDP.passiveRequest"></s:checkbox> + + <s:checkbox key="webpages.inderfederation.moaid.perfomLocalAuthOnError" + labelposition="left" + cssClass="checkbox" + name="moaIDP.localAuthOnError"></s:checkbox> <s:textfield name="moaIDP.queryURL" value="%{moaIDP.queryURL}" diff --git a/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp new file mode 100644 index 000000000..13fc77081 --- /dev/null +++ b/id/ConfigWebTool/src/main/webapp/jsp/snippets/OA/pvpgateway.jsp @@ -0,0 +1,18 @@ +<%@page import="at.gv.egovernment.moa.id.configuration.helper.LanguageHelper"%> +<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> +<%@ taglib prefix="s" uri="/struts-tags" %> + +<html> + <div id="oa_pvp2_area" class="oa_protocol_area"> + <h4><%=LanguageHelper.getGUIString("webpages.inderfederation.moaid.header", request) %></h4> + + <s:textfield name="pVPGateway.entityID" + value="%{pVPGateway.entityID}" + labelposition="left" + key="webpages.inderfederation.gateway.entityID" + cssClass="textfield_long"> + </s:textfield> + + </div> + +</html>
\ No newline at end of file diff --git a/id/history.txt b/id/history.txt index d1e9f6ec7..b437bc0aa 100644 --- a/id/history.txt +++ b/id/history.txt @@ -1,6 +1,25 @@ Dieses Dokument zeigt die Veränderungen und Erweiterungen
von MOA-ID auf.
+Version MOA-ID Release 2.1.0: Änderungen seit Version MOA-ID 2.0.1
+- Neuerungen:
+ - Einsatz als STORK <-> PVP Gateway
+
+- Änderungen
+ - Anpassung VIDP Code für STORK und STORK Defaultkonfiguration
+ - Anpassung des Codes für IDP Interfederation
+ - Wechsel zu Apache CXF zur Web-Service Kommunikation
+ - Kleinere Bug-Fixes
+ - Libraries aktualisiert:
+ > mysql:mysql-connector-java 5.1.33
+ > javax.xml.bind.jaxb-api 2.2.12
+ > jaxb-xjc 2.2.11
+ > xerces.xercesImpl 2.11.0
+ > xalan 2.7.2
+ > serializer 2.7.2
+
+
+-------------------------------------------------------------------------------
Version MOA-ID Release 2.1.1: Änderungen seit Version MOA-ID 2.1.0
- Neuerungen:
- Verarbeitung von verschlüsselten bPKs auf Seiten von MOA-ID-Auth
diff --git a/id/oa/.gitignore b/id/oa/.gitignore new file mode 100644 index 000000000..4dc009173 --- /dev/null +++ b/id/oa/.gitignore @@ -0,0 +1,2 @@ +/target +/bin diff --git a/id/oa/pom.xml b/id/oa/pom.xml index d5b3de522..93993c8a4 100644 --- a/id/oa/pom.xml +++ b/id/oa/pom.xml @@ -79,10 +79,22 @@ <dependency> <groupId>org.opensaml</groupId> <artifactId>opensaml</artifactId> + <exclusions> + <exclusion> + <groupId>org.slf4j</groupId> + <artifactId>log4j-over-slf4j</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <groupId>org.opensaml</groupId> <artifactId>xmltooling</artifactId> + <exclusions> + <exclusion> + <groupId>org.slf4j</groupId> + <artifactId>log4j-over-slf4j</artifactId> + </exclusion> + </exclusions> </dependency> <dependency> <groupId>javax.servlet</groupId> diff --git a/id/readme_2.1.2.txt b/id/readme_2.1.2.txt new file mode 100644 index 000000000..d0bd2e293 --- /dev/null +++ b/id/readme_2.1.2.txt @@ -0,0 +1,313 @@ +=============================================================================== +MOA ID Version Release 2.1.2 - Wichtige Informationen zur Installation +=============================================================================== + +------------------------------------------------------------------------------- +A. Neuerungen/Änderungen +------------------------------------------------------------------------------- + +Mit MOA ID Version 2.1.2 wurden folgende Neuerungen eingeführt, die jetzt +erstmals in der Veröffentlichung enthalten sind (siehe auch history.txt im +gleichen Verzeichnis): + +- Neuerungen: + - Einsatz als STORK <-> PVP Gateway + +- Änderungen + - Anpassung VIDP Code für STORK + - Anpassung des Codes für IDP Interfederation + - Kleinere Bug-Fixes + - Update von Libraries +------------------------------------------------------------------------------- +B. Durchführung eines Updates +------------------------------------------------------------------------------- + +Es wird generell eine Neuinstallation lt. Handbuch empfohlen! Dennoch ist auch +eine Aktualisierung bestehender Installationen möglich. Je nachdem von welcher +MOA-ID Version ausgegangen wird ergibt sich eine Kombination der nachfolgend angebebenen Updateschritte. + +............................................................................... +B.1 Durchführung eines Updates von Version 2.1.1 auf Version 2.1.2 +............................................................................... + 1. Stoppen Sie den Tomcat, in dem Ihre bisherige Installation betrieben wird. + Fertigen Sie eine Sicherungskopie Ihrer kompletten Tomcat-Installation an. + +2. Entpacken Sie die Distribution von MOA-ID-Auth (moa-id-auth-2.1.2.zip) in + ein temporäres Verzeichnis, in weiterer Folge als MOA_ID_AUTH_INST + bezeichnet. + +3. Wechseln Sie in jenes Verzeichnis, das die Webapplikation von MOA ID Auth + beinhaltet (für gewöhnlich ist dieses Verzeichnis CATALINA_HOME_ID/webapps, + wobei CATALINA_HOME_ID für das Basisverzeichnis der Tomcat-Installation + für MOA ID steht). Löschen Sie darin sowohl die Dateien moa-id-auth.war und + moa-id-configuration.war als auch das komplette Verzeichnis moa-id-auth + und das komplette Verzeichnis moa-id-configuration. + +4. Erstellen Sie eine Sicherungskopie aller "*.jar"-Dateien im Verzeichnis + CATALINA_HOME_ID\endorsed und loeschen Sie diese Dateien danach. + +5. Kopieren Sie alle Dateien aus dem Verzeichnis MOA_ID_AUTH_INST\endorsed in das + Verzeichnis CATALINA_HOME_ID\endorsed + +6. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-auth.war nach + CATALINA_HOME_ID/webapps. + +7. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-configuration.war nach + CATALINA_HOME_ID/webapps. + +8. Kopieren der folgenden Dateien + a.) MOA_ID_AUTH_INST/conf/moa-id/stork/StorkSamlEngine_VIDP.xml -> + CATALINA_HOME/conf/moa-id/stork/StorkSamlEngine_VIDP.xml + Sollte die Datei bereits vorhanden sein erstellen Sie ein Backup der + Datei slo_template.html bevor Sie diese durch die neue Version ersetzen. + +9. Dem STORK KeyStores unter MOA_ID_AUTH_INST/conf/moa-id/keys/storkDemoKeys.jks + (Passwort=local-demo) wurden neue vertrauenswürdige Zertifikate hinzugefügt. + Gleichen Sie bei Bedarf die Zertifikate dieses KeyStores mit Ihrem aktuell + verwendeten KeyStore ab. + +10. Starten Sie den Tomcat neu, achten Sie auf eventuelle Fehlermeldungen im + Logging von MOA ID beim Einlesen der Konfiguration. + + +............................................................................... +B.2 Durchführung eines Updates von Version 2.1.0 auf Version 2.1.1 +............................................................................... + 1. Stoppen Sie den Tomcat, in dem Ihre bisherige Installation betrieben wird. + Fertigen Sie eine Sicherungskopie Ihrer kompletten Tomcat-Installation an. + +2. Entpacken Sie die Distribution von MOA-ID-Auth (moa-id-auth-2.1.0.zip) in + ein temporäres Verzeichnis, in weiterer Folge als MOA_ID_AUTH_INST + bezeichnet. + +3. Erstellen Sie eine Sicherungskopie aller "iaik*.jar"-Dateien im Verzeichnis + JAVA_HOME\jre\lib\ext und loeschen Sie diese Dateien danach. + +4. Kopieren Sie alle Dateien aus dem Verzeichnis MOA_ID_AUTH_INST\ext in das + Verzeichnis JAVA_HOME\jre\lib\ext (Achtung: Java 1.4.x wird nicht mehr + unterstuetzt). + +5. Wechseln Sie in jenes Verzeichnis, das die Webapplikation von MOA ID Auth + beinhaltet (für gewöhnlich ist dieses Verzeichnis CATALINA_HOME_ID/webapps, + wobei CATALINA_HOME_ID für das Basisverzeichnis der Tomcat-Installation + für MOA ID steht). Löschen Sie darin sowohl die Datei moa-id-auth.war als + auch das komplette Verzeichnis moa-id-auth. + +6. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-auth.war nach + CATALINA_HOME_ID/webapps. + +7. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-configuration.war nach + CATALINA_HOME_ID/webapps. + +8. Hinzufügen der zusätzlichen Konfigurationsparameter in der + MOA-ID-Configuration Konfigurationsdatei + CATALINA_HOME\conf\moa-id-configuration\moa-id-configtool.properties + a.) general.moaconfig.key=..... (Passwort zum Ver- und + Entschlüsseln von Konfigurationsparametern in der Datenbank) + +9. Hinzufügen der zusätzlichen Konfigurationsparameter in der MOA-ID-Auth + Konfigurationsdatei CATALINA_HOME\conf\moa-id\moa-id.properties + a.) configuration.moaconfig.key=..... (Passwort zum Ver- und + Entschlüsseln von Konfigurationsparametern in der Datenbank) + +10. Kopieren der folgenden Dateien + a.) MOA_ID_AUTH_INST/conf/moa-id/htmlTemplates/slo_template.html -> + CATALINA_HOME/conf/moa-id/htmlTemplates/slo_template.html + Sollte die Datei bereits vorhanden sein erstellen Sie ein Backup der + Datei slo_template.html bevor Sie diese durch die neue Version ersetzen. + +11. Update des Cert-Stores. + Kopieren Sie den Inhalt des Verzeichnisses + MOA_ID_INST_AUTH\conf\moa-spss\certstore in das Verzeichnis + CATALINA_HOME\conf\moa-spss\certstore. Wenn Sie gefragt werden, ob Sie + vorhandene Dateien oder Unterverzeichnisse überschreiben sollen, dann + bejahen sie das. + +12. Update der Trust-Profile. Wenn Sie Ihre alten Trust-Profile durch die Neuen ersetzen + wollen, dann gehen Sie vor, wie in Punkt a). Wenn Sie Ihre eigenen Trust-Profile + beibehalten wollen, dann gehen Sie vor, wie in Punkt b). + + a. Gehen Sie wie folgt vor, um die Trust-Profile auszutauschen: + + 1) Löschen Sie das Verzeichnis CATALINA_HOME\conf\moa-spss\trustprofiles. + 2) Kopieren Sie das Verzeichnis + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles in das Verzeichnis + CATALINA_HOME\conf\moa-spss. + + b. Falls Sie Ihre alten Trust-Profile beibehalten wollen, gehen Sie wie + folgt vor, um die Profile auf den aktuellen Stand zu bringen: + + 1) Ergänzen Sie ihre Trustprofile durch alle Zertifikate aus den + entsprechenden Profilen im Verzeichnis + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles, die nicht in Ihren + Profilen enthalten sind. Am einfachsten ist es, wenn Sie den Inhalt + der einzelnen Profile aus der Distribution + (MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles) in die entsprechenden + Profile Ihrer Installation (CATALINA_HOME\conf\moa-spss\trustProfiles) + kopieren und dabei die vorhandenen gleichnamigen Zertifikate + überschreiben), also z.B: Kopieren des Inhalts von + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles\ + MOAIDBuergerkarteAuthentisierungsDatenMitTestkarten nach + CATALINA_HOME\conf\moa-spss\trustProfiles\ + MOAIDBuergerkarteAuthentisierungsDatenMitTestkarten usw. + +13. Starten Sie den Tomcat neu, achten Sie auf eventuelle Fehlermeldungen im + Logging von MOA ID beim Einlesen der Konfiguration. + + +............................................................................... +B.3 Durchführung eines Updates von Version 2.0.1 auf Version 2.1.0 +............................................................................... + 1. Stoppen Sie den Tomcat, in dem Ihre bisherige Installation betrieben wird. + Fertigen Sie eine Sicherungskopie Ihrer kompletten Tomcat-Installation an. + +2. Entpacken Sie die Distribution von MOA-ID-Auth (moa-id-auth-2.1.0.zip) in + ein temporäres Verzeichnis, in weiterer Folge als MOA_ID_AUTH_INST + bezeichnet. + +3. Wechseln Sie in jenes Verzeichnis, das die Webapplikation von MOA ID Auth + beinhaltet (für gewöhnlich ist dieses Verzeichnis CATALINA_HOME_ID/webapps, + wobei CATALINA_HOME_ID für das Basisverzeichnis der Tomcat-Installation + für MOA ID steht). Löschen Sie darin sowohl die Datei moa-id-auth.war als + auch das komplette Verzeichnis moa-id-auth. + +4. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-auth.war nach + CATALINA_HOME_ID/webapps. + +5. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-configuration.war nach + CATALINA_HOME_ID/webapps. + +6. Update der STORK Konfiguration + a.) Kopieren Sie die Dateien aus dem Verzeichnis MOA_ID_INST_AUTH\conf\moa-id\stork + in das Verzeichnis CATALINA_HOME\conf\moa-id\stork. + b.) Passen Sie die STORK Konfiguration laut Handbuch -> Konfiguration -> + 2.4 Konfiguration des SamlEngines an. + +7. Hinzufügen der zusätzlichen Konfigurationsparameter in der MOA-ID-Configuration Konfigurationsdatei + CATALINA_HOME\conf\moa-id-configuration\moa-id-configtool.properties + a.) general.ssl.certstore=certs/certstore + b.) general.ssl.truststore=certs/truststore + +8. Kopieren des folgenden zusätzlichen Ordners MOA_ID_AUTH_INST/conf/moa-id-configuration/certs + nach CATALINA_HOME\conf\moa-id-configuration\ + +9. Hinzufügen der zusätzlichen Konfigurationsparameter in der MOA-ID-Auth Konfigurationsdatei + CATALINA_HOME\conf\moa-id\moa-id.properties und Anpassung an das zu verwendeten Schlüsselpaar. + a.) protocols.pvp2.idp.ks.assertion.encryption.alias=pvp_assertion + protocols.pvp2.idp.ks.assertion.encryption.keypassword=password + +10. Kopieren der folgenden zusätzlichen Ordner aus MOA_ID_AUTH_INST/conf/moa-id/ + nach CATALINA_HOME\conf\moa-id\ + a.) MOA_ID_AUTH_INST/conf/moa-id/SLTemplates -> CATALINA_HOME\conf\moa-id\ + b.) MOA_ID_AUTH_INST/conf/moa-id/htmlTemplates/slo_template.html -> + CATALINA_HOME/conf/moa-id/htmlTemplates/slo_template.html + +11. Neuinitialisieren des Datenbank Schema für die MOA-Session. Hierfür stehen + zwei Varianten zur Verfügung. + a.) Ändern Sie in der Konfigurationsdatei für das Modul MOA-ID-Auth + CATALINA_HOME\conf\moa-id\moa-id.properties die Zeile + moasession.hibernate.hbm2ddl.auto=update + zu + moasession.hibernate.hbm2ddl.auto=create + Danach werden die Tabellen beim nächsten Startvorgang neu generiert. + + b.) Löschen Sie alle Tabellen aus dem Datenbank Schema für die MOA-Sessixson + Informationen per Hand. Alle Tabellen werden beim nächsten Start autmatisch neu generiert. + +12 . Starten Sie den Tomcat neu, achten Sie auf eventuelle Fehlermeldungen im + Logging von MOA ID beim Einlesen der Konfiguration. + + +............................................................................... +B.4 Durchführung eines Updates von Version 2.0-RC1 auf Version 2.0.1 +............................................................................... + +1. Stoppen Sie den Tomcat, in dem Ihre bisherige Installation betrieben wird. + Fertigen Sie eine Sicherungskopie Ihrer kompletten Tomcat-Installation an. + +2. Entpacken Sie die Distribution von MOA-ID-Auth (moa-id-auth-2.0.1.zip) in + ein temporäres Verzeichnis, in weiterer Folge als MOA_ID_AUTH_INST + bezeichnet. + Für MOA ID Proxy: + Entpacken Sie die Distribution von MOA-ID-Proxy (moa-id-proxy-2.0.1.zip) in + ein temporäres Verzeichnis, in weiterer Folge als MOA_ID_PROXY_INST + bezeichnet. + +3. Wechseln Sie in jenes Verzeichnis, das die Webapplikation von MOA ID Auth + beinhaltet (für gewöhnlich ist dieses Verzeichnis CATALINA_HOME_ID/webapps, + wobei CATALINA_HOME_ID für das Basisverzeichnis der Tomcat-Installation + für MOA ID steht). Löschen Sie darin sowohl die Datei moa-id-auth.war als + auch das komplette Verzeichnis moa-id-auth. + +4. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-auth.war nach + CATALINA_HOME_ID/webapps. + +5. Kopieren Sie die Datei MOA_ID_AUTH_INST/moa-id-configuration.war nach + CATALINA_HOME_ID/webapps. + +6. Update des Cert-Stores. + Kopieren Sie den Inhalt des Verzeichnisses + MOA_ID_INST_AUTH\conf\moa-spss\certstore in das Verzeichnis + CATALINA_HOME\conf\moa-spss\certstore. Wenn Sie gefragt werden, ob Sie + vorhandene Dateien oder Unterverzeichnisse überschreiben sollen, dann + bejahen sie das. + +7. Update der Trust-Profile. Wenn Sie Ihre alten Trust-Profile durch die Neuen ersetzen + wollen, dann gehen Sie vor, wie in Punkt a). Wenn Sie Ihre eigenen Trust-Profile + beibehalten wollen, dann gehen Sie vor, wie in Punkt b). + + a. Gehen Sie wie folgt vor, um die Trust-Profile auszutauschen: + + 1) Löschen Sie das Verzeichnis CATALINA_HOME\conf\moa-spss\trustprofiles. + 2) Kopieren Sie das Verzeichnis + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles in das Verzeichnis + CATALINA_HOME\conf\moa-spss. + + b. Falls Sie Ihre alten Trust-Profile beibehalten wollen, gehen Sie wie + folgt vor, um die Profile auf den aktuellen Stand zu bringen: + + 1) Ergänzen Sie ihre Trustprofile durch alle Zertifikate aus den + entsprechenden Profilen im Verzeichnis + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles, die nicht in Ihren + Profilen enthalten sind. Am einfachsten ist es, wenn Sie den Inhalt + der einzelnen Profile aus der Distribution + (MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles) in die entsprechenden + Profile Ihrer Installation (CATALINA_HOME\conf\moa-spss\trustProfiles) + kopieren und dabei die vorhandenen gleichnamigen Zertifikate + überschreiben), also z.B: Kopieren des Inhalts von + MOA_ID_INST_AUTH\conf\moa-spss\trustProfiles\ + MOAIDBuergerkarteAuthentisierungsDatenMitTestkarten nach + CATALINA_HOME\conf\moa-spss\trustProfiles\ + MOAIDBuergerkarteAuthentisierungsDatenMitTestkarten usw. + +8. Update der Default html-Templates für die Bürgerkartenauswahl. + + a.) Kopieren Sie die Dateien aus dem Verzeichnis MOA_ID_INST_AUTH\conf\moa-id\htmlTemplates + in das Verzeichnis CATALINA_HOME\conf\moa-id\htmlTemplates. + b.) Kopieren Sie die Dateien aus dem Verzeichnis MOA_ID_INST_AUTH\conf\moa-id-configuration\htmlTemplates + in das Verzeichnis CATALINA_HOME\conf\moa-id-configuration\htmlTemplates. + +9. Update der STORK Konfiguration + a.) Kopieren Sie die Dateien aus dem Verzeichnis MOA_ID_INST_AUTH\conf\moa-id\stork + in das Verzeichnis CATALINA_HOME\conf\moa-id\stork. + b.) Passen Sie die STORK Konfiguration laut Handbuch -> Konfiguration -> + 2.4 Konfiguration des SamlEngines an. + +10. Hinzufügen der zusätzlichen Konfigurationsparameter in der MOA-ID-Auth Konfigurationsdatei + CATALINA_HOME\conf\moa-id\moa-id.properties + + a.) configuration.validation.certificate.QC.ignore=false + b.) protocols.pvp2.assertion.encryption.active=false + +11. Starten Sie den Tomcat neu, achten Sie auf eventuelle Fehlermeldungen im + Logging von MOA ID beim Einlesen der Konfiguration. + + +............................................................................... +B.5 Durchführung eines Updates von Version <= 1.5.1 +............................................................................... + +Bitte führen Sie eine Neuinstallation von MOA ID laut Handbuch durch und passen +Sie die mitgelieferte Musterkonfiguration entsprechend Ihren Bedürfnissen unter +Zuhilfenahme Ihrer bisherigen Konfiguration an. + diff --git a/id/server/auth/.gitignore b/id/server/auth/.gitignore new file mode 100644 index 000000000..4dc009173 --- /dev/null +++ b/id/server/auth/.gitignore @@ -0,0 +1,2 @@ +/target +/bin diff --git a/id/server/auth/pom.xml b/id/server/auth/pom.xml index b43a0e736..dd75ee6aa 100644 --- a/id/server/auth/pom.xml +++ b/id/server/auth/pom.xml @@ -108,6 +108,10 @@ <artifactId>iaik_pki_module</artifactId> <groupId>iaik</groupId> </exclusion> + <exclusion> + <artifactId>axis-wsdl4j</artifactId> + <groupId>axis</groupId> + </exclusion> </exclusions> </dependency> <dependency> diff --git a/id/server/auth/src/main/webapp/index.html b/id/server/auth/src/main/webapp/index.html index 968f211bc..391195def 100644 --- a/id/server/auth/src/main/webapp/index.html +++ b/id/server/auth/src/main/webapp/index.html @@ -14,7 +14,7 @@ </tr>
</table>
<hr/>
- <p class="title">MOA-ID 2.1.1</p>
+ <p class="title">MOA-ID 2.1.2</p>
<hr/>
<h1>Inhalt</h1>
<ol>
diff --git a/id/server/data/deploy/conf/moa-id/htmlTemplates/loginFormFull.html b/id/server/data/deploy/conf/moa-id/htmlTemplates/loginFormFull.html index ef070b8eb..7e2ddc491 100644 --- a/id/server/data/deploy/conf/moa-id/htmlTemplates/loginFormFull.html +++ b/id/server/data/deploy/conf/moa-id/htmlTemplates/loginFormFull.html @@ -720,7 +720,7 @@ } } function onChangeChecks() { - if (top.innerWidth < 650) { + if (self.innerWidth < 650) { document.getElementById("moaidform").setAttribute("target","_parent"); } else { document.getElementById("moaidform").removeAttribute("target"); diff --git a/id/server/data/deploy/conf/moa-id/keys/storkDemoKeys.jks b/id/server/data/deploy/conf/moa-id/keys/storkDemoKeys.jks Binary files differindex 8196ab319..66cdec919 100644 --- a/id/server/data/deploy/conf/moa-id/keys/storkDemoKeys.jks +++ b/id/server/data/deploy/conf/moa-id/keys/storkDemoKeys.jks diff --git a/id/server/data/deploy/conf/moa-id/moa-id.properties b/id/server/data/deploy/conf/moa-id/moa-id.properties index 4290b1985..9d1e931e9 100644 --- a/id/server/data/deploy/conf/moa-id/moa-id.properties +++ b/id/server/data/deploy/conf/moa-id/moa-id.properties @@ -125,3 +125,31 @@ advancedlogging.hibernate.c3p0.timeout=300 advancedlogging.hibernate.c3p0.max_size=20 advancedlogging.hibernate.c3p0.max_statements=0 advancedlogging.hibernate.c3p0.min_size=3 + + +################SZR Client configuration#################################### +## The SZR client is only required if MOA-ID-Auth should be +## use as STORK <-> PVP Gateway. +######## +service.egovutil.szr.test=true +service.egovutil.szr.test.url=https://pvawp.bmi.gv.at/bmi.gv.at/soap/SZ2Services-T/services/SZR +service.egovutil.szr.prod.url=https://pvawp.bmi.gv.at/bmi.gv.at/soap/SZ2Services/services/SZR +service.egovutil.szr.token.version=1.8 +service.egovutil.szr.token.participantid= +service.egovutil.szr.token.gvoudomain= +service.egovutil.szr.token.userid= +service.egovutil.szr.token.cn= +service.egovutil.szr.token.gvouid= +service.egovutil.szr.token.ou= +service.egovutil.szr.token.gvsecclass= +service.egovutil.szr.token.gvfunction= +service.egovutil.szr.token.gvgid= +service.egovutil.szr.roles= +service.egovutil.szr.ssl.keystore.file= +service.egovutil.szr.ssl.keystore.password= +service.egovutil.szr.ssl.keystore.type= +service.egovutil.szr.ssl.truststore.file= +service.egovutil.szr.ssl.truststore.password= +service.egovutil.szr.ssl.truststore.type= +service.egovutil.szr.ssl.trustall=false +service.egovutil.szr.ssl.laxhostnameverification=false
\ No newline at end of file diff --git a/id/server/data/deploy/conf/moa-id/stork/StorkSamlEngine_VIDP.xml b/id/server/data/deploy/conf/moa-id/stork/StorkSamlEngine_VIDP.xml index ef5dc23d2..ee4c636ce 100644 --- a/id/server/data/deploy/conf/moa-id/stork/StorkSamlEngine_VIDP.xml +++ b/id/server/data/deploy/conf/moa-id/stork/StorkSamlEngine_VIDP.xml @@ -116,5 +116,8 @@ <entry key="mandateContent">http://www.stork.gov.eu/1.0/mandateContent</entry> <entry key="representative">http://www.stork.gov.eu/1.0/representative</entry> <entry key="represented">http://www.stork.gov.eu/1.0/represented</entry> + + <!-- ISA 1.18 attributes--> + <entry key="ECApplicationRole">http://www.stork.gov.eu/1.1/ECApplicationRole</entry> </properties> diff --git a/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml b/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml index 9759f1ac5..8d26a1893 100644 --- a/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml +++ b/id/server/data/deploy/conf/moa-spss/SampleMOASPSSConfiguration.xml @@ -79,7 +79,7 @@ </cfg:CrlRetentionIntervals> </cfg:RevocationChecking> </cfg:CertificateValidation> - <cfg:VerifyTransformsInfoProfile> + <cfg:VerifyTransformsInfoProfile> <cfg:Id>MOAIDTransformAuthBlockTable_DE_2.0</cfg:Id> <cfg:Location>profiles/MOAIDTransformAuthBlockTable_DE_2.0.xml</cfg:Location> </cfg:VerifyTransformsInfoProfile> diff --git a/id/server/doc/handbook/config/config.html b/id/server/doc/handbook/config/config.html index 2d2709bcc..9b4190035 100644 --- a/id/server/doc/handbook/config/config.html +++ b/id/server/doc/handbook/config/config.html @@ -74,6 +74,7 @@ </ol> </li> <li> <a href="#basisconfig_moa_id_auth_param_testing">Testing</a></li> + <li><a href="#basisconfig_moa_id_auth_szrclient">SZR Client für STORK <-> PVP Gateway Betrieb</a></li> </ol> </li> </ol> @@ -904,7 +905,130 @@ https://<host>:<port>/moa-id-auth/MonitoringServlet</pre> <p><strong>Defaultwert:</strong> true</p></td> </tr> </table> + <h4><a name="basisconfig_moa_id_auth_szrclient" id="uebersicht_bekanntmachung16"></a>2.2.2.6 SZR Client für STORK <-> PVP Gateway Betrieb</h4> + <p>Die Konfiguration des Stammzahlenregister (SZR) Clients ist nur erforderlich wenn das Modul MOA-ID-Auth als STORK <-> PVP Gateway betrieben wird. Da in diesem Fall die Benutzerin oder der Benutzer über ein PVP Stammportal authentifiziert wird ist eine direkte Generierung der STORK eID während des Anmeldevorgangs nicht möglich. Somit erfolgt für diese Personen einen Stammzahlenregisterabfrage zur Bestimmung der STORK eID.</p> + <p>Für den in MOA-ID-Auth verwendeten SZR Client sind folgende Konfigurationsparameter erforderlich.</p> + <table width="1247" border="1"> + <tr> + <th width="281" scope="col">Name</th> + <th width="261" scope="col">Beispielwert</th> + <th width="683" scope="col">Beschreibung</th> + </tr> + <tr> + <td>service.egovutil.szr.test</td> + <td>false</td> + <td>Definiert ob das Produktivsystem oder das Testsystem des SZR Webservice verwendet werden soll</td> + </tr> + <tr> + <td>service.egovutil.szr.test.url</td> + <td> </td> + <td>URL auf das Test SZR Webservice</td> + </tr> + <tr> + <td>service.egovutil.szr.prod.url</td> + <td> </td> + <td>URL auf das produktive SZR Webservice</td> + </tr> + <tr> + <td>service.egovutil.szr.token.version</td> + <td>1.8</td> + <td><p>Verwendete PVP Version</p> + <p><strong>Hinweis: </strong>der Client implementiert die PVP Version 1.8</p></td> + </tr> + <tr> + <td>service.egovutil.szr.token.participantid</td> + <td> </td> + <td>Org-ID des Portalverbund-Teilnehmers bei dem der Benutzer registriert ist.</td> + </tr> + <tr> + <td>service.egovutil.szr.token.gvoudomain</td> + <td> </td> + <td>Organisations-Domäne des Benutzers</td> + </tr> + <tr> + <td>service.egovutil.szr.token.userid</td> + <td> </td> + <td>UserID, mit dem der Benutzer am Stammportal authentifiziert ist</td> + </tr> + <tr> + <td>service.egovutil.szr.token.cn</td> + <td> </td> + <td>Name des Benutzers oder des System-Principals in der Form Anwendung.Subsystem</td> + </tr> + <tr> + <td>service.egovutil.szr.token.gvouid</td> + <td> </td> + <td>Stammdienststelle: Eindeutige Kennung für die Organisation des Benutzers</td> + </tr> + <tr> + <td>service.egovutil.szr.token.ou</td> + <td> </td> + <td>Stammdienststelle: Verwaltungskennzeichen der mit gvouid bezeichneten Organisation</td> + </tr> + <tr> + <td>service.egovutil.szr.token.gvsecclass</td> + <td> </td> + <td>Sicherheitsklasse</td> + </tr> + <tr> + <td>service.egovutil.szr.token.gvfunction</td> + <td> </td> + <td>Entspricht Funktion in gvPersonenFunktion.</td> + </tr> + <tr> + <td>service.egovutil.szr.token.gvgid</td> + <td> </td> + <td>Globaler Identifier des Benutzers</td> + </tr> + <tr> + <td>service.egovutil.szr.roles</td> + <td>szr-bpk-abfrage,szr-stammzahl-abfrage</td> + <td><p>PVP Rolle für den Zugriff auf das SZR</p> + <p>Hinweis: mehrere Rollen werden mittels ',' getrennt. </p></td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.keystore.file</td> + <td>keys/szr-key.p12</td> + <td>Dateiname des Java Keystore oder PKCS12 Keystore zur Authentifizierung mittels Client Zertifikat am SZR Webservice.</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.keystore.password</td> + <td>password</td> + <td>Passwort für den Keystore mit dem Client Zertifikat</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.keystore.type</td> + <td>PKCS12</td> + <td>Typ des Keystore mit dem Client Zertifikat (PKCS12 oder JKS)</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.truststore.file</td> + <td>keys/truststore.jks</td> + <td>Dateiname des Truststores zur Validierung von SSL Servicerzertifikaten</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.truststore.password</td> + <td>password</td> + <td>Passwort für den Truststore</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.truststore.type</td> + <td>JKS</td> + <td>Typ des TrustStore (PKCS12 oder JKS)</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.trustall</td> + <td>false</td> + <td>Deaktiviert die SSL Serverzertifikatsvalidierung</td> + </tr> + <tr> + <td>service.egovutil.szr.ssl.laxhostnameverification</td> + <td>false</td> + <td>Deaktiviert die Validierung des Hostname mit dem SSL Serverzertifikat</td> + </tr> + </table> <p> </p> + <p><strong>Hinweis:</strong> Detaillierte Informationen zu den einzelnen PVP spezifischen Konfigurationsparametern finden Sie in der entsprechenden PVP Spezifikation.</p> <h2><a name="uebersicht_logging" id="uebersicht_logging"></a>2.3 Konfiguration des Loggings</h2> <p>Die Module MOA-ID-Auth und MOA-ID-Configuration verwendet als Framework für Logging-Information die Open Source Software <code>log4j</code>. Die Konfiguration der Logging-Information erfolgt nicht direkt durch die einzelnen Module, sondern über eine eigene Konfigurationsdatei, die der <span class="term">Java Virtual Machine</span> durch eine <span class="term">System Property </span> mitgeteilt wird. Der Name der <span class="term">System Property </span> lautet <code>log4j.configuration</code>; als Wert der <span class="term">System Property </span> ist eine URL anzugeben, die auf die <code>log4j</code>-Konfigurationsdatei verweist, z.B. </p> <pre>log4j.configuration=file:/C:/Programme/apache/tomcat-4.1.30/conf/moa-id/log4j.properties</pre> diff --git a/id/server/doc/handbook/index.html b/id/server/doc/handbook/index.html index 892a82484..c3b25b390 100644 --- a/id/server/doc/handbook/index.html +++ b/id/server/doc/handbook/index.html @@ -15,7 +15,7 @@ </table> <hr/> <p class="title">MOA-ID (Identifikation) </p> - <p class="subtitle">Übersicht zur Dokumentation der Version 2.1.1 </p> + <p class="subtitle">Übersicht zur Dokumentation der Version 2.1.2 </p> <hr/> <dl> <dt><a href="./intro/intro.html">Einführung</a></dt> diff --git a/id/server/doc/handbook/interfederation/blockdiagramm_storkpvpgateway.png b/id/server/doc/handbook/interfederation/blockdiagramm_storkpvpgateway.png Binary files differnew file mode 100644 index 000000000..dd5a52674 --- /dev/null +++ b/id/server/doc/handbook/interfederation/blockdiagramm_storkpvpgateway.png diff --git a/id/server/doc/handbook/interfederation/interfederation.html b/id/server/doc/handbook/interfederation/interfederation.html index bd97061ab..f52556e23 100644 --- a/id/server/doc/handbook/interfederation/interfederation.html +++ b/id/server/doc/handbook/interfederation/interfederation.html @@ -37,6 +37,7 @@ </ol> </li> <li><a href="#vidp">STORK VIDP Konfiguration</a></li> + <li><a href="#storkpvpgateway">STORK <-> PVP Gateway</a></li> </ol> <p> </p> <h1><a name="general" id="konfigurationsparameter_allgemein_bku7"></a>1 Allgemeines</h1> @@ -153,6 +154,18 @@ <td>Wenn eingehende SSO Intefederation erlaubt ist besteht zusätzlich die Möglichkeit diesen einmal verwendeten IDP an die Benutzersession zu binden. In diesem Fall können weitere SSO Authentifizierungen über diesen interfederation IDP auch ohne Angabe des IDP Identifiers (siehe <a href="#sequenzediagramm">Sequenzdiagramm</a> oder <a href="#usage">Integration in bestehende Systeme</a>) durchgeführt werden.</td> </tr> <tr> + <td><span id="wwlbl_loadIDP_moaIDP_passiveRequest">Verwende SAML2 isPassive Attribut</span></td> + <td> </td> + <td align="center"> </td> + <td>Wird dieser Parameter aktiviert erfolgt der Authentifizierungsrequest im Schritt 9 (siehe <a href="#sequenzediagramm">Sequenzdiagramm</a>) unter Verwendung des SAML 2 <em>isPassiv</em> Flags. Wenn die Benutzerin oder der Benutzer keine aktive SSO Session an diesem IDP besitzt wird ein Fehler returniert und KEINE Authentifizierung an diesem IDP durchgeführt. </td> + </tr> + <tr> + <td><span id="wwlbl_loadIDP_moaIDP_localAuthOnError">Im Fehlerfall Authentifizierung lokal durchführen</span></td> + <td> </td> + <td align="center"> </td> + <td><p>Wird dieser Parameter aktiviert erfolgt im Falle eines returnierten Fehlers im Schritt 11 (siehe <a href="#sequenzediagramm">Sequenzdiagramm</a>) keine lokale Authentifizierung und dem Service Provider wird eine Fehlermeldung returniert. </p></td> + </tr> + <tr> <td><span id="wwlbl_loadIDP_moaIDP_queryURL">AttributQuery Service URL</span></td> <td>https://demo.egiz.gv.at/moa-id-auth/pvp2/attributequery</td> <td align="center">X</td> @@ -269,6 +282,14 @@ <td>StorkAttributeRequestProvider</td> <td>Allgemeines Plugin, wird verwendet für die Restfälle.</td> </tr> + <tr> + <td>PVPAuthenticationProvider</td> + <td><p>Dieser Provider dient zur Authentifizierung des Benutzers über den Portalverbund der österreichischen Behörden. Wird ein zu diesem Provider konfiguriertes Attribut angefragt erfolgt die Authentifizerung des Benutzers NICHT am VIDP sondern in der nationalen Infrastruktur, wobei die Anmeldedaten über den VIDP an den Service Provider weitergereicht werden. Als URL ist der Link auf den nationalen <a href="#storkpvpgateway">STORK<->PVP Gateway</a> zu hinterlegen.</p> + <p><strong>Hinweis:</strong> Aktuell fordert folgende Attribute eine nationale Authentifizierung: </p> + <ul> + <li><em>ECApplicationRole</em></li> + </ul></td> + </tr> </table> <p> </p> <p>Beispiel eines Eintrages für Attributprovider:</p> @@ -283,8 +304,75 @@ <td>http://mis.testvidp.at/moa-id-auth/stork2/MISProvider</td> <td>mandateContent,<span class="term">attribut1</span>,<span class="term">attribut2</span></td> </tr> +</table></pre> +<p> </p> +<h1><a name="storkpvpgateway" id="konfigurationsparameter_allgemein_bku10"></a>5 STORK <-> PVP Gateway</h1> +<p>Das Modul MOA-ID-Auth kann auch als Gateway zwischen dem Portalverbund der österreichischen Behörden und der STORK Infrastruktur betrieben werden. Diese Konfiguration konfiguriert einen Gateway welcher zur Authentifizierung österreichischer Benutzerinnen oder Benutzer im Falle einer STORK Anmeldung mit Hilfe der österreichischen PVP Infrastruktur dient. Der Einsprung zum Gateway erfolgt über den <em>PVPAuthenticationProvider</em> in der <a href="#vidp">VIDP Konfiguration</a>.</p> +<p>Die nachstehende Grafik skizziert den Prozessfluss eines solchen Anmeldevorgangs.</p> +<p><img src="blockdiagramm_storkpvpgateway.png" width="1000" height="734" alt="Blockdiagramm STORK-PVP Gateway"></p> +<ol> + <li>Eine österreichische Benutzerin oder ein österreichischer Benutzer möchte sich an einer europäischen Online Applikation (Applikation 1) anmelden.</li> + <li>Die Benutzerin oder der Benutzer wird an den entsprechenden VIDP unter Verwendung des STORK Protokolls zur Authentifizierung weitergeleitet. Für den Fall das spezielle Attribute durch die Applikation angefordert wurden (z.B. <em>ECApplicationRole</em>) kann die Authentifizierung nicht am VIDP vorgenommen werden. In diesem Fall erfolgt eine Weiterleitung an den nationalen STORK-PVP Gateway (siehe <a href="#vidp">VIDP Konfiguration</a>).</li> + <li>Die Benutzerin oder der Benutzer wird an den zentralen STORK-PVP Gateway weitergeleitet. Der STORK-PVP Gateway generiert einen PVP Authentifizierungsrequest und sendet diesen an das im Gateway konfigurierte Stamm- oder Anwendungsportal. Hierfür muss das Stamm- oder Anwendungsportal als <a href="#config">MOA-ID IDP</a> konfiguriert sein.</li> + <li>Die Benutzerin oder der Benutzer wird an das jeweilige Stamm- oder Anwendungsportal weitergeleitet wo die eigentliche Authentifizierung erfolgt. Nach erfolgreicher Authentifizierung werden PVP spezifische Authentifizierungsdaten generiert.</li> + <li>Diese PVP spezifischen Authentifizierungsdaten werden an den STORK-PVP Gateway übertragen (PVP Assertion). Der Gateway validiert die Assertion und generiert eine STORK protokollspezifsche Assertion inkl. Signatur aus den PVP Authentifizierungsdaten (Mapping aller Attribute und Benutzerrollen). Sollte eine direkte Generierung der STORK eID nicht möglich sein wird diese an Stammzahlenregister (SZR) abgefragt.</li> + <li>Optional: Abfrage der STORK eID am Stammzahlenregister.</li> + <li>Die STORK Assertion wird vom Gateway an den VIDP übertragen und am VIDP validiert. Anschließend wird STORK Assertion für die Applikation 1 generiert und durch den VIDP signiert.</li> + <li>Die STORK Assertion wird an die Applikation 1 übermittelt. Nach gültiger Validierung ist die Benutzerin oder der Benutzer an Applikation 1 authentifiziert.</li> +</ol> +<p> </p> +<p>Die Konfiguration eines STORK-PVP Gateways besteht aus folgenden Elementen.</p> +<table width="1199" border="1"> + <tr> + <th width="153" scope="col">Name</th> + <th width="204" scope="col">Beispielwert</th> + <th width="57" scope="col">Optional</th> + <th width="757" scope="col">Beschreibung</th> + </tr> + <tr> + <td>Online-Applikation ist aktiviert</td> + <td> </td> + <td align="center"> </td> + <td>Aktiviert oder deaktiviert den Gatewy. Es können nur aktive Gatewaykonfigurationen verwendet werden.</td> + </tr> + <tr> + <td><p>Eindeutiger Identifikator</p></td> + <td>https://vidp.egiz.gv.at/moa-id-auth/</td> + <td align="center"> </td> + <td><p>Dieser Parameter dient als Schlüssel zum Auffinden der Gateway Konfigurationsparameter. Hierfür ist ein eindeutiger Identifikator für die VIDP Instanz erforderlich, welcher diesen Gateway nutzen möchte. Dieser eindeutige Identifikator muss mindestens dem URL-Präfix der nach außen sichtbaren Domäne des VIDP entsprechen</p></td> + </tr> + <tr> + <td><p>Name der <br> + Online-Applikation</p></td> + <td>IT STORK-PVP Gateway</td> + <td align="center"> </td> + <td>Hier muss ein benutzerfreundlicher Name für den Gateway angegeben werden. </td> + </tr> + <tr> + <td>Privatwirtschaftliche Applikation</td> + <td> </td> + <td align="center"> </td> + <td><p>Definiert ob der VIDP, welcher den Gateway verwendet dem öffentlichen Bereich oder dem privatwirtschaftlichen Bereich (Business Service) zugeordnet ist.</p> + <p><strong>Hinweis</strong>: im STORK Kontext immer privatwirtschaftlich. </p></td> + </tr> </table> -</pre> +<p> </p> +<table width="1199" border="1"> + <tr> + <th width="153" scope="col">Name</th> + <th width="204" scope="col">Beispielwert</th> + <th width="57" scope="col">Optional</th> + <th width="757" scope="col">Beschreibung</th> + </tr> + <tr> + <td><span id="wwlbl_loadIDP_pVPGateway_entityID">EntityID des PVP Portals:</span></td> + <td> </td> + <td align="center"> </td> + <td><p>Dieser Parameter definiert die EntityID des Stamm- oder Anwendungsportals an welches die Benutzerin oder der Benutzer zur Authentifizierung weitergeleitet werden soll. </p> + <p><strong>Hinweis:</strong> In der Interfederation Konfiguration muss ein MOA-ID IDP mit der entsprechenden EntityID konfiguriert sein.</p></td> + </tr> +</table> +<p> </p> <p> </p> <h1><a name="referenzierte_spezifikation" id="uebersicht_zentraledatei_aktualisierung30"></a>A Referenzierte Spezifikation</h1> <table class="fixedWidth" border="1" cellpadding="2"> diff --git a/id/server/doc/handbook/protocol/protocol.html b/id/server/doc/handbook/protocol/protocol.html index e7658875c..1c6e51661 100644 --- a/id/server/doc/handbook/protocol/protocol.html +++ b/id/server/doc/handbook/protocol/protocol.html @@ -632,6 +632,10 @@ Redirect Binding</td> <td>1204</td> <td>Ein STORK Attribut weißt ein fehlerhaftes Format auf.</td> </tr> + <tr> + <td>1205</td> + <td>Der geforderte QAA Level ist höher als der QAA Level der gewählten Authentifizierungsmethode</td> + </tr> </table> <h3><a name="statuscodes_4xxxx" id="allgemeines_zugangspunkte8"></a>1.3.2 Statuscodes 4xxxx</h3> <p>Alles Statuscodes beginnend mit der Zahl vier beschreiben Fehler die während der Kommunikation mit externen Services aufgetreten sind.</p> diff --git a/id/server/idserverlib/.gitignore b/id/server/idserverlib/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/id/server/idserverlib/.gitignore @@ -0,0 +1 @@ +/target diff --git a/id/server/idserverlib/bin/.gitignore b/id/server/idserverlib/bin/.gitignore new file mode 100644 index 000000000..e2c1dc811 --- /dev/null +++ b/id/server/idserverlib/bin/.gitignore @@ -0,0 +1,2 @@ +/src +/src diff --git a/id/server/idserverlib/pom.xml b/id/server/idserverlib/pom.xml index 00d128ca5..65004490b 100644 --- a/id/server/idserverlib/pom.xml +++ b/id/server/idserverlib/pom.xml @@ -71,6 +71,14 @@ <groupId>javax.servlet</groupId>
<artifactId>servlet-api</artifactId>
</exclusion>
+ <exclusion>
+ <artifactId>axis-wsdl4j</artifactId>
+ <groupId>axis</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>jaxb-impl</artifactId>
+ <groupId>com.sun.xml.bind</groupId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -83,17 +91,58 @@ <artifactId>webservices-tools</artifactId>
<version>2.3</version>
</dependency> -->
- <dependency>
+<!-- <dependency>
<groupId>org.glassfish.metro</groupId>
<artifactId>webservices-rt</artifactId>
<version>2.3</version>
- </dependency>
+ </dependency> -->
+
+ <dependency>
+ <groupId>at.gv.util</groupId>
+ <artifactId>egovutils</artifactId>
+ <!-- <version>1.0.7</version> -->
+ <version>2.0.0</version>
+ <exclusions>
+ <exclusion>
+ <groupId>com.sun</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>xalan</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <artifactId>bcprov-jdk16</artifactId>
+ <groupId>bouncycastle</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>jaxb-impl</artifactId>
+ <groupId>com.sun.xml.bind</groupId>
+ </exclusion>
+ <exclusion>
+ <artifactId>jaxb-core</artifactId>
+ <groupId>com.sun.xml.bind</groupId>
+ </exclusion>
+ </exclusions>
+ </dependency>
<dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
</dependency>
+ <!-- Required for MOA-SPSS API access -->
+ <dependency>
+ <groupId>com.sun.xml.rpc</groupId>
+ <artifactId>jaxrpc-impl</artifactId>
+ <version>1.1.3_01</version>
+ </dependency>
+
+
<dependency>
<groupId>javax.mail</groupId>
<artifactId>mail</artifactId>
@@ -231,6 +280,14 @@ <groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.apache.xerces</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>xalan</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
</exclusions>
</dependency>
<dependency>
@@ -241,6 +298,22 @@ <groupId>org.slf4j</groupId>
<artifactId>log4j-over-slf4j</artifactId>
</exclusion>
+ <exclusion>
+ <groupId>org.slf4j</groupId>
+ <artifactId>log4j-over-slf4j</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>org.apache.xerces</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <groupId>xalan</groupId>
+ <artifactId>*</artifactId>
+ </exclusion>
+ <exclusion>
+ <artifactId>bcprov-jdk15on</artifactId>
+ <groupId>org.bouncycastle</groupId>
+ </exclusion>
</exclusions>
</dependency>
@@ -317,6 +390,10 @@ <artifactId>bcprov-jdk16</artifactId>
<groupId>org.bouncycastle</groupId>
</exclusion>
+ <exclusion>
+ <artifactId>jaxws-tools</artifactId>
+ <groupId>com.sun.xml.ws</groupId>
+ </exclusion>
</exclusions>
</dependency>
</dependencies>
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/StatisticLogger.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/StatisticLogger.java index f20339506..b68db92a4 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/StatisticLogger.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/advancedlogging/StatisticLogger.java @@ -110,8 +110,7 @@ public class StatisticLogger { Logger.warn("Advanced logging failed: OA can not be found in database."); return; } - - + StatisticLog dblog = new StatisticLog(); //set actual date and time @@ -125,12 +124,8 @@ public class StatisticLogger { dblog.setOafriendlyName(dbOA.getFriendlyName()); boolean isbusinessservice = isBusinessService(dbOA); - dblog.setBusinessservice(isbusinessservice); - - if (isbusinessservice) - dblog.setOatarget(dbOA.getAuthComponentOA().getIdentificationNumber().getValue()); - else - dblog.setOatarget(dbOA.getTarget()); + dblog.setBusinessservice(isbusinessservice); + dblog.setOatarget(authData.getBPKType()); dblog.setInterfederatedSSOSession(authData.isInterfederatedSSOSession()); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/AuthenticationDataBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/AuthenticationDataBuilder.java index a8a7d0c51..52488c3cb 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/AuthenticationDataBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/AuthenticationDataBuilder.java @@ -31,7 +31,6 @@ import java.security.PrivateKey; import java.util.ArrayList; import java.util.Arrays; import java.util.Date; -import java.util.Iterator; import java.util.List; import java.util.regex.Matcher; import java.util.regex.Pattern; @@ -66,6 +65,7 @@ import at.gv.egovernment.moa.id.auth.data.IdentityLink; import at.gv.egovernment.moa.id.auth.data.VerifyXMLSignatureResponse; import at.gv.egovernment.moa.id.auth.exception.BuildException; import at.gv.egovernment.moa.id.auth.exception.DynamicOABuildException; +import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.auth.exception.ParseException; import at.gv.egovernment.moa.id.auth.exception.WrongParametersException; import at.gv.egovernment.moa.id.auth.parser.IdentityLinkAssertionParser; @@ -78,6 +78,7 @@ import at.gv.egovernment.moa.id.config.auth.AuthConfigurationProvider; import at.gv.egovernment.moa.id.config.auth.IOAAuthParameters; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.AuthenticationData; +import at.gv.egovernment.moa.id.data.AuthenticationRoleFactory; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.moduls.IRequest; import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; @@ -95,6 +96,7 @@ import at.gv.egovernment.moa.id.protocols.saml1.SAML1AuthenticationData; import at.gv.egovernment.moa.id.protocols.saml1.SAML1RequestImpl; import at.gv.egovernment.moa.id.storage.AuthenticationSessionStoreage; import at.gv.egovernment.moa.id.util.IdentityLinkReSigner; +import at.gv.egovernment.moa.id.util.PVPtoSTORKMapper; import at.gv.egovernment.moa.id.util.ParamValidatorUtils; import at.gv.egovernment.moa.id.util.client.mis.simple.MISMandate; import at.gv.egovernment.moa.logging.Logger; @@ -102,6 +104,11 @@ import at.gv.egovernment.moa.util.Base64Utils; import at.gv.egovernment.moa.util.Constants; import at.gv.egovernment.moa.util.MiscUtil; import at.gv.egovernment.moa.util.XPathUtils; +import at.gv.util.client.szr.SZRClient; +import at.gv.util.config.EgovUtilPropertiesConfiguration; +import at.gv.util.ex.EgovUtilException; +import at.gv.util.wsdl.szr.SZRException; +import at.gv.util.xsd.szr.PersonInfoType; /** * @author tlenz @@ -170,7 +177,11 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { //get OnlineApplication from MOA-ID-Auth configuration oaParam = AuthConfigurationProvider.getInstance() .getOnlineApplicationParameter(oaID); - + + //build OA dynamically from STROK request if this OA is used as STORK<->PVP gateway + if (oaParam.isSTORKPVPGateway()) + oaParam = DynamicOAAuthParameterBuilder.buildFromAuthnRequest(oaParam, protocolRequest); + } else { //build OnlineApplication dynamic from requested attributes oaParam = DynamicOAAuthParameterBuilder.buildFromAttributeQuery(reqAttributes, interfIDP); @@ -342,23 +353,46 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { Logger.debug("Build AuthData from assertion starts ...."); - authData.setFamilyName(extractor.getAttribute(PVPConstants.PRINCIPAL_NAME_NAME)); - authData.setGivenName(extractor.getAttribute(PVPConstants.GIVEN_NAME_NAME)); - authData.setDateOfBirth(extractor.getAttribute(PVPConstants.BIRTHDATE_NAME)); - authData.setBPKType(extractor.getAttribute(PVPConstants.EID_SECTOR_FOR_IDENTIFIER_NAME)); - authData.setCcc(extractor.getAttribute(PVPConstants.EID_ISSUING_NATION_NAME)); - authData.setBkuURL(extractor.getAttribute(PVPConstants.EID_CCS_URL_NAME)); - authData.setIdentificationValue(extractor.getAttribute(PVPConstants.EID_SOURCE_PIN_NAME)); - authData.setIdentificationType(extractor.getAttribute(PVPConstants.EID_SOURCE_PIN_TYPE_NAME)); + authData.setIsBusinessService(oaParam.getBusinessService()); + + authData.setFamilyName(extractor.getSingleAttributeValue(PVPConstants.PRINCIPAL_NAME_NAME)); + authData.setGivenName(extractor.getSingleAttributeValue(PVPConstants.GIVEN_NAME_NAME)); + authData.setDateOfBirth(extractor.getSingleAttributeValue(PVPConstants.BIRTHDATE_NAME)); + authData.setBPKType(extractor.getSingleAttributeValue(PVPConstants.EID_SECTOR_FOR_IDENTIFIER_NAME)); + authData.setCcc(extractor.getSingleAttributeValue(PVPConstants.EID_ISSUING_NATION_NAME)); + authData.setBkuURL(extractor.getSingleAttributeValue(PVPConstants.EID_CCS_URL_NAME)); + authData.setIdentificationValue(extractor.getSingleAttributeValue(PVPConstants.EID_SOURCE_PIN_NAME)); + authData.setIdentificationType(extractor.getSingleAttributeValue(PVPConstants.EID_SOURCE_PIN_TYPE_NAME)); if (extractor.containsAttribute(PVPConstants.BPK_NAME)) { - String pvpbPK = extractor.getAttribute(PVPConstants.BPK_NAME); - authData.setBPK(pvpbPK.split(":")[1]); + String pvpbPK = extractor.getSingleAttributeValue(PVPConstants.BPK_NAME); + String[] spitted = pvpbPK.split(":"); + authData.setBPK(spitted[1]); + if (MiscUtil.isEmpty(authData.getBPKType())) { + Logger.debug("PVP assertion contains NO bPK/wbPK target attribute. " + + "Starting target extraction from bPK/wbPK prefix ..."); + //exract bPK/wbPK type from bpk attribute value prefix if type is + //not transmitted as single attribute + Pattern pattern = Pattern.compile("[a-zA-Z]{2}(-[a-zA-Z]+)?"); + Matcher matcher = pattern.matcher(spitted[0]); + if (matcher.matches()) { + //find public service bPK + authData.setBPKType(Constants.URN_PREFIX_CDID + "+" + spitted[0]); + Logger.debug("Found bPK prefix. Set target to " + authData.getBPKType()); + + } else { + //find business service wbPK + authData.setBPKType(Constants.URN_PREFIX_WBPK+ "+" + spitted[0]); + Logger.debug("Found wbPK prefix. Set target to " + authData.getBPKType()); + + } + } } + boolean foundEncryptedbPKForOA = false; if (extractor.containsAttribute(PVPConstants.ENC_BPK_LIST_NAME)) { List<String> encbPKList = Arrays.asList( - extractor.getAttribute(PVPConstants.ENC_BPK_LIST_NAME).split(";")); + extractor.getSingleAttributeValue(PVPConstants.ENC_BPK_LIST_NAME).split(";")); authData.setEncbPKList(encbPKList); for (String fullEncbPK : encbPKList) { int index = fullEncbPK.indexOf("|"); @@ -372,6 +406,7 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { + oaParam.getPublicURLPrefix() + " Start decryption process ..."); PrivateKey privKey = oaParam.getBPKDecBpkDecryptionKey(); + foundEncryptedbPKForOA = true; if (privKey != null) { try { String bPK = BPKBuilder.decryptBPK(encbPK, oaParam.getTarget(), privKey); @@ -406,20 +441,129 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { } } - if (MiscUtil.isEmpty(authData.getBPK()) && authData.getEncbPKList().size() == 0) { - Logger.error("Federated assertion include no bPK or encrypted bPK"); + if (MiscUtil.isEmpty(authData.getIdentificationValue()) && + MiscUtil.isEmpty(authData.getBPK()) && + !foundEncryptedbPKForOA) { + Logger.info("Federated assertion include no bPK, encrypted bPK or baseID"); throw new AssertionAttributeExtractorExeption("No " + PVPConstants.BPK_FRIENDLY_NAME - + " or " + PVPConstants.ENC_BPK_LIST_FRIENDLY_NAME); + + " or " + PVPConstants.EID_SOURCE_PIN_NAME + + " or " + PVPConstants.ENC_BPK_LIST_NAME); } - if (extractor.containsAttribute(PVPConstants.EID_CITIZEN_QAA_LEVEL_NAME)) - authData.setQAALevel(PVPConstants.STORK_QAA_PREFIX + - extractor.getAttribute(PVPConstants.EID_CITIZEN_QAA_LEVEL_NAME)); + //check if received bPK matchs to online application configuration + //and no encrypted bPK is found for this oa + if (!matchsReceivedbPKToOnlineApplication(oaParam, authData) + && !foundEncryptedbPKForOA) { + Logger.info("Received bPK/wbPK does not match to online application"); + + if (MiscUtil.isEmpty(authData.getIdentificationValue())) { + Logger.info("No baseID found. Connect SZR to reveive baseID ..."); + try { + EgovUtilPropertiesConfiguration eGovClientsConfig = AuthConfigurationProvider.getInstance().geteGovUtilsConfig(); + if (eGovClientsConfig != null) { + SZRClient szrclient = new SZRClient(eGovClientsConfig); + + Logger.debug("Create SZR request to get baseID ... "); + PersonInfoType personInfo = new PersonInfoType(); + at.gv.util.xsd.szr.persondata.PhysicalPersonType person = new at.gv.util.xsd.szr.persondata.PhysicalPersonType(); + personInfo.setPerson(person); + at.gv.util.xsd.szr.persondata.PersonNameType name = new at.gv.util.xsd.szr.persondata.PersonNameType(); + person.setName(name); + at.gv.util.xsd.szr.persondata.IdentificationType idValue = new at.gv.util.xsd.szr.persondata.IdentificationType(); + person.setIdentification(idValue); + + //set bPK or wbPK + idValue.setValue(authData.getBPK()); + idValue.setType(authData.getBPKType()); + + //set person information + name.setGivenName(authData.getGivenName()); + name.setFamilyName(authData.getFamilyName()); + if (authData.getDateOfBirth() != null) + person.setDateOfBirth(authData.getFormatedDateOfBirth()); + + //request szr and store baseID + authData.setIdentificationValue(szrclient.getStammzahl(personInfo)); + authData.setIdentificationType(Constants.URN_PREFIX_BASEID); + + } else { + Logger.warn("No SZR clieht configuration found. Interfederation SSO login not possible."); + throw new AssertionAttributeExtractorExeption("No " + PVPConstants.BPK_FRIENDLY_NAME + + " or " + PVPConstants.EID_SOURCE_PIN_NAME); + + } + + } catch (ConfigurationException e) { + Logger.warn("SZR connection FAILED. Interfederation SSO login not possible.", e); + throw new AssertionAttributeExtractorExeption("No " + PVPConstants.BPK_FRIENDLY_NAME + + " or " + PVPConstants.EID_SOURCE_PIN_NAME); + + } catch (EgovUtilException e) { + Logger.warn("SZR connection FAILED. Interfederation SSO login not possible.", e); + throw new AssertionAttributeExtractorExeption("No " + PVPConstants.BPK_FRIENDLY_NAME + + " or " + PVPConstants.EID_SOURCE_PIN_NAME); + + } catch (SZRException e) { + Logger.warn("SZR connection FAILED. Interfederation SSO login not possible.", e); + throw new AssertionAttributeExtractorExeption("No " + PVPConstants.BPK_FRIENDLY_NAME + + " or " + PVPConstants.EID_SOURCE_PIN_NAME); + + } + } + + //build OA specific bPK/wbPK information + buildOAspecificbPK(oaParam, authData, + authData.getIdentificationValue(), + authData.getIdentificationType()); + + } + + if (MiscUtil.isEmpty(authData.getBPK())) { + Logger.debug("Calcutlate bPK from baseID"); + buildOAspecificbPK(oaParam, authData, + authData.getIdentificationValue(), + authData.getIdentificationType()); + + } + + try { + String qaaLevel = extractor.getQAALevel(); + if (MiscUtil.isNotEmpty(qaaLevel) && + qaaLevel.startsWith(PVPConstants.STORK_QAA_PREFIX)) { + authData.setQAALevel(qaaLevel); + + } else { + Logger.debug("Found PVP QAA level. QAA mapping process starts ... "); + String mappedQAA = PVPtoSTORKMapper.getInstance().mapQAALevel(qaaLevel); + if (MiscUtil.isNotEmpty(mappedQAA)) + authData.setQAALevel(mappedQAA); + + else + throw new AssertionAttributeExtractorExeption("PVP SecClass not mappable"); + + } + + } catch (AssertionAttributeExtractorExeption e) { + Logger.warn("No QAA level found in <RequestedAuthnContext> element of interfederated assertion. " + + "(ErrorHeader=" + e.getMessage() + ")"); + if (extractor.containsAttribute(PVPConstants.EID_CITIZEN_QAA_LEVEL_NAME)) { + authData.setQAALevel(PVPConstants.STORK_QAA_PREFIX + + extractor.getSingleAttributeValue(PVPConstants.EID_CITIZEN_QAA_LEVEL_NAME)); + + } else { + Logger.info("No QAA level found. Set to default level " + + PVPConstants.STORK_QAA_PREFIX + "1"); + authData.setQAALevel(PVPConstants.STORK_QAA_PREFIX + "1"); + + } + + } + if (extractor.containsAttribute(PVPConstants.EID_AUTH_BLOCK_NAME)) { try { - byte[] authBlock = Base64Utils.decode(extractor.getAttribute(PVPConstants.EID_AUTH_BLOCK_NAME), false); + byte[] authBlock = Base64Utils.decode(extractor.getSingleAttributeValue(PVPConstants.EID_AUTH_BLOCK_NAME), false); authData.setAuthBlock(new String(authBlock, "UTF-8")); } catch (IOException e) { @@ -431,7 +575,7 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { if (extractor.containsAttribute(PVPConstants.EID_SIGNER_CERTIFICATE_NAME)) { try { authData.setSignerCertificate(Base64Utils.decode( - extractor.getAttribute(PVPConstants.EID_SIGNER_CERTIFICATE_NAME), false)); + extractor.getSingleAttributeValue(PVPConstants.EID_SIGNER_CERTIFICATE_NAME), false)); } catch (IOException e) { Logger.error("Received SignerCertificate is not valid", e); @@ -441,10 +585,10 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { if (extractor.containsAttribute(PVPConstants.EID_IDENTITY_LINK_NAME)) { try { - InputStream idlStream = Base64Utils.decodeToStream(extractor.getAttribute(PVPConstants.EID_IDENTITY_LINK_NAME), false); + InputStream idlStream = Base64Utils.decodeToStream(extractor.getSingleAttributeValue(PVPConstants.EID_IDENTITY_LINK_NAME), false); IdentityLink idl = new IdentityLinkAssertionParser(idlStream).parseIdentityLink(); - authData.setIdentityLink(idl); - + buildOAspecificIdentityLink(oaParam, authData, idl); + } catch (ParseException e) { Logger.error("Received IdentityLink is not valid", e); @@ -456,12 +600,12 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { // set mandate attributes - authData.setMandateReferenceValue(extractor.getAttribute(PVPConstants.MANDATE_REFERENCE_VALUE_NAME)); + authData.setMandateReferenceValue(extractor.getSingleAttributeValue(PVPConstants.MANDATE_REFERENCE_VALUE_NAME)); if (extractor.containsAttribute(PVPConstants.MANDATE_FULL_MANDATE_NAME)) { try { byte[] mandate = Base64Utils.decode( - (extractor.getAttribute(PVPConstants.MANDATE_FULL_MANDATE_NAME)), false); + (extractor.getSingleAttributeValue(PVPConstants.MANDATE_FULL_MANDATE_NAME)), false); if (authData.getMISMandate() == null) authData.setMISMandate(new MISMandate()); @@ -502,9 +646,9 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { legalperson.getIdentification().add(legalID ); mandator.setCorporateBody(legalperson ); - legalperson.setFullName(extractor.getAttribute(PVPConstants.MANDATE_LEG_PER_FULL_NAME_NAME)); - legalID.setType(extractor.getAttribute(PVPConstants.MANDATE_LEG_PER_SOURCE_PIN_TYPE_NAME)); - idvalue.setValue(extractor.getAttribute(PVPConstants.MANDATE_LEG_PER_SOURCE_PIN_NAME)); + legalperson.setFullName(extractor.getSingleAttributeValue(PVPConstants.MANDATE_LEG_PER_FULL_NAME_NAME)); + legalID.setType(extractor.getSingleAttributeValue(PVPConstants.MANDATE_LEG_PER_SOURCE_PIN_TYPE_NAME)); + idvalue.setValue(extractor.getSingleAttributeValue(PVPConstants.MANDATE_LEG_PER_SOURCE_PIN_NAME)); //build natural person short mandate } else if ( (extractor.containsAttribute(PVPConstants.MANDATE_NAT_PER_SOURCE_PIN_NAME) || @@ -524,18 +668,18 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { Value idValue = new Value(); persID.setValue(idValue ); - String[] pvp2GivenName = extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_GIVEN_NAME_NAME).split(" "); + String[] pvp2GivenName = extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_GIVEN_NAME_NAME).split(" "); for(int i=0; i<pvp2GivenName.length; i++) persName.getGivenName().add(pvp2GivenName[i]); - familyName.setValue(extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_FAMILY_NAME_NAME)); - physPerson.setDateOfBirth(extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_BIRTHDATE_NAME)); + familyName.setValue(extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_FAMILY_NAME_NAME)); + physPerson.setDateOfBirth(extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_BIRTHDATE_NAME)); if (extractor.containsAttribute(PVPConstants.MANDATE_NAT_PER_SOURCE_PIN_NAME)) { persID.setType(Constants.URN_PREFIX_BASEID); - idValue.setValue(extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_SOURCE_PIN_NAME)); + idValue.setValue(extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_SOURCE_PIN_NAME)); } else { - String[] pvp2bPK = extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_BPK_NAME).split(":"); + String[] pvp2bPK = extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_BPK_NAME).split(":"); if (pvp2bPK.length == 2) { idValue.setValue(pvp2bPK[1]); @@ -547,7 +691,7 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { persID.setType(Constants.URN_PREFIX_WBPK + "+" + pvp2bPK[0]); } else { - Logger.warn("Receive mandator bPK from federation with an unsupported format. " + extractor.getAttribute(PVPConstants.MANDATE_NAT_PER_BPK_NAME)); + Logger.warn("Receive mandator bPK from federation with an unsupported format. " + extractor.getSingleAttributeValue(PVPConstants.MANDATE_NAT_PER_BPK_NAME)); throw new AssertionAttributeExtractorExeption("Receive mandator bPK from federation with an unsupported format."); } @@ -585,14 +729,25 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { if (authData.getMISMandate() == null) authData.setMISMandate(new MISMandate()); authData.getMISMandate().setProfRep( - extractor.getAttribute(PVPConstants.MANDATE_PROF_REP_OID_NAME)); + extractor.getSingleAttributeValue(PVPConstants.MANDATE_PROF_REP_OID_NAME)); } - + + //set PVP role attribute + if (extractor.containsAttribute(PVPConstants.ROLES_NAME)) { + String pvpRoles = extractor.getSingleAttributeValue(PVPConstants.ROLES_NAME); + if (MiscUtil.isNotEmpty(pvpRoles)) { + List<String> roles = Arrays.asList(pvpRoles.split(";")); + for (String role : roles) { + authData.addAuthenticationRole(AuthenticationRoleFactory.buildFormPVPole(role)); + } + } + } + //set STORK attributes if (extractor.containsAttribute(PVPConstants.EID_STORK_TOKEN_NAME)) { - authData.setStorkAuthnResponse(extractor.getAttribute(PVPConstants.EID_STORK_TOKEN_NAME)); + authData.setStorkAuthnResponse(extractor.getSingleAttributeValue(PVPConstants.EID_STORK_TOKEN_NAME)); authData.setForeigner(true); } @@ -604,6 +759,7 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { } authData.setSsoSession(true); + authData.setInterfederatedSSOSession(true); if (extractor.getFullAssertion().getConditions() != null && extractor.getFullAssertion().getConditions().getNotOnOrAfter() != null) authData.setSsoSessionValidTo(extractor.getFullAssertion().getConditions().getNotOnOrAfter().toDate()); @@ -616,17 +772,45 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { authData.setPublicAuthority(false); } + /** + * @param oaParam + * @param authData + * @return + */ + private static boolean matchsReceivedbPKToOnlineApplication( + IOAAuthParameters oaParam, AuthenticationData authData) { + + String oaTarget = null; + if (oaParam.getBusinessService()) { + if (oaParam.getIdentityLinkDomainIdentifier().startsWith(Constants.URN_PREFIX_WBPK) || + oaParam.getIdentityLinkDomainIdentifier().startsWith(Constants.URN_PREFIX_STORK)) + oaTarget = oaParam.getIdentityLinkDomainIdentifier(); + + else { + Logger.warn("BusinessIdentifier can not be clearly assigned, because it starts without a prefix."); + return false; + + } + + } else { + oaTarget = Constants.URN_PREFIX_CDID + "+" + oaParam.getTarget(); + + } + + + if (oaTarget.equals(authData.getBPKType())) + return true; + else + return false; + } + private static void buildAuthDataFormMOASession(AuthenticationData authData, AuthenticationSession session, IOAAuthParameters oaParam) throws BuildException, ConfigurationException { - - String target = oaParam.getTarget(); IdentityLink identityLink = session.getIdentityLink(); VerifyXMLSignatureResponse verifyXMLSigResp = session.getXMLVerifySignatureResponse(); - boolean businessService = oaParam.getBusinessService(); - authData.setIssuer(session.getAuthURL()); //baseID or wbpk in case of BusinessService without SSO or BusinessService SSO @@ -661,6 +845,8 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { authData.setForeigner(session.isForeigner()); authData.setQAALevel(session.getQAALevel()); + authData.setIsBusinessService(oaParam.getBusinessService()); + if (session.isForeigner()) { try { //TODO: replace with TSL lookup when TSL is ready! @@ -733,67 +919,12 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { Logger.trace("Authenticated User is OW: " + mandate.getOWbPK()); } else { - - if (businessService) { - //since we have foreigner, wbPK is not calculated in BKU - if (identityLink.getIdentificationType().equals(Constants.URN_PREFIX_BASEID)) { - - String registerAndOrdNr = oaParam.getIdentityLinkDomainIdentifier(); - - if (registerAndOrdNr.startsWith(AuthenticationSession.REGISTERANDORDNR_PREFIX_)) { - // If domainIdentifier starts with prefix - // "urn:publicid:gv.at:wbpk+"; remove this prefix - registerAndOrdNr = registerAndOrdNr - .substring(AuthenticationSession.REGISTERANDORDNR_PREFIX_.length()); - Logger.debug("Register and ordernumber prefix stripped off; resulting register string: " - + registerAndOrdNr); - } - - String wbpkBase64 = new BPKBuilder().buildWBPK(identityLink.getIdentificationValue(), registerAndOrdNr); - authData.setBPK(wbpkBase64); - authData.setBPKType(Constants.URN_PREFIX_WBPK + "+" + registerAndOrdNr); - - } else { - authData.setBPK(identityLink.getIdentificationValue()); - authData.setBPKType(identityLink.getIdentificationType()); - - } - - Logger.trace("Authenticate user with wbPK " + authData.getBPK()); - - Element idlassertion = session.getIdentityLink().getSamlAssertion(); - //set bpk/wpbk; - Node prIdentification = XPathUtils.selectSingleNode(idlassertion, IdentityLinkAssertionParser.PERSON_IDENT_VALUE_XPATH); - prIdentification.getFirstChild().setNodeValue(authData.getBPK()); - //set bkp/wpbk type - Node prIdentificationType = XPathUtils.selectSingleNode(idlassertion, IdentityLinkAssertionParser.PERSON_IDENT_TYPE_XPATH); - prIdentificationType.getFirstChild().setNodeValue(authData.getBPKType()); - - IdentityLinkAssertionParser idlparser = new IdentityLinkAssertionParser(idlassertion); - IdentityLink idl = idlparser.parseIdentityLink(); - - //resign IDL - IdentityLinkReSigner identitylinkresigner = IdentityLinkReSigner.getInstance(); - Element resignedilAssertion; - resignedilAssertion = identitylinkresigner.resignIdentityLink(idl.getSamlAssertion()); - IdentityLinkAssertionParser resignedIDLParser = new IdentityLinkAssertionParser(resignedilAssertion); - IdentityLink resignedIDL = resignedIDLParser.parseIdentityLink(); - - authData.setIdentityLink(resignedIDL); - - } else { - - if (identityLink.getIdentificationType().equals(Constants.URN_PREFIX_BASEID)) { - // only compute bPK if online application is a public service and we have the Stammzahl - String bpkBase64 = new BPKBuilder().buildBPK(identityLink.getIdentificationValue(), target); - authData.setBPK(bpkBase64); - authData.setBPKType(Constants.URN_PREFIX_CDID + "+" + oaParam.getTarget()); - } - - Logger.trace("Authenticate user with bPK " + authData.getBPK()); - - authData.setIdentityLink(identityLink); - } + buildOAspecificbPK(oaParam, authData, + identityLink.getIdentificationValue(), + identityLink.getIdentificationType()); + + buildOAspecificIdentityLink(oaParam, authData, identityLink); + } @@ -803,4 +934,65 @@ public class AuthenticationDataBuilder implements MOAIDAuthConstants { } } + + private static void buildOAspecificIdentityLink(IOAAuthParameters oaParam, AuthenticationData authData, IdentityLink idl) throws MOAIDException { + if (oaParam.getBusinessService()) { + Element idlassertion = idl.getSamlAssertion(); + //set bpk/wpbk; + Node prIdentification = XPathUtils.selectSingleNode(idlassertion, IdentityLinkAssertionParser.PERSON_IDENT_VALUE_XPATH); + prIdentification.getFirstChild().setNodeValue(authData.getBPK()); + //set bkp/wpbk type + Node prIdentificationType = XPathUtils.selectSingleNode(idlassertion, IdentityLinkAssertionParser.PERSON_IDENT_TYPE_XPATH); + prIdentificationType.getFirstChild().setNodeValue(authData.getBPKType()); + + IdentityLinkAssertionParser idlparser = new IdentityLinkAssertionParser(idlassertion); + IdentityLink businessServiceIdl = idlparser.parseIdentityLink(); + + //resign IDL + IdentityLinkReSigner identitylinkresigner = IdentityLinkReSigner.getInstance(); + Element resignedilAssertion; + resignedilAssertion = identitylinkresigner.resignIdentityLink(businessServiceIdl.getSamlAssertion()); + IdentityLinkAssertionParser resignedIDLParser = new IdentityLinkAssertionParser(resignedilAssertion); + IdentityLink resignedIDL = resignedIDLParser.parseIdentityLink(); + + authData.setIdentityLink(resignedIDL); + + } else + authData.setIdentityLink(idl); + + + } + + private static void buildOAspecificbPK(IOAAuthParameters oaParam, AuthenticationData authData, String baseID, String baseIDType) throws BuildException { + + if (oaParam.getBusinessService()) { + //since we have foreigner, wbPK is not calculated in BKU + if (baseIDType.equals(Constants.URN_PREFIX_BASEID)) { + String registerAndOrdNr = oaParam.getIdentityLinkDomainIdentifier(); + authData.setBPK(new BPKBuilder().buildbPKorwbPK(baseID, registerAndOrdNr)); + authData.setBPKType(registerAndOrdNr); + + } else { + authData.setBPK(baseID); + authData.setBPKType(baseIDType); + + } + + Logger.trace("Authenticate user with wbPK " + authData.getBPK()); + + } else { + + if (baseIDType.equals(Constants.URN_PREFIX_BASEID)) { + // only compute bPK if online application is a public service and we have the Stammzahl + String bpkBase64 = new BPKBuilder().buildBPK(baseID, oaParam.getTarget()); + authData.setBPK(bpkBase64); + authData.setBPKType(Constants.URN_PREFIX_CDID + "+" + oaParam.getTarget()); + } + + Logger.trace("Authenticate user with bPK " + authData.getBPK()); + } + + + } + } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/BPKBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/BPKBuilder.java index b122ba17e..063d7d8e4 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/BPKBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/BPKBuilder.java @@ -46,7 +46,6 @@ package at.gv.egovernment.moa.id.auth.builder; -import at.gv.egovernment.moa.id.auth.MOAIDAuthConstants; import at.gv.egovernment.moa.id.auth.data.IdentityLink; import at.gv.egovernment.moa.id.auth.exception.BuildException; import at.gv.egovernment.moa.logging.Logger; @@ -54,7 +53,6 @@ import at.gv.egovernment.moa.util.Base64Utils; import at.gv.egovernment.moa.util.Constants; import at.gv.egovernment.moa.util.MiscUtil; -import java.io.UnsupportedEncodingException; import java.security.InvalidKeyException; import java.security.MessageDigest; import java.security.NoSuchAlgorithmException; @@ -103,14 +101,7 @@ public class BPKBuilder { else basisbegriff = identificationValue + "+" + Constants.URN_PREFIX_CDID + "+" + target; - try { - MessageDigest md = MessageDigest.getInstance("SHA-1"); - byte[] hash = md.digest(basisbegriff.getBytes("ISO-8859-1")); - String hashBase64 = Base64Utils.encode(hash); - return hashBase64; - } catch (Exception ex) { - throw new BuildException("builder.00", new Object[]{"bPK", ex.toString()}, ex); - } + return calculatebPKwbPK(basisbegriff); } /** @@ -139,16 +130,24 @@ public class BPKBuilder { else basisbegriff = identificationValue + "+" + Constants.URN_PREFIX_WBPK + "+" + registerAndOrdNr; - try { - MessageDigest md = MessageDigest.getInstance("SHA-1"); - byte[] hash = md.digest(basisbegriff.getBytes("ISO-8859-1")); - String hashBase64 = Base64Utils.encode(hash); - return hashBase64; - } catch (Exception ex) { - throw new BuildException("builder.00", new Object[]{"wbPK", ex.toString()}, ex); - } + return calculatebPKwbPK(basisbegriff); } + public String buildbPKorwbPK(String baseID, String bPKorwbPKTarget) throws BuildException { + if (MiscUtil.isEmpty(baseID) || + !(bPKorwbPKTarget.startsWith(Constants.URN_PREFIX_CDID + "+") || + bPKorwbPKTarget.startsWith(Constants.URN_PREFIX_WBPK + "+") || + bPKorwbPKTarget.startsWith(Constants.URN_PREFIX_STORK + "+")) ) { + throw new BuildException("builder.00", + new Object[]{"bPK/wbPK", "bPK or wbPK target " + bPKorwbPKTarget + + " has an unkown prefix."}); + + } + + return calculatebPKwbPK(baseID + "+" + bPKorwbPKTarget); + + } + public static String encryptBPK(String bpk, String target, PublicKey publicKey) throws BuildException { MiscUtil.assertNotNull(bpk, "BPK"); MiscUtil.assertNotNull(publicKey, "publicKey"); @@ -211,7 +210,8 @@ public class BPKBuilder { */ public String buildStorkeIdentifier(IdentityLink identityLink, String destinationCountry) throws BuildException { - return buildStorkbPK(identityLink, "AT", destinationCountry); + return buildStorkbPK(identityLink.getIdentificationValue(), + identityLink.getIdentificationType(), "AT", destinationCountry); } /** @@ -224,10 +224,7 @@ public class BPKBuilder { */ public String buildStorkeIdentifier(String identificationType, String identificationValue, String destinationCountry) throws BuildException { - IdentityLink tempIdentity = new IdentityLink(); - tempIdentity.setIdentificationType(identificationType); - tempIdentity.setIdentificationValue(identificationValue); - return buildStorkbPK(tempIdentity, "AT", destinationCountry); + return buildStorkbPK(identificationValue, identificationType, "AT", destinationCountry); } /** @@ -239,16 +236,17 @@ public class BPKBuilder { * @return storkid in a BASE64 encoding * @throws BuildException if an error occurs on building the wbPK */ - public String buildStorkbPK(IdentityLink identityLink, String sourceCountry, String destinationCountry) + public String buildStorkbPK(String baseID, String baseIDType, String sourceCountry, String destinationCountry) throws BuildException { String identificationValue = null; // check if we have been called by public sector application - if (identityLink.getIdentificationType().startsWith(Constants.URN_PREFIX_BASEID)) { - identificationValue = calculateStorkeIdentifierBase(identityLink, sourceCountry, destinationCountry); + if (baseIDType.startsWith(Constants.URN_PREFIX_BASEID)) { + identificationValue = calculateStorkeIdentifierBase(baseID, sourceCountry, destinationCountry); + } else { // if not, sector identification value is already calculated by BKU Logger.info("STORK eIdentifier already provided by BKU"); - identificationValue = identityLink.getIdentificationValue(); + identificationValue = baseID; } if ((identificationValue == null || @@ -266,19 +264,25 @@ public class BPKBuilder { return eIdentifier; } - - private String calculateStorkeIdentifierBase(IdentityLink identityLink, String sourceCountry, String destinationCountry) throws BuildException { - String basisbegriff = identityLink.getIdentificationValue() + "+" + Constants.URN_PREFIX_STORK + "+" + sourceCountry + "+" + destinationCountry; - Logger.info("Building STORK identification from: [identValue]+" + Constants.URN_PREFIX_STORK + "+" + sourceCountry + "+" + destinationCountry); - try { + + private String calculateStorkeIdentifierBase(String baseID, String sourceCountry, String destinationCountry) throws BuildException { + String basisbegriff = baseID + "+" + Constants.URN_PREFIX_STORK + "+" + sourceCountry + "+" + destinationCountry; + Logger.info("Building STORK identification from: [identValue]+" + Constants.URN_PREFIX_STORK + "+" + sourceCountry + "+" + destinationCountry); + return calculatebPKwbPK(basisbegriff); + + } + + private String calculatebPKwbPK(String basisbegriff) throws BuildException { + try { MessageDigest md = MessageDigest.getInstance("SHA-1"); byte[] hash = md.digest(basisbegriff.getBytes("ISO-8859-1")); String hashBase64 = Base64Utils.encode(hash); - Logger.debug("STORK identification defined as: " + hashBase64); return hashBase64; + } catch (Exception ex) { - throw new BuildException("builder.00", new Object[]{"storkid", ex.toString()}, ex); + throw new BuildException("builder.00", new Object[]{"bPK/wbPK", ex.toString()}, ex); } + } private static byte[] encrypt(byte[] inputBytes, PublicKey publicKey) throws NoSuchPaddingException, NoSuchAlgorithmException, InvalidKeyException, IllegalBlockSizeException, BadPaddingException { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/DynamicOAAuthParameterBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/DynamicOAAuthParameterBuilder.java index 132b6af01..49f87122d 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/DynamicOAAuthParameterBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/builder/DynamicOAAuthParameterBuilder.java @@ -33,7 +33,9 @@ import at.gv.egovernment.moa.id.config.auth.AuthConfigurationProvider; import at.gv.egovernment.moa.id.config.auth.IOAAuthParameters; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.config.auth.data.DynamicOAAuthParameters; +import at.gv.egovernment.moa.id.moduls.IRequest; import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.logging.Logger; import at.gv.egovernment.moa.util.Constants; @@ -62,7 +64,7 @@ public class DynamicOAAuthParameterBuilder { attrValue.startsWith(Constants.URN_PREFIX_STORK) ) { dynamicOA.setBusinessService(true); dynamicOA.setTarget(attrValue); - + } else { Logger.error("Sector identification " + attrValue + " is not a valid Target or BusinessServiceArea"); throw new DynamicOABuildException("Sector identification " + attrValue + " is not a valid Target or BusinessServiceArea", null); @@ -106,4 +108,37 @@ public class DynamicOAAuthParameterBuilder { } + + /** + * @param oaParam + * @param protocolRequest + * @return + */ + public static IOAAuthParameters buildFromAuthnRequest( + IOAAuthParameters oaParam, IRequest protocolRequest) { + + DynamicOAAuthParameters dynOAParams = new DynamicOAAuthParameters(); + dynOAParams.setApplicationID(oaParam.getPublicURLPrefix()); + dynOAParams.setBusinessService(oaParam.getBusinessService()); + + if (protocolRequest instanceof MOASTORKRequest) + return buildFromSTORKRequest(dynOAParams, (MOASTORKRequest) protocolRequest); + + Logger.warn("Dynamic OA generation failed. RequestType is not implemented."); + return null; + } + + /** + * @param oaParam + * @param protocolRequest + * @return + */ + private static IOAAuthParameters buildFromSTORKRequest( + DynamicOAAuthParameters oaParam, MOASTORKRequest protocolRequest) { + + oaParam.setBusinessTarget(Constants.URN_PREFIX_STORK + "+" + "AT" + "+" + protocolRequest.getSpCountry()); + oaParam.setBusinessService(true); + + return oaParam; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java index ade7d3f3c..4cd192070 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/auth/servlet/PEPSConnectorServlet.java @@ -27,7 +27,11 @@ import iaik.x509.X509Certificate; import java.io.IOException;
import java.io.InputStream;
import java.io.StringWriter;
+import java.net.URL;
import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+import java.util.Properties;
import javax.activation.DataSource;
import javax.servlet.ServletException;
@@ -68,24 +72,54 @@ import at.gv.util.xsd.xmldsig.X509DataType; import eu.stork.oasisdss.api.ApiUtils;
import eu.stork.oasisdss.api.LightweightSourceResolver;
import eu.stork.oasisdss.api.exceptions.ApiUtilsException;
+import eu.stork.oasisdss.api.utils.ByteArrayDataSource;
+import eu.stork.oasisdss.profile.DocumentType;
+import eu.stork.oasisdss.profile.DocumentWithSignature;
+import eu.stork.oasisdss.profile.SignRequest;
import eu.stork.oasisdss.profile.SignResponse;
import eu.stork.peps.auth.commons.IPersonalAttributeList;
import eu.stork.peps.auth.commons.PEPSUtil;
import eu.stork.peps.auth.commons.PersonalAttribute;
+import eu.stork.peps.auth.commons.PersonalAttributeList;
+import eu.stork.peps.auth.commons.STORKAttrQueryRequest;
import eu.stork.peps.auth.commons.STORKAuthnRequest;
import eu.stork.peps.auth.commons.STORKAuthnResponse;
import eu.stork.peps.auth.engine.STORKSAMLEngine;
import eu.stork.peps.exceptions.STORKSAMLEngineException;
+import eu.stork.documentservice.DocumentService;
+import eu.stork.documentservice.data.DatabaseConnectorMySQLImpl;
+import javax.xml.namespace.QName;
+import javax.xml.ws.Service;
+import javax.xml.ws.soap.SOAPBinding;
+import javax.xml.ws.BindingProvider;
+
+
/**
* Endpoint for receiving STORK response messages
*/
public class PEPSConnectorServlet extends AuthServlet {
+
private static final long serialVersionUID = 1L;
public static final String PEPSCONNECTOR_SERVLET_URL_PATTERN = "/PEPSConnector";
-
+ private String dtlUrl = null;
+
+
+ public PEPSConnectorServlet()
+ {
+ super();
+ Properties props = new Properties();
+ try {
+ props.load(DatabaseConnectorMySQLImpl.class.getResourceAsStream("docservice.properties"));
+ dtlUrl = props.getProperty("docservice.url");
+ } catch (IOException e) {
+ dtlUrl = "http://testvidp.buergerkarte.at/DocumentService/DocumentService";
+ Logger.error("Loading DTL config failed, using default value:"+dtlUrl);
+ e.printStackTrace();
+ }
+ }
/**
* @see HttpServlet#doGet(HttpServletRequest request, HttpServletResponse response)
*/
@@ -245,7 +279,9 @@ public class PEPSConnectorServlet extends AuthServlet { String citizenSignature = null;
try {
String signatureInfo = authnResponse.getPersonalAttributeList().get("signedDoc").getValue().get(0); // TODO ERROR HANDLING
-
+
+ Logger.debug("signatureInfo:"+signatureInfo);
+
SignResponse dssSignResponse = (SignResponse) ApiUtils.unmarshal(new StreamSource(new java.io.StringReader(signatureInfo)));
// fetch signed doc
@@ -258,6 +294,19 @@ public class PEPSConnectorServlet extends AuthServlet { citizenSignature = IOUtils.toString(incoming);
incoming.close();
+ Logger.debug("citizenSignature:"+citizenSignature);
+ if(isDocumentServiceUsed(citizenSignature)==true)
+ {
+ Logger.debug("Loading document from DocumentService.");
+ String url = getDtlUrlFromResponse(dssSignResponse);
+ //get Transferrequest
+ String transferRequest = getDocTransferRequest(dssSignResponse.getDocUI(), url);
+ //Load document from DocujmentService
+ byte[] data = getDocumentFromDtl(transferRequest, url);
+ citizenSignature = new String(data, "UTF-8");
+ Logger.debug("Overridung citizenSignature with:"+citizenSignature);
+ }
+
JAXBContext ctx = JAXBContext.newInstance(SignatureType.class.getPackage().getName());
SignatureType root = ((JAXBElement<SignatureType>) ctx.createUnmarshaller().unmarshal(IOUtils.toInputStream(citizenSignature))).getValue();
@@ -423,5 +472,135 @@ public class PEPSConnectorServlet extends AuthServlet { }
}
+
+ private boolean isDocumentServiceUsed(String citizenSignature) //TODo add better check
+ {
+ if(citizenSignature.contains("<table border=\"0\"><tr><td>Service Name:</td><td>{http://stork.eu}DocumentService</td></tr><tr><td>Port Name:</td><td>{http://stork.eu}DocumentServicePort</td></tr></table>"))
+ return true;
+ return false;
+ }
+
+ /**
+ * Get DTL uril from the oasis sign response
+ * @param signRequest The signature response
+ * @return The URL of DTL service
+ * @throws SimpleException
+ */
+ private String getDtlUrlFromResponse(SignResponse dssSignResponse) {
+ List<DocumentWithSignature> documents = ApiUtils.findNamedElement(dssSignResponse.getOptionalOutputs(),
+ ApiUtils.OPTIONAL_OUTPUT_DOCUMENTWITHSIGNATURE, DocumentWithSignature.class);
+ DocumentType sourceDocument = documents.get(0).getDocument();
+
+ if (sourceDocument.getDocumentURL() != null)
+ return sourceDocument.getDocumentURL();
+ else
+ return null;//throw new Exception("No document url found");
+ }
+
+//From DTLPEPSUTIL
+
+
+
+ /**
+ * Get document from DTL
+ * @param transferRequest The transfer request (attribute query)
+ * @param eDtlUrl The DTL url of external DTL
+ * @return the document data
+ * @throws SimpleException
+ */
+ private byte[] getDocumentFromDtl(String transferRequest, String eDtlUrl) throws Exception
+ {
+ URL url = null;
+ try
+ {
+ url = new URL(dtlUrl);
+ QName qname = new QName("http://stork.eu",
+ "DocumentService");
+
+ Service service = Service.create(url, qname);
+ DocumentService docservice = service.getPort(DocumentService.class);
+
+ BindingProvider bp = (BindingProvider) docservice;
+ SOAPBinding binding = (SOAPBinding) bp.getBinding();
+ binding.setMTOMEnabled(true);
+
+ if (eDtlUrl.equalsIgnoreCase(dtlUrl))
+ return docservice.getDocument(transferRequest, "");
+ else
+ return docservice.getDocument(transferRequest, eDtlUrl);
+ }
+ catch (Exception e)
+ {
+ e.printStackTrace();
+ throw new Exception("Error in getDocumentFromDtl", e);
+ }
+ }
+
+ /**
+ * Get a document transfer request (attribute query)
+ * @param docId
+ * @return
+ * @throws SimpleException
+ */
+ private String getDocTransferRequest(String docId, String destinationUrl) throws Exception
+ {
+ String spCountry = docId.substring(0, docId.indexOf("/"));
+ final STORKSAMLEngine engine = STORKSAMLEngine.getInstance("VIDP");
+ STORKAttrQueryRequest req = new STORKAttrQueryRequest();
+ req.setAssertionConsumerServiceURL(dtlUrl);
+ req.setDestination(destinationUrl);
+ req.setSpCountry(spCountry);
+ req.setQaa(3);//TODO
+ PersonalAttributeList pal = new PersonalAttributeList();
+ PersonalAttribute attr = new PersonalAttribute();
+ attr.setName("docRequest");
+ attr.setIsRequired(true);
+ attr.setValue(Arrays.asList(docId));
+ pal.add(attr);
+ req.setPersonalAttributeList(pal);
+
+ STORKAttrQueryRequest req1;
+ try {
+ req1 = engine.generateSTORKAttrQueryRequest(req);
+ return PEPSUtil.encodeSAMLTokenUrlSafe(req1.getTokenSaml());
+ } catch (STORKSAMLEngineException e) {
+ e.printStackTrace();
+ throw new Exception("Error in doc request attribute query generation", e);
+ }
+ }
+
+ /**
+ * Get mime type of document from DTL
+ * @param docId The document id
+ * @param dtlUrl The url of dtl
+ * @return The mime type
+ */
+// private String getDocumentMimeFromDtl(String docId, String eDtlUrl) throws Exception
+// {
+// URL url = null;
+// try
+// {
+// url = new URL(dtlUrl);
+// QName qname = new QName("http://stork.eu",
+// "DocumentService");
+//
+// Service service = Service.create(url, qname);
+// DocumentService docservice = service.getPort(DocumentService.class);
+//
+// BindingProvider bp = (BindingProvider) docservice;
+// SOAPBinding binding = (SOAPBinding) bp.getBinding();
+// binding.setMTOMEnabled(true);
+//
+// if (eDtlUrl.equalsIgnoreCase(dtlUrl))
+// return docservice.getDocumentMime(docId, "");
+// else
+// return docservice.getDocumentMime(docId, eDtlUrl);
+// }
+// catch (Exception e)
+// {
+// e.printStackTrace();
+// throw new Exception("Error in getDocumentFromDtl", e);
+// }
+// }
}
diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/client/SZRGWClient.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/client/SZRGWClient.java index c675885c9..9e4f3fa36 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/client/SZRGWClient.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/client/SZRGWClient.java @@ -38,9 +38,14 @@ import at.gv.util.wsdl.szrgw.SZRGWType; import at.gv.util.xsd.srzgw.CreateIdentityLinkRequest; import at.gv.util.xsd.srzgw.CreateIdentityLinkResponse; -import com.sun.xml.ws.developer.JAXWSProperties; import javax.xml.ws.BindingProvider; +import org.apache.cxf.configuration.jsse.TLSClientParameters; +import org.apache.cxf.endpoint.Client; +import org.apache.cxf.frontend.ClientProxy; +import org.apache.cxf.transport.http.HTTPConduit; +import org.apache.cxf.transports.http.configuration.HTTPClientPolicy; + public class SZRGWClient { private SSLSocketFactory sslContext = null; @@ -57,9 +62,6 @@ public class SZRGWClient { SZRGWService service = new SZRGWService(url, new QName("http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl", "SZRGWService")); SZRGWType port = service.getSZRGWPort(); - - - BindingProvider bindingProvider = (BindingProvider) port; Map<String, Object> requestContext = bindingProvider.getRequestContext(); requestContext.put(BindingProvider.ENDPOINT_ADDRESS_PROPERTY, serviceUrl); @@ -72,12 +74,24 @@ public class SZRGWClient { throw new SZRGWClientException(); } - requestContext.put(JAXWSProperties.SSL_SOCKET_FACTORY, sslContext); + Client client = ClientProxy.getClient(port); + HTTPConduit http = (HTTPConduit) client.getConduit(); + HTTPClientPolicy httpClientPolicy = new HTTPClientPolicy(); + + httpClientPolicy.setConnectionTimeout(36000); + httpClientPolicy.setReceiveTimeout(32000); + + http.setClient(httpClientPolicy); + TLSClientParameters tlsParams = new TLSClientParameters(); + tlsParams.setSSLSocketFactory(sslContext); + + http.setTlsClientParameters(tlsParams ); + // check for lax hostname if (true) { Logger.trace("LaxHostnameVerifier enabled. This setting is not recommended to use."); - requestContext.put(JAXWSProperties.HOSTNAME_VERIFIER, new LaxHostNameVerifier()); + tlsParams.setHostnameVerifier(new LaxHostNameVerifier()); } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/OAParameter.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/OAParameter.java index b2bcd443f..a2e8bab9b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/OAParameter.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/OAParameter.java @@ -47,6 +47,8 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication; */ public class OAParameter { + public OAParameter() { } + public OAParameter(OnlineApplication oa) { this.oaType = oa.getType(); @@ -70,6 +72,8 @@ public class OAParameter { this.isInderfederationIDP = oa.isIsInterfederationIDP(); + this.isSTORKPVPGateway = oa.isIsInterfederationGateway(); + } /** @@ -81,31 +85,33 @@ public class OAParameter { * specifies whether the online application is a business application or not (<code>true</code> * if value of {@link #oaType} is "businessService" */ - private boolean businessService; + protected boolean businessService; /** * public URL prefix of the online application */ - private String publicURLPrefix; + protected String publicURLPrefix; /** * specifies a human readable name of the Online Application */ - private String friendlyName; + protected String friendlyName; /** * specified a specific target for the Online Application (overwrites the target in der request) */ - private String target; + protected String target; /** * specifies a friendly name for the target */ - private String targetFriendlyName; + protected String targetFriendlyName; + + protected boolean removePBKFromAuthblock; - private boolean removePBKFromAuthblock; + protected Boolean isInderfederationIDP; - private Boolean isInderfederationIDP; + protected Boolean isSTORKPVPGateway; /** * Contains the oAuth 2.0 configuration (client id, secret and redirect uri) @@ -154,6 +160,13 @@ public class OAParameter { return isInderfederationIDP; } + public boolean isSTORKPVPGateway() { + if (isSTORKPVPGateway == null) + return false; + + return isSTORKPVPGateway; + } + } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/AuthConfigurationProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/AuthConfigurationProvider.java index 5426f2008..a67badf49 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/AuthConfigurationProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/AuthConfigurationProvider.java @@ -113,6 +113,8 @@ import at.gv.egovernment.moa.id.data.IssuerAndSerial; import at.gv.egovernment.moa.id.protocols.pvp2x.config.MOADefaultBootstrap; import at.gv.egovernment.moa.logging.Logger; import at.gv.egovernment.moa.util.MiscUtil; +import at.gv.util.config.EgovUtilConfiguration; +import at.gv.util.config.EgovUtilPropertiesConfiguration; /** * A class providing access to the Auth Part of the MOA-ID configuration data. @@ -210,6 +212,8 @@ public class AuthConfigurationProvider extends ConfigurationProvider { private static SSO ssoconfig = null; + private EgovUtilPropertiesConfiguration eGovUtilsConfig = null; + private static Date date = null; private String publicURLPreFix = null; @@ -325,7 +329,7 @@ public class AuthConfigurationProvider extends ConfigurationProvider { statisticProps.put(propertyName, props.get(key.toString())); } } - + // initialize hibernate synchronized (AuthConfigurationProvider.class) { @@ -384,6 +388,24 @@ public class AuthConfigurationProvider extends ConfigurationProvider { // String xmlconfigout = props.getProperty("configuration.xml.out"); + //configure eGovUtils client implementations + + //read eGovUtils client configuration + Properties eGovUtilsConfigProp = new Properties(); + for (Object key : props.keySet()) { + String propPrefix = "service."; + if (key.toString().startsWith(propPrefix+"egovutil")) { + String propertyName = key.toString().substring(propPrefix.length()); + eGovUtilsConfigProp.put(propertyName, props.get(key.toString())); + } + } + if (!eGovUtilsConfigProp.isEmpty()) { + Logger.info("Start eGovUtils client implementation configuration ..."); + eGovUtilsConfig = + new EgovUtilPropertiesConfiguration(eGovUtilsConfigProp, rootConfigFileDir); + } + + //check if XML config should be used if (MiscUtil.isNotEmpty(legacyconfig) || MiscUtil.isNotEmpty(xmlconfig)) { Logger.warn("WARNING! MOA-ID 2.0 is started with XML configuration. This setup overstrike the actual configuration in the Database!"); @@ -1035,7 +1057,14 @@ public class AuthConfigurationProvider extends ConfigurationProvider { return storkconfig; } - private void setCertStoreDirectory() throws ConfigurationException { + /** + * @return the eGovUtilsConfig + */ +public EgovUtilPropertiesConfiguration geteGovUtilsConfig() { + return eGovUtilsConfig; +} + +private void setCertStoreDirectory() throws ConfigurationException { AuthComponentGeneral auth = getAuthComponentGeneral(); if (auth.getGeneralConfiguration() != null) @@ -1076,5 +1105,5 @@ public class AuthConfigurationProvider extends ConfigurationProvider { } return moasp; } - + } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/IOAAuthParameters.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/IOAAuthParameters.java index 4c6519b57..c336eb316 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/IOAAuthParameters.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/IOAAuthParameters.java @@ -54,6 +54,8 @@ public interface IOAAuthParameters { public boolean isInderfederationIDP(); + public boolean isSTORKPVPGateway(); + /** * @return the identityLinkDomainIdentifier */ @@ -152,5 +154,15 @@ public interface IOAAuthParameters { List<String> getTestCredentialOIDs(); PrivateKey getBPKDecBpkDecryptionKey(); + + /** + * @return + */ + boolean isPassivRequestUsedForInterfederation(); + + /** + * @return + */ + boolean isPerformLocalAuthenticationOnInterfederationError(); }
\ No newline at end of file diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/OAAuthParameter.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/OAAuthParameter.java index 673d23373..90b72b72b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/OAAuthParameter.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/OAAuthParameter.java @@ -61,6 +61,7 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.BKUSelectionCustomizationT import at.gv.egovernment.moa.id.commons.db.dao.config.BKUURLS; import at.gv.egovernment.moa.id.commons.db.dao.config.CPEPS; import at.gv.egovernment.moa.id.commons.db.dao.config.IdentificationNumber; +import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationGatewayType; import at.gv.egovernment.moa.id.commons.db.dao.config.InterfederationIDPType; import at.gv.egovernment.moa.id.commons.db.dao.config.Mandates; import at.gv.egovernment.moa.id.commons.db.dao.config.MandatesProfileNameItem; @@ -99,6 +100,7 @@ public class OAAuthParameter extends OAParameter implements IOAAuthParameters { private AuthComponentOA oa_auth; private String keyBoxIdentifier; private InterfederationIDPType inderfederatedIDP = null; + private InterfederationGatewayType interfederatedGateway = null; public OAAuthParameter(OnlineApplication oa) { super(oa); @@ -108,6 +110,8 @@ public class OAAuthParameter extends OAParameter implements IOAAuthParameters { this.keyBoxIdentifier = oa.getKeyBoxIdentifier().value(); this.inderfederatedIDP = oa.getInterfederationIDP(); + + this.interfederatedGateway = oa.getInterfederationGateway(); } @@ -439,6 +443,9 @@ public List<OAStorkAttribute> getRequestedAttributes() { @Override public boolean isRequireConsentForStorkAttributes() { try{ + if (isSTORKPVPGateway()) + return false; + return oa_auth.getOASTORK().isRequireConsent(); }catch(Exception e) { @@ -453,7 +460,13 @@ public boolean isRequireConsentForStorkAttributes() { */ @Override public List<AttributeProviderPlugin> getStorkAPs() { - return oa_auth.getOASTORK().getAttributeProviders(); + if (oa_auth.getOASTORK() != null && + oa_auth.getOASTORK().getAttributeProviders() != null) + return oa_auth.getOASTORK().getAttributeProviders(); + + else + return new ArrayList<AttributeProviderPlugin>(); + } /* (non-Javadoc) @@ -524,9 +537,25 @@ public boolean isOutboundSSOInterfederationAllowed() { } @Override +public boolean isPassivRequestUsedForInterfederation() { + if (inderfederatedIDP != null) + return inderfederatedIDP.isPerformPassivRequest().booleanValue(); + else + return false; +} + +@Override +public boolean isPerformLocalAuthenticationOnInterfederationError() { + if (inderfederatedIDP != null) + return inderfederatedIDP.isPerformLocalAuthenticationOnError().booleanValue(); + else + return false; +} + +@Override public boolean isInterfederationSSOStorageAllowed() { if (inderfederatedIDP != null) - return inderfederatedIDP.isStoreSSOSession(); + return inderfederatedIDP.isStoreSSOSession().booleanValue(); else return false; } @@ -537,6 +566,15 @@ public boolean isIDPPublicService() { } +public String getSTORKPVPForwardEntity() { + if (interfederatedGateway != null) { + return interfederatedGateway.getForwardIDPIdentifier(); + + } else + return null; + +} + /* (non-Javadoc) * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#isTestCredentialEnabled() */ diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/data/DynamicOAAuthParameters.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/data/DynamicOAAuthParameters.java index 7dbdcfa52..e576522bf 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/data/DynamicOAAuthParameters.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/config/auth/data/DynamicOAAuthParameters.java @@ -32,32 +32,20 @@ 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.OAStorkAttribute; import at.gv.egovernment.moa.id.commons.db.dao.config.TemplateType; +import at.gv.egovernment.moa.id.config.OAParameter; import at.gv.egovernment.moa.id.config.auth.IOAAuthParameters; /** * @author tlenz * */ -public class DynamicOAAuthParameters implements IOAAuthParameters { - - private String applicationID = null; +public class DynamicOAAuthParameters extends OAParameter implements IOAAuthParameters { - private boolean isBusinessService; - private String target; private String businessTarget; - private boolean inderfederatedIDP; private String IDPQueryURL; /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#getBusinessService() - */ - @Override - public boolean getBusinessService() { - return this.isBusinessService; - } - - /* (non-Javadoc) * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#getTarget() */ @Override @@ -74,14 +62,6 @@ public class DynamicOAAuthParameters implements IOAAuthParameters { } /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#isInderfederationIDP() - */ - @Override - public boolean isInderfederationIDP() { - return this.inderfederatedIDP; - } - - /* (non-Javadoc) * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#getIDPAttributQueryServiceURL() */ @Override @@ -309,7 +289,7 @@ public class DynamicOAAuthParameters implements IOAAuthParameters { * @param isBusinessService the isBusinessService to set */ public void setBusinessService(boolean isBusinessService) { - this.isBusinessService = isBusinessService; + businessService = isBusinessService; } /** @@ -330,7 +310,7 @@ public class DynamicOAAuthParameters implements IOAAuthParameters { * @param inderfederatedIDP the inderfederatedIDP to set */ public void setInderfederatedIDP(boolean inderfederatedIDP) { - this.inderfederatedIDP = inderfederatedIDP; + isInderfederationIDP = inderfederatedIDP; } /** @@ -340,19 +320,11 @@ public class DynamicOAAuthParameters implements IOAAuthParameters { IDPQueryURL = iDPQueryURL; } - /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#getPublicURLPrefix() - */ - @Override - public String getPublicURLPrefix() { - return this.applicationID; - } - /** * @param applicationID the applicationID to set */ public void setApplicationID(String applicationID) { - this.applicationID = applicationID; + publicURLPrefix = applicationID; } /* (non-Javadoc) @@ -409,6 +381,21 @@ public class DynamicOAAuthParameters implements IOAAuthParameters { return null; } - + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#isPassivRequestUsedForInterfederation() + */ + @Override + public boolean isPassivRequestUsedForInterfederation() { + // TODO Auto-generated method stub + return false; + } + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.config.auth.IOAAuthParameters#isPerformLocalAuthenticationOnInterfederationError() + */ + @Override + public boolean isPerformLocalAuthenticationOnInterfederationError() { + // TODO Auto-generated method stub + return false; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationData.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationData.java index 6fd327add..65c413ef9 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationData.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationData.java @@ -26,6 +26,8 @@ import java.io.Serializable; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; +import java.util.ArrayList; +import java.util.Arrays; import java.util.Date; import java.util.List; @@ -116,6 +118,8 @@ public class AuthenticationData implements IAuthData, Serializable { * the corresponding <code>lt;saml:Assertion></code> */ + private boolean businessService; + /** * STORK attributes from response */ @@ -129,6 +133,7 @@ public class AuthenticationData implements IAuthData, Serializable { private String authBlock = null; private List<String> encbPKList = null; + private List<AuthenticationRole> roles = null; private boolean useMandate = false; private MISMandate mandate = null; @@ -228,7 +233,7 @@ public class AuthenticationData implements IAuthData, Serializable { if (getDateOfBirth() != null) return pvpDateFormat.format(getDateOfBirth()); else - return "1900-01-01"; + return "2999-12-31"; } /** @@ -688,6 +693,44 @@ public class AuthenticationData implements IAuthData, Serializable { public void setEncbPKList(List<String> encbPKList) { this.encbPKList = encbPKList; } + + /** + * @return the roles + */ + public List<AuthenticationRole> getAuthenticationRoles() { +// if (this.roles == null) { +// this.roles = new ArrayList<AuthenticationRole>(); +// this.roles.add(new AuthenticationRole("xxpvprole", "xxpvprole")); +// this.roles.add(new AuthenticationRole("yypvprole", "yypvprole")); +// } + + return roles; + } + + /** + * @param roles the roles to set + */ + public void addAuthenticationRole(AuthenticationRole role) { + if (this.roles == null) + this.roles = new ArrayList<AuthenticationRole>(); + + this.roles.add(role); + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.data.IAuthData#isBusinessService() + */ + @Override + public boolean isBusinessService() { + // TODO Auto-generated method stub + return this.businessService; + } + + public void setIsBusinessService(boolean flag) { + this.businessService = flag; + + } + diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRole.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRole.java new file mode 100644 index 000000000..cde4ad7d4 --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRole.java @@ -0,0 +1,122 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.data; + +import java.util.ArrayList; +import java.util.Iterator; +import java.util.List; +import java.util.Map; + +/** + * @author tlenz + * + */ +public class AuthenticationRole { + + private String roleName = null; + private String rawRoleString = null; + private List<Entry<String, String>> params = null; + + public AuthenticationRole(String roleName, String rawRoleString) { + this.roleName = roleName; + this.rawRoleString = rawRoleString; + } + + public void addParameter(String key, String value) { + if (params == null) + params = new ArrayList<Entry<String,String>>(); + params.add(new Entry<String, String>(key, value)); + + } + + /** + * @return the roleName + */ + public String getRoleName() { + return roleName; + } + + /** + * @return the params + */ + public List<Entry<String, String>> getParams() { + return params; + } + + /** + * @return the params + */ + public Iterator<Entry<String, String>> getParamsInterator() { + return params.iterator(); + } + + + /** + * @return the rawRoleString + */ + public String getRawRoleString() { + return rawRoleString; + } + + + + static class Entry<K,V> implements Map.Entry<K,V> { + + private K key; + private V value; + + Entry(K k, V v) { + key = k; + value = v; + } + + /* (non-Javadoc) + * @see java.util.Map.Entry#getKey() + */ + @Override + public K getKey() { + return key; + } + + /* (non-Javadoc) + * @see java.util.Map.Entry#getValue() + */ + @Override + public V getValue() { + return value; + } + + /* (non-Javadoc) + * @see java.util.Map.Entry#setValue(java.lang.Object) + */ + @Override + public V setValue(V newValue) { + V oldValue = value; + value = newValue; + return oldValue; + } + + + } + +} diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRoleFactory.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRoleFactory.java new file mode 100644 index 000000000..8915b2442 --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/AuthenticationRoleFactory.java @@ -0,0 +1,76 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.data; + +import java.util.Arrays; +import java.util.List; + +import at.gv.egovernment.moa.logging.Logger; + +/** + * @author tlenz + * + */ +public class AuthenticationRoleFactory { + + public static AuthenticationRole buildFormPVPole(String pvprole) { + AuthenticationRole role = null; + + int first = pvprole.indexOf("("); + + if (first < 0) { + //no role paramters found + role = new AuthenticationRole(pvprole.trim(), pvprole.trim()); + Logger.debug("Add authentication role with name=" + pvprole.trim()); + + } else { + role = new AuthenticationRole(pvprole.substring(0, first).trim(), pvprole.trim()); + Logger.debug("Add authentication role with name=" + pvprole.substring(0, first).trim()); + String params = pvprole.substring(first + 1, pvprole.length() - 1); + + List<String> param = Arrays.asList(params.split(",")); + String test = new String(); + for (String el : param) { + test = test.concat(el); + if (!test.endsWith("\\") || + (test.endsWith("\\\\") && !test.endsWith("\\\\\\")) ) { + String[] keyValue = test.split("="); + if (keyValue.length < 2) { + role.addParameter(keyValue[0].trim(), ""); + Logger.debug("Add authentication roleparameter with key=" + keyValue[0].trim()); + + } else { + role.addParameter(keyValue[0].trim(), keyValue[1].trim()); + Logger.debug("Add authentication roleparameter with key=" + keyValue[0].trim() + + " value=" + keyValue[1].trim()); + + } + + test = new String(); + } + } + } + + return role; + } +} diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/IAuthData.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/IAuthData.java index 8ce33021d..ebbf62ce7 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/IAuthData.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/data/IAuthData.java @@ -42,6 +42,7 @@ public interface IAuthData { Date getIssueInstant(); String getIssuer(); + boolean isBusinessService(); boolean isSsoSession(); boolean isInterfederatedSSOSession(); boolean isUseMandate(); @@ -69,6 +70,8 @@ public interface IAuthData { byte[] getSignerCertificate(); String getAuthBlock(); + List<AuthenticationRole> getAuthenticationRoles(); + boolean isPublicAuthority(); String getPublicAuthorityCode(); boolean isQualifiedCertificate(); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java index 1e38bd4ff..03cb6c1c4 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/entrypoints/DispatcherServlet.java @@ -276,11 +276,27 @@ public class DispatcherServlet extends AuthServlet{ Logger.info("PreProcessing of SSO interfederation response complete. "); - //request is a not valid interfederation response -> Restart local authentication + //request is a not valid interfederation response } else if (protocolRequest != null && MiscUtil.isNotEmpty(protocolRequest.getRequestID())) { - Logger.info("Restart authentication with stored " + protocolRequest.requestedModule() - + " AuthnRequest for OnlineApplication " + protocolRequest.getOAURL()); + + OAAuthParameter oaParams = AuthConfigurationProvider.getInstance().getOnlineApplicationParameter(protocolRequest.getOAURL()); + if (oaParams.isSTORKPVPGateway() || !oaParams.isPerformLocalAuthenticationOnInterfederationError()) { + // -> send end error to service provider + Logger.info("Federated authentication for entity " + protocolRequest.getOAURL() + + " FAILED. Sending error message to service provider."); + MOAIDException e = new MOAIDException("auth.27", new Object[]{}); + IModulInfo requestedModul = ModulStorage.getModuleByPath(protocolRequest.requestedModule()); + if (!requestedModul.generateErrorMessage(e, req, resp, protocolRequest)) + handleErrorNoRedirect(e.getMessage(), e, req, + resp); + + return; + + } else + //-> Restart local authentication + Logger.info("Restart authentication with stored " + protocolRequest.requestedModule() + + " AuthnRequest for OnlineApplication " + protocolRequest.getOAURL()); //request is a new authentication request } else if (protocolRequest != null && diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java index daa70efce..a4d63b144 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/AuthenticationManager.java @@ -381,14 +381,15 @@ public class AuthenticationManager extends AuthServlet { //get IDP metadata try { OAAuthParameter idp = AuthConfigurationProvider.getInstance().getOnlineApplicationParameter(target.getRequestedIDP()); + if (!idp.isInderfederationIDP() || !idp.isInboundSSOInterfederationAllowed()) { Logger.info("Requested interfederation IDP " + target.getRequestedIDP() + " is not valid for interfederation."); Logger.info("Switch to local authentication on this IDP ... "); perfomLocalAuthentication(request, response, target); return; - } - + } + EntityDescriptor idpEntity = MOAMetadataProvider.getInstance(). getEntityDescriptor(target.getRequestedIDP()); @@ -417,7 +418,7 @@ public class AuthenticationManager extends AuthServlet { authReq.setID(gen.generateIdentifier()); //send passive AuthnRequest - authReq.setIsPassive(true); + authReq.setIsPassive(idp.isPassivRequestUsedForInterfederation()); authReq.setAssertionConsumerServiceIndex(0); authReq.setIssueInstant(new DateTime()); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/SSOManager.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/SSOManager.java index ff294dc3d..68545e1c2 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/SSOManager.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/moduls/SSOManager.java @@ -100,6 +100,7 @@ public class SSOManager { if (MiscUtil.isNotEmpty(protocolRequest.getRequestedIDP())) { Logger.info("Protocolspecific preprocessing already set interfederation IDP " + protocolRequest.getRequestedIDP()); + return; } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/MetadataAction.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/MetadataAction.java index dbf54951f..0a8a6a581 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/MetadataAction.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/MetadataAction.java @@ -194,7 +194,7 @@ public class MetadataAction implements IAction { .createSAMLObject(SPSSODescriptor.class); spSSODescriptor.setAuthnRequestsSigned(true); - spSSODescriptor.setWantAssertionsSigned(true); + spSSODescriptor.setWantAssertionsSigned(false); //Set AuthRequest Signing certificate diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVP2XProtocol.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVP2XProtocol.java index 0da846f9e..cf20db7d9 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVP2XProtocol.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVP2XProtocol.java @@ -664,7 +664,7 @@ public class PVP2XProtocol implements IModulInfo, MOAIDAuthConstants { } else { Logger.debug("Receive StatusCode " + samlResp.getStatus().getStatusCode().getValue() + " from interfederated IDP."); - + } } catch (IOException e) { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVPConstants.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVPConstants.java index 47c297914..1f3e86ff6 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVPConstants.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/PVPConstants.java @@ -41,7 +41,7 @@ public interface PVPConstants { public static final String STORK_QAA_1_3 = "http://www.stork.gov.eu/1.0/citizenQAALevel/3"; public static final String STORK_QAA_1_4 = "http://www.stork.gov.eu/1.0/citizenQAALevel/4"; - public static final String STORK_ATTRIBUTE_PREFIX = "http://www.stork.gov.eu/1.0/"; + public static final String STORK_ATTRIBUTE_PREFIX = "http://www.stork.gov.eu/"; public static final String URN_OID_PREFIX = "urn:oid:"; diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/AttributQueryBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/AttributQueryBuilder.java index 6296d102f..91888df5c 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/AttributQueryBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/AttributQueryBuilder.java @@ -49,6 +49,7 @@ import org.opensaml.xml.signature.Signer; import org.w3c.dom.Document; import at.gv.egovernment.moa.id.config.ConfigurationException; +import at.gv.egovernment.moa.id.config.auth.IOAAuthParameters; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; import at.gv.egovernment.moa.id.protocols.pvp2x.builder.attributes.SamlAttributeGenerator; @@ -66,7 +67,7 @@ import at.gv.egovernment.moa.util.Constants; */ public class AttributQueryBuilder { - public static List<Attribute> buildSAML2AttributeList(OAAuthParameter oa, Iterator<String> iterator) { + public static List<Attribute> buildSAML2AttributeList(IOAAuthParameters oa, Iterator<String> iterator) { Logger.debug("Build OA specific Attributes for AttributQuery request"); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/PVPAttributeBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/PVPAttributeBuilder.java index 8b6e71e6b..3d8661143 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/PVPAttributeBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/PVPAttributeBuilder.java @@ -150,14 +150,14 @@ public class PVPAttributeBuilder { } public static Attribute buildAttribute(String name, OAAuthParameter oaParam, - IAuthData authData) throws PVP2Exception { + IAuthData authData) throws PVP2Exception, AttributeException { if (builders.containsKey(name)) { try { return builders.get(name).build(oaParam, authData, generator); } catch (AttributeException e) { if (e instanceof UnavailableAttributeException) { - throw new UnprovideableAttributeException(((UnavailableAttributeException) e).getAttributeName()); + throw e; } else if (e instanceof InvalidDateFormatAttributeException) { throw new InvalidDateFormatException(); } else if (e instanceof NoMandateDataAttributeException) { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/assertion/PVP2AssertionBuilder.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/assertion/PVP2AssertionBuilder.java index fa5d252bd..b301b6e5e 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/assertion/PVP2AssertionBuilder.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/assertion/PVP2AssertionBuilder.java @@ -70,6 +70,8 @@ import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.data.SLOInformationImpl; import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; import at.gv.egovernment.moa.id.protocols.pvp2x.builder.PVPAttributeBuilder; +import at.gv.egovernment.moa.id.protocols.pvp2x.builder.attributes.exceptions.AttributeException; +import at.gv.egovernment.moa.id.protocols.pvp2x.builder.attributes.exceptions.UnavailableAttributeException; import at.gv.egovernment.moa.id.protocols.pvp2x.config.PVPConfiguration; import at.gv.egovernment.moa.id.protocols.pvp2x.exceptions.MandateAttributesNotHandleAbleException; import at.gv.egovernment.moa.id.protocols.pvp2x.exceptions.NoMandateDataAvailableException; @@ -121,7 +123,7 @@ public class PVP2AssertionBuilder implements PVPConstants { } catch (Exception e) { Logger.error( "General Attribute generation failed! for " - + reqAttributName); + + reqAttributName, e); } } @@ -251,10 +253,21 @@ public class PVP2AssertionBuilder implements PVPConstants { } else { attrList.add(attr); } + + } catch (UnavailableAttributeException e) { + Logger.info( + "Attribute generation for " + + reqAttribut.getFriendlyName() + " not possible."); + if (reqAttribut.isRequired()) { + throw new UnprovideableAttributeException( + reqAttribut.getName()); + } + + } catch (PVP2Exception e) { - Logger.error( + Logger.warn( "Attribute generation failed! for " - + reqAttribut.getFriendlyName(), e); + + reqAttribut.getFriendlyName()); if (reqAttribut.isRequired()) { throw new UnprovideableAttributeException( reqAttribut.getName()); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePIN.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePIN.java index 16de43e11..1327c634b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePIN.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePIN.java @@ -38,7 +38,7 @@ public class EIDSourcePIN implements IPVPAttributeBuilder { public <ATT> ATT build(OAAuthParameter oaParam, IAuthData authData, IAttributeGenerator<ATT> g) throws AttributeException { - if (oaParam.getBusinessService()) + if (authData.isBusinessService()) throw new AttributePolicyException(EID_SOURCE_PIN_NAME); else { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePINType.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePINType.java index 0681419fc..2145e3af7 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePINType.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/builder/attributes/EIDSourcePINType.java @@ -36,7 +36,7 @@ public class EIDSourcePINType implements IPVPAttributeBuilder { public <ATT> ATT build(OAAuthParameter oaParam, IAuthData authData, IAttributeGenerator<ATT> g) throws AttributeException { - if (oaParam.getBusinessService()) + if (authData.isBusinessService()) throw new UnavailableAttributeException(EID_SOURCE_PIN_TYPE_NAME); else { diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/utils/AssertionAttributeExtractor.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/utils/AssertionAttributeExtractor.java index a16fed9cd..f0373e214 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/utils/AssertionAttributeExtractor.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/utils/AssertionAttributeExtractor.java @@ -36,6 +36,7 @@ import org.opensaml.saml2.core.AuthnStatement; import org.opensaml.saml2.core.Response; import org.opensaml.saml2.core.StatusResponseType; import org.opensaml.saml2.core.Subject; +import org.opensaml.xml.XMLObject; import eu.stork.peps.auth.commons.PersonalAttribute; import eu.stork.peps.auth.commons.PersonalAttributeList; @@ -48,7 +49,7 @@ import at.gv.egovernment.moa.util.MiscUtil; public class AssertionAttributeExtractor { private Assertion assertion = null; - private Map<String, String> attributs = new HashMap<String, String>(); + private Map<String, List<String>> attributs = new HashMap<String, List<String>>(); private PersonalAttributeList storkAttributes = new PersonalAttributeList(); private final List<String> minimalAttributeNameList = Arrays.asList( @@ -74,13 +75,21 @@ public class AssertionAttributeExtractor { for (Attribute attr : attrStat.getAttributes()) { if (attr.getName().startsWith(PVPConstants.STORK_ATTRIBUTE_PREFIX)) { List<String> storkAttrValues = new ArrayList<String>(); - storkAttrValues.add(attr.getAttributeValues().get(0).getDOM().getTextContent()); + for (XMLObject el : attr.getAttributeValues()) + storkAttrValues.add(el.getDOM().getTextContent()); + PersonalAttribute storkAttr = new PersonalAttribute(attr.getName(), false, storkAttrValues , "Available"); storkAttributes.put(attr.getName(), storkAttr ); - } else - attributs.put(attr.getName(), attr.getAttributeValues().get(0).getDOM().getTextContent()); + } else { + List<String> attrList = new ArrayList<String>(); + for (XMLObject el : attr.getAttributeValues()) + attrList.add(el.getDOM().getTextContent()); + + attributs.put(attr.getName(), attrList); + + } } } @@ -129,7 +138,15 @@ public class AssertionAttributeExtractor { } - public String getAttribute(String attributeName) { + public String getSingleAttributeValue(String attributeName) { + if (attributs.containsKey(attributeName) && attributs.get(attributeName).size() > 0) + return attributs.get(attributeName).get(0); + else + return null; + + } + + public List<String> getAttributeValues(String attributeName) { return attributs.get(attributeName); } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/SAMLVerificationEngine.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/SAMLVerificationEngine.java index 3be5df917..4ba93f8fe 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/SAMLVerificationEngine.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/pvp2x/verification/SAMLVerificationEngine.java @@ -170,6 +170,7 @@ public class SAMLVerificationEngine { } + List<org.opensaml.saml2.core.Assertion> validatedassertions = new ArrayList<org.opensaml.saml2.core.Assertion>(); for (org.opensaml.saml2.core.Assertion saml2assertion : saml2assertions) { Conditions conditions = saml2assertion.getConditions(); @@ -177,19 +178,21 @@ public class SAMLVerificationEngine { DateTime notafter = conditions.getNotOnOrAfter(); if ( notbefore.isAfterNow() || notafter.isBeforeNow() ) { Logger.warn("PVP2 Assertion is out of Date"); - saml2assertions.remove(saml2assertion); + + } else { + validatedassertions.add(saml2assertion); - } + } } - if (saml2assertions.isEmpty()) { + if (validatedassertions.isEmpty()) { Logger.info("No valid PVP 2.1 assertion received."); throw new AssertionValidationExeption("No valid PVP 2.1 assertion received.", null); } samlResp.getAssertions().clear(); samlResp.getEncryptedAssertions().clear(); - samlResp.getAssertions().addAll(saml2assertions); + samlResp.getAssertions().addAll(validatedassertions); } else { Logger.info("PVP 2.1 assertion includes an error. Receive errorcode " diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/SAML1AuthenticationServer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/SAML1AuthenticationServer.java index 7d3c72630..65e520cc3 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/SAML1AuthenticationServer.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/saml1/SAML1AuthenticationServer.java @@ -36,8 +36,6 @@ import javax.xml.transform.TransformerException; import org.w3c.dom.Element; import org.xml.sax.SAXException; -import com.sun.xml.bind.marshaller.NamespacePrefixMapper; - import at.gv.egovernment.moa.id.auth.AuthenticationServer; import at.gv.egovernment.moa.id.auth.builder.AuthenticationDataAssertionBuilder; import at.gv.egovernment.moa.id.auth.builder.BPKBuilder; @@ -235,14 +233,14 @@ public class SAML1AuthenticationServer extends AuthenticationServer { Marshaller m = jc.createMarshaller(); m.setProperty(Marshaller.JAXB_FORMATTED_OUTPUT, Boolean.TRUE); - m.setProperty("com.sun.xml.bind.namespacePrefixMapper", new NamespacePrefixMapper() { - public String getPreferredPrefix(String arg0, String arg1, boolean arg2) { - if (Constants.PD_NS_URI.equals(arg0)) - return Constants.PD_PREFIX; - else - return arg1; - } - }); +// m.setProperty("com.sun.xml.bind.namespacePrefixMapper", new NamespacePrefixMapper() { +// public String getPreferredPrefix(String arg0, String arg1, boolean arg2) { +// if (Constants.PD_NS_URI.equals(arg0)) +// return Constants.PD_PREFIX; +// else +// return arg1; +// } +// }); ByteArrayOutputStream stream = new ByteArrayOutputStream(); m.marshal( diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeCollector.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeCollector.java index 456baf49f..e3b9992aa 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeCollector.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeCollector.java @@ -23,6 +23,7 @@ package at.gv.egovernment.moa.id.protocols.stork2; import java.util.ArrayList; +import java.util.Iterator; import java.util.List; import at.gv.egovernment.moa.id.auth.data.AuthenticationSession; @@ -135,9 +136,11 @@ public class AttributeCollector implements IAction { // find the attribute provider plugin that can handle the response IPersonalAttributeList newAttributes = null; - for (AttributeProvider current : AttributeProviderFactory.getConfiguredPlugins(oaParam.getStorkAPs())) + + Iterator<AttributeProvider> attibuteProvidersInterator = AttributeProviderFactory.getConfiguredPlugins(oaParam.getStorkAPs()); + while(attibuteProvidersInterator.hasNext()) try { - newAttributes = current.parse(httpReq); + newAttributes = attibuteProvidersInterator.next().parse(httpReq); // stop as soon as we hit a capable plugin break; @@ -203,7 +206,9 @@ public class AttributeCollector implements IAction { addOrUpdateAll(container.getResponse().getPersonalAttributeList(), aquiredAttributes); // - check if we can find a suitable AttributeProvider Plugin - for (AttributeProvider currentProvider : AttributeProviderFactory.getConfiguredPlugins(oaParam.getStorkAPs())) { + Iterator<AttributeProvider> attibuteProvidersInterator = AttributeProviderFactory.getConfiguredPlugins(oaParam.getStorkAPs()); + while(attibuteProvidersInterator.hasNext()) { + AttributeProvider currentProvider = attibuteProvidersInterator.next(); // build a section of attribute provider's predefined attributes and missing attributes // only missing attributes that can be handled by attribute provider will be sent to it @@ -223,7 +228,7 @@ public class AttributeCollector implements IAction { //aquiredAttributes = currentProvider.acquire(currentAttribute, container.getRequest().getSpCountry(), moasession); //aquiredAttributes = currentProvider.acquire(missingAttributes, container.getRequest().getSpCountry(), moasession); - aquiredAttributes = currentProvider.acquire(currentProviderConfiguredAttributes, container.getRequest().getSpCountry(), authData); + aquiredAttributes = currentProvider.acquire(currentProviderConfiguredAttributes, container.getRequest(), authData); Logger.info(currentProvider.getClass().getSimpleName() + " can handle attribute '" + currentAttribute.getName() + "'"); break; diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeProviderFactory.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeProviderFactory.java index ec64f7eb1..10b325234 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeProviderFactory.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AttributeProviderFactory.java @@ -27,12 +27,15 @@ import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributePro import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.EHvdAttributeProviderPlugin; import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.EHvdAttribute_deprecatedProviderPlugin; import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.MandateAttributeRequestProvider; +import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.PVPAuthenticationProvider; import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.SignedDocAttributeRequestProvider; import at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.StorkAttributeRequestProvider; import at.gv.egovernment.moa.logging.Logger; import java.util.ArrayList; +import java.util.Iterator; import java.util.List; +import java.util.PriorityQueue; /** * A factory for creating AttributeProvider objects. @@ -51,7 +54,7 @@ public class AttributeProviderFactory { result.add("EHvdAttributeProvider"); result.add("SignedDocAttributeRequestProvider"); result.add("MandateAttributeRequestProvider"); - + result.add("PVPAuthenticationProvider"); return result; } @@ -78,6 +81,8 @@ public class AttributeProviderFactory { ex.printStackTrace(); return null; } + } else if (shortname.equals("PVPAuthenticationProvider")) { + return new PVPAuthenticationProvider(url, attributes); } else { return null; } @@ -89,16 +94,16 @@ public class AttributeProviderFactory { * @param configuredAPs the configured a ps * @return the configured plugins */ - public static List<AttributeProvider> getConfiguredPlugins( + public static Iterator<AttributeProvider> getConfiguredPlugins( List<AttributeProviderPlugin> configuredAPs) { - List<AttributeProvider> result = new ArrayList<AttributeProvider>(); + PriorityQueue<AttributeProvider> result = new PriorityQueue<AttributeProvider>(); for (AttributeProviderPlugin current : configuredAPs) { result.add(create(current.getName(), current.getUrl(), current.getAttributes())); Logger.debug("Adding configured attribute provider: " + current.getClass().getName() + current.getName() + " at " + current.getUrl()); } - return result; + return result.iterator(); } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AuthenticationRequest.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AuthenticationRequest.java index 3bd827667..859f4900b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AuthenticationRequest.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/AuthenticationRequest.java @@ -22,7 +22,6 @@ *******************************************************************************/ package at.gv.egovernment.moa.id.protocols.stork2; -import at.gv.egovernment.moa.id.auth.data.AuthenticationSession; import at.gv.egovernment.moa.id.auth.exception.AuthenticationException; import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.commons.db.ex.MOADatabaseException; @@ -34,10 +33,12 @@ import at.gv.egovernment.moa.id.data.SLOInformationImpl; import at.gv.egovernment.moa.id.data.SLOInformationInterface; import at.gv.egovernment.moa.id.moduls.IAction; import at.gv.egovernment.moa.id.moduls.IRequest; +import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; import at.gv.egovernment.moa.id.storage.AssertionStorage; import at.gv.egovernment.moa.id.util.VelocityProvider; import at.gv.egovernment.moa.id.util.client.mis.simple.MISMandate; import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.MiscUtil; import eu.stork.peps.auth.commons.*; import eu.stork.peps.auth.engine.STORKSAMLEngine; import eu.stork.peps.exceptions.STORKSAMLEngineException; @@ -67,14 +68,11 @@ public class AuthenticationRequest implements IAction { private VelocityEngine velocityEngine; - private IAuthData authData = null; private MOASTORKRequest moaStorkRequest = null; public SLOInformationInterface processRequest(IRequest req, HttpServletRequest httpReq, HttpServletResponse httpResp, IAuthData authData) throws MOAIDException { - this.authData = authData; - if ((req instanceof MOASTORKRequest)) { // && ( ((MOASTORKRequest) req).getCitizenCountryCode() == null || ((MOASTORKRequest) req).getCitizenCountryCode().equals("AT") )) { this.moaStorkRequest = (MOASTORKRequest) req; @@ -111,7 +109,40 @@ public class AuthenticationRequest implements IAction { // } // Get personal attributtes from MOA/IdentityLink - moaStorkResponse.setPersonalAttributeList(populateAttributes(oaParam)); + + //build STORK attributes from local authentication information + if (authData != null) { + int reqQaa = -1; + int authQaa = -1; + try { + reqQaa = moaStorkRequest.getStorkAuthnRequest().getQaa(); + authQaa = Integer.valueOf( + authData.getQAALevel().substring(PVPConstants.STORK_QAA_PREFIX.length())); + + if (reqQaa > authQaa) { + Logger.warn("Requested QAA level does not match to authenticated QAA level"); + throw new MOAIDException("stork.21", new Object[]{reqQaa, authQaa}); + + } + + } catch (MOAIDException e) { + throw e; + + } catch (Exception e) { + if (Logger.isDebugEnabled()) + Logger.warn("STORK QAA Level evaluation error", e); + + else + Logger.warn("STORK QAA Level evaluation error (ErrorMessage=" + + e.getMessage() + ")"); + + throw new MOAIDException("stork.21", new Object[]{reqQaa, authQaa}); + + } + + moaStorkResponse.setPersonalAttributeList(populateAttributes(authData, oaParam)); + + } } //moaStorkResponse.setCountry(moaStorkRequest.getSpCountry()); @@ -370,15 +401,15 @@ public class AuthenticationRequest implements IAction { Logger.debug("Putting assertion consumer url as action: " + request.getAssertionConsumerServiceURL()); context.put("action", request.getAssertionConsumerServiceURL()); - Logger.debug("Starting template merge"); + Logger.trace("Starting template merge"); StringWriter writer = new StringWriter(); - Logger.debug("Doing template merge"); + Logger.trace("Doing template merge"); template.merge(context, writer); - Logger.debug("Template merge done"); + Logger.trace("Template merge done"); - Logger.debug("Sending html content: " + writer.getBuffer().toString()); - Logger.debug("Sending html content2 : " + new String(writer.getBuffer())); + Logger.trace("Sending html content: " + writer.getBuffer().toString()); + Logger.trace("Sending html content2 : " + new String(writer.getBuffer())); httpResp.getOutputStream().write(writer.getBuffer().toString().getBytes("UTF-8")); @@ -390,6 +421,10 @@ public class AuthenticationRequest implements IAction { public boolean needAuthentication(IRequest req, HttpServletRequest httpReq, HttpServletResponse httpResp) { + //redirect to national PVP IDP infrastructure if special attributes are requested + if (MiscUtil.isEmpty(req.getRequestedIDP()) && req instanceof MOASTORKRequest) + return !STORKPVPUtilits.performAuthenticationOnNationalIDP((MOASTORKRequest) req); + // // authentication is not needed if we have authentication request from SP for citizen of configured PEPS country // if (req instanceof MOASTORKRequest) { // MOASTORKRequest moastorkRequest = (MOASTORKRequest) req; @@ -444,14 +479,14 @@ public class AuthenticationRequest implements IAction { } - public PersonalAttributeList populateAttributes(IOAAuthParameters oaParam) { + public PersonalAttributeList populateAttributes(IAuthData authData, IOAAuthParameters oaParam) { IPersonalAttributeList attrLst = moaStorkRequest.getStorkAuthnRequest().getPersonalAttributeList(); Logger.info("Found " + attrLst.size() + " personal attributes in the request."); - + // Define attribute list to be populated PersonalAttributeList attributeList = new PersonalAttributeList(); - MOAAttributeProvider moaAttributeProvider = new MOAAttributeProvider(authData.getIdentityLink(), moaStorkRequest); + MOAAttributeProvider moaAttributeProvider = new MOAAttributeProvider(authData, moaStorkRequest); try { for (PersonalAttribute personalAttribute : attrLst) { @@ -466,7 +501,7 @@ public class AuthenticationRequest implements IAction { Logger.error("Exception, attributes: " + e.getMessage()); } - Logger.debug("AUTHBLOCK " + authData.getAuthBlock()); + Logger.trace("AUTHBLOCK " + authData.getAuthBlock()); Logger.debug("SESSION IDENTIFIER " + authData.getCcc() + " " + oaParam.getIdentityLinkDomainIdentifier()); return attributeList; diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/ConsentEvaluator.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/ConsentEvaluator.java index 3159574fe..de7d5d6dd 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/ConsentEvaluator.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/ConsentEvaluator.java @@ -199,15 +199,15 @@ public class ConsentEvaluator implements IAction { Logger.debug("Putting assertion consumer url as action: " + request.getAssertionConsumerServiceURL()); context.put("action", request.getAssertionConsumerServiceURL()); - Logger.debug("Starting template merge"); + Logger.trace("Starting template merge"); StringWriter writer = new StringWriter(); - Logger.debug("Doing template merge"); + Logger.trace("Doing template merge"); template.merge(context, writer); - Logger.debug("Template merge done"); + Logger.trace("Template merge done"); - Logger.debug("Sending html content: " + writer.getBuffer().toString()); - Logger.debug("Sending html content2 : " + new String(writer.getBuffer())); + Logger.trace("Sending html content: " + writer.getBuffer().toString()); + Logger.trace("Sending html content2 : " + new String(writer.getBuffer())); httpResp.getOutputStream().write(writer.getBuffer().toString().getBytes("UTF-8")); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/CorporateBodyMandateContainer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/CorporateBodyMandateContainer.java index b358436ae..3e16db7d2 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/CorporateBodyMandateContainer.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/CorporateBodyMandateContainer.java @@ -24,17 +24,10 @@ package at.gv.egovernment.moa.id.protocols.stork2; import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.logging.Logger; -import javanet.staxutils.SimpleNamespaceContext; import org.xml.sax.InputSource; -import javax.xml.xpath.XPath; import javax.xml.xpath.XPathExpressionException; -import javax.xml.xpath.XPathFactory; import java.io.StringReader; -import java.lang.reflect.InvocationTargetException; -import java.lang.reflect.Method; -import java.util.HashMap; - /** * Physical person representing corporate body * diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOAAttributeProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOAAttributeProvider.java index a0ec1eb45..993514ec7 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOAAttributeProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOAAttributeProvider.java @@ -23,25 +23,35 @@ package at.gv.egovernment.moa.id.protocols.stork2; import at.gv.egovernment.moa.id.auth.builder.BPKBuilder; -import at.gv.egovernment.moa.id.auth.data.IdentityLink; import at.gv.egovernment.moa.id.auth.exception.BuildException; +import at.gv.egovernment.moa.id.data.AuthenticationRole; +import at.gv.egovernment.moa.id.data.IAuthData; +import at.gv.egovernment.moa.id.util.PVPtoSTORKMapper; import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.MiscUtil; import eu.stork.peps.auth.commons.PersonalAttribute; import eu.stork.peps.auth.commons.PersonalAttributeList; +import eu.stork.peps.auth.commons.STORKStatusCode; import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; +import java.text.DateFormat; +import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Collections; import java.util.HashMap; +import java.util.List; import java.util.Map; /** * @author bsuzic * Date: 2/19/14, Time: 4:42 PM + * + * @author tlenz + * Date: 23.10.14 */ public class MOAAttributeProvider { - private final IdentityLink identityLink; + private final IAuthData authData; private static final Map<String, String> storkAttributeSimpleMapping; private static final Map<String, String> storkAttributeFunctionMapping; private final MOASTORKRequest moastorkRequest; @@ -50,17 +60,18 @@ public class MOAAttributeProvider { Map<String, String> tempSimpleMap = new HashMap<String, String>(); tempSimpleMap.put("givenName", "getGivenName"); tempSimpleMap.put("surname", "getFamilyName"); - tempSimpleMap.put("dateOfBirth", "getDateOfBirth"); storkAttributeSimpleMapping = Collections.unmodifiableMap(tempSimpleMap); Map<String, String> tempFunctionMap = new HashMap<String, String>(); tempFunctionMap.put("eIdentifier", "geteIdentifier"); + tempFunctionMap.put("ECApplicationRole","getECApplicationRole"); + tempFunctionMap.put("dateOfBirth", "getFormatedDateOfBirth"); storkAttributeFunctionMapping = Collections.unmodifiableMap(tempFunctionMap); } - public MOAAttributeProvider(IdentityLink identityLink, MOASTORKRequest moastorkRequest) { - this.identityLink = identityLink; + public MOAAttributeProvider(IAuthData authData, MOASTORKRequest moastorkRequest) { + this.authData = authData; this.moastorkRequest = moastorkRequest; - Logger.debug("identity " + identityLink.getIdentificationType() + " " + identityLink.getIdentificationValue()); + Logger.debug("identity " + authData.getIdentificationType() + " " + authData.getIdentificationValue()); } public void populateAttribute(PersonalAttributeList attributeList, PersonalAttribute requestedAttribute ) { @@ -68,8 +79,8 @@ public class MOAAttributeProvider { if (storkAttributeSimpleMapping.containsKey(storkAttribute)) { Logger.debug("Trying to get value for attribute using simple mapping [" + storkAttribute + "]"); try { - Method method = identityLink.getClass().getDeclaredMethod(storkAttributeSimpleMapping.get(storkAttribute)); - populateAttributeWithMethod(method, identityLink, attributeList, storkAttribute, requestedAttribute.isRequired()); + Method method = authData.getClass().getDeclaredMethod(storkAttributeSimpleMapping.get(storkAttribute)); + populateAttributeWithMethod(method, authData, attributeList, storkAttribute, requestedAttribute.isRequired()); } catch (NoSuchMethodException e) { Logger.error("Could not found MOA extraction method while getting attribute: " + storkAttribute); e.printStackTrace(); @@ -91,27 +102,82 @@ public class MOAAttributeProvider { } private String geteIdentifier() { - Logger.debug("Using base urn for identification value: " + identityLink.getIdentificationType() + " and target country: " + moastorkRequest.getStorkAuthnRequest().getSpCountry()); + Logger.debug("Using base urn for identification value: " + authData.getIdentificationType() + " and target country: " + moastorkRequest.getStorkAuthnRequest().getSpCountry()); try { - return new BPKBuilder().buildStorkeIdentifier(identityLink, moastorkRequest.getStorkAuthnRequest().getSpCountry()); + return new BPKBuilder().buildStorkeIdentifier(authData.getIdentificationType(), authData.getIdentificationValue(), + moastorkRequest.getStorkAuthnRequest().getSpCountry()); } catch (BuildException be) { Logger.error("Stork eid could not be constructed; " + be.getMessage()); return null; // TODO error } } + private List<String> getECApplicationRole() { + List<String> storkRoles = null; + + if (authData.getAuthenticationRoles() != null + && authData.getAuthenticationRoles().size() > 0) { + storkRoles = new ArrayList<String>(); + PVPtoSTORKMapper mapper = PVPtoSTORKMapper.getInstance(); + for (AuthenticationRole el : authData.getAuthenticationRoles()) { + String storkRole = mapper.map(el); + if (MiscUtil.isNotEmpty(storkRole)) + storkRoles.add(storkRole); + + } + } + return storkRoles; + } + + private String getFormatedDateOfBirth() { + if (authData.getDateOfBirth() != null) { + DateFormat fmt = new SimpleDateFormat("yyyyMMdd"); + return fmt.format(authData.getDateOfBirth()); + + } + else + return null; + + } + private void populateAttributeWithMethod(Method method, Object object, PersonalAttributeList attributeList, String storkAttribute, Boolean isRequired) { try { - String attributeValue = method.invoke(object, new Class[]{}).toString(); + Object attributeValue = method.invoke(object, new Class[]{}); + PersonalAttribute newAttribute = new PersonalAttribute(); newAttribute.setName(storkAttribute); - - newAttribute.setStatus("Available"); newAttribute.setIsRequired(isRequired); - Logger.info("Got attribute value: " + attributeValue); - newAttribute.setValue(new ArrayList<String>(Collections.singletonList(attributeValue))); - attributeList.add(newAttribute); + + if (attributeValue != null) { + newAttribute.setStatus(STORKStatusCode.STATUS_AVAILABLE.name()); + Logger.info("Got attribute value: " + attributeValue); + + if (attributeValue instanceof String) + newAttribute.setValue(new ArrayList<String>(Collections.singletonList((String)attributeValue))); + + else if (attributeValue instanceof List<?>) { + List<?> attributeValueList = (List<?>) attributeValue; + if (attributeValueList.size() > 0 && attributeValueList.get(0) instanceof String) { + newAttribute.setValue((List<String>) attributeValueList); + + } else { + Logger.info("Attribute " + storkAttribute + " is not available."); + newAttribute.setStatus(STORKStatusCode.STATUS_NOT_AVAILABLE.name()); + + } + + } else { + Logger.error("Receive an unsupported type for attribute " + storkAttribute); + + } + attributeList.add(newAttribute); + + } else { + Logger.info("Attribute " + storkAttribute + " is not available."); + newAttribute.setStatus(STORKStatusCode.STATUS_NOT_AVAILABLE.name()); + } + } catch (InvocationTargetException e) { Logger.error("Invocation target exception while getting attribute: " + storkAttribute); e.printStackTrace(); diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOASTORKRequest.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOASTORKRequest.java index 076139018..a92d02e08 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOASTORKRequest.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MOASTORKRequest.java @@ -22,13 +22,25 @@ *******************************************************************************/ package at.gv.egovernment.moa.id.protocols.stork2; +import java.util.ArrayList; +import java.util.Arrays; import java.util.List; import org.opensaml.saml2.core.Attribute; +import at.gv.egovernment.moa.id.auth.builder.DynamicOAAuthParameterBuilder; +import at.gv.egovernment.moa.id.config.ConfigurationException; +import at.gv.egovernment.moa.id.config.auth.AuthConfigurationProvider; +import at.gv.egovernment.moa.id.config.auth.IOAAuthParameters; +import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; +import at.gv.egovernment.moa.id.config.auth.data.DynamicOAAuthParameters; import at.gv.egovernment.moa.id.moduls.RequestImpl; +import at.gv.egovernment.moa.id.protocols.pvp2x.PVPConstants; +import at.gv.egovernment.moa.id.protocols.pvp2x.builder.AttributQueryBuilder; import at.gv.egovernment.moa.id.protocols.pvp2x.messages.MOAResponse; +import at.gv.egovernment.moa.id.protocols.saml1.SAML1Protocol; import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.Constants; import eu.stork.peps.auth.commons.IPersonalAttributeList; import eu.stork.peps.auth.commons.STORKAttrQueryRequest; import eu.stork.peps.auth.commons.STORKAuthnRequest; @@ -41,6 +53,16 @@ import eu.stork.peps.auth.commons.STORKAuthnResponse; */ public class MOASTORKRequest extends RequestImpl { + public static final List<String> DEFAULTREQUESTEDATTRFORINTERFEDERATION = Arrays.asList( + new String[] { + PVPConstants.BPK_NAME, + PVPConstants.EID_SECTOR_FOR_IDENTIFIER_NAME, + PVPConstants.GIVEN_NAME_NAME, + PVPConstants.PRINCIPAL_NAME_NAME, + PVPConstants.BIRTHDATE_NAME, + PVPConstants.EID_CITIZEN_QAA_LEVEL_NAME, + }); + /** The Constant serialVersionUID. */ private static final long serialVersionUID = 4581953368724501376L; @@ -206,29 +228,28 @@ public class MOASTORKRequest extends RequestImpl { } /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.moduls.IRequest#getRequestedIDP() - */ - @Override - public String getRequestedIDP() { - // TODO Auto-generated method stub - return null; - } - - /* (non-Javadoc) - * @see at.gv.egovernment.moa.id.moduls.IRequest#getInterfederationResponse() - */ - @Override - public MOAResponse getInterfederationResponse() { - // TODO Auto-generated method stub - return null; - } - - /* (non-Javadoc) * @see at.gv.egovernment.moa.id.moduls.RequestImpl#getRequestedAttributes() */ @Override public List<Attribute> getRequestedAttributes() { - // TODO Auto-generated method stub - return null; + //TODO: only for testing with MOA-ID as PVP Stammportal + IOAAuthParameters oa; + try { + oa = AuthConfigurationProvider.getInstance().getOnlineApplicationParameter(getOAURL()); + oa = DynamicOAAuthParameterBuilder.buildFromAuthnRequest(oa, this); + + DynamicOAAuthParameters tmp = (DynamicOAAuthParameters) oa; + tmp.setBusinessTarget(Constants.URN_PREFIX_CDID + "+BF"); + + return AttributQueryBuilder.buildSAML2AttributeList(tmp, DEFAULTREQUESTEDATTRFORINTERFEDERATION.iterator()); + + } catch (ConfigurationException e) { + // TODO Auto-generated catch block + e.printStackTrace(); + return null; + } + + //return new ArrayList<Attribute>(); + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MandateContainer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MandateContainer.java index 25350e686..e6c58b503 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MandateContainer.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/MandateContainer.java @@ -24,11 +24,11 @@ package at.gv.egovernment.moa.id.protocols.stork2; import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.logging.Logger; -import javanet.staxutils.SimpleNamespaceContext; import javax.xml.xpath.XPath; import javax.xml.xpath.XPathExpressionException; import javax.xml.xpath.XPathFactory; + import java.lang.reflect.InvocationTargetException; import java.lang.reflect.Method; import java.util.HashMap; diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/PhyPersonMandateContainer.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/PhyPersonMandateContainer.java index 853d17318..ba89663ab 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/PhyPersonMandateContainer.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/PhyPersonMandateContainer.java @@ -24,14 +24,10 @@ package at.gv.egovernment.moa.id.protocols.stork2; import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.logging.Logger; -import javanet.staxutils.SimpleNamespaceContext; import org.xml.sax.InputSource; -import javax.xml.xpath.XPath; import javax.xml.xpath.XPathExpressionException; -import javax.xml.xpath.XPathFactory; import java.io.StringReader; -import java.util.HashMap; /** * Physical person representing physical person diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKPVPUtilits.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKPVPUtilits.java new file mode 100644 index 000000000..d923eccde --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKPVPUtilits.java @@ -0,0 +1,49 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.protocols.stork2; + +import java.util.Arrays; +import java.util.List; + +/** + * @author tlenz + * + */ +public class STORKPVPUtilits { + + public static final List<String> attributesRequirePVPAuthentication = + Arrays.asList("ECApplicationRole"); + + + + public static boolean performAuthenticationOnNationalIDP(MOASTORKRequest moastorkRequest) { + for (String el : attributesRequirePVPAuthentication) { + if (moastorkRequest.getPersonalAttributeList().containsKey(el)) { + return true; + + } + } + return false; + } + +} diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKProtocol.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKProtocol.java index 440121417..57531992d 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKProtocol.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/STORKProtocol.java @@ -23,11 +23,15 @@ package at.gv.egovernment.moa.id.protocols.stork2; import at.gv.egovernment.moa.id.auth.MOAIDAuthConstants; +import at.gv.egovernment.moa.id.auth.exception.AuthenticationException; import at.gv.egovernment.moa.id.auth.exception.MOAIDException; +import at.gv.egovernment.moa.id.config.auth.AuthConfigurationProvider; +import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.moduls.IAction; import at.gv.egovernment.moa.id.moduls.IModulInfo; import at.gv.egovernment.moa.id.moduls.IRequest; import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.MiscUtil; import eu.stork.peps.auth.commons.*; import eu.stork.peps.auth.engine.STORKSAMLEngine; import eu.stork.peps.exceptions.STORKSAMLEngineException; @@ -145,20 +149,23 @@ public class STORKProtocol implements IModulInfo, MOAIDAuthConstants { STORKAuthnRequest authnRequest = null; STORKAttrQueryRequest attrRequest = null; - - + // check if valid authn request is contained try { authnRequest = engine.validateSTORKAuthnRequest(decSamlToken); + } catch (STORKSAMLEngineException ex) { Logger.error("Unable to validate Stork AuthenticationRequest: " + ex.getMessage()); + } catch (ClassCastException e) { // we do not have a authnRequest // check if a valid attr request is container try { attrRequest = engine.validateSTORKAttrQueryRequest(decSamlToken); + } catch (STORKSAMLEngineException ex) { Logger.error("Unable to validate Stork AuthenticationRequest: " + ex.getMessage()); + } } @@ -176,11 +183,32 @@ public class STORKProtocol implements IModulInfo, MOAIDAuthConstants { Logger.error("Exception, attributes: " + e.getMessage()); } - STORK2Request.setSTORKAuthnRequest(authnRequest); STORK2Request.setSTORKAttrRequest(attrRequest); - - + + //check if OA is instance of VIDP or STORKPVPGateway + OAAuthParameter oaParam = AuthConfigurationProvider.getInstance().getOnlineApplicationParameter(STORK2Request.getOAURL()); + if (oaParam == null) + throw new AuthenticationException("stork.12", new Object[]{STORK2Request.getOAURL()}); + + else { + if (oaParam.isSTORKPVPGateway()) { + if (MiscUtil.isNotEmpty(oaParam.getSTORKPVPForwardEntity())) { + Logger.info("Received request for STORK->PVP gateway. " + + "Forward to PVP portal with entiyID " + oaParam.getSTORKPVPForwardEntity() + + " ..." ); + STORK2Request.setRequestedIDP(oaParam.getSTORKPVPForwardEntity()); + + } else { + Logger.error("InterfederatedGateway configuration with ID " + STORK2Request.getOAURL() + + " not configure a forward entityID."); + throw new MOAIDException("", null); + + } + } + + } + return STORK2Request; } else { throw new MOAIDException("stork.14", null); // TODO Specify message diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/SimpleNamespaceContext.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/SimpleNamespaceContext.java new file mode 100644 index 000000000..2c2df3e54 --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/SimpleNamespaceContext.java @@ -0,0 +1,83 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.protocols.stork2; + +import java.util.HashMap; +import java.util.Iterator; +import java.util.Map.Entry; +import java.util.Set; + +import javax.xml.namespace.NamespaceContext; + +/** + * @author tlenz + * + */ +public class SimpleNamespaceContext implements NamespaceContext { + + HashMap<String, String> prefMap = null; + /** + * @param prefMap + */ + SimpleNamespaceContext(HashMap<String, String> prefMap) { + this.prefMap = prefMap; + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getNamespaceURI(java.lang.String) + */ + @Override + public String getNamespaceURI(String prefix) { + if (prefMap.containsKey(prefix)) + return prefMap.get(prefix); + else + return null; + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getPrefix(java.lang.String) + */ + @Override + public String getPrefix(String namespaceURI) { + if (prefMap.containsValue(namespaceURI)) { + Set<Entry<String, String>> set = prefMap.entrySet(); + for (Entry<String, String> el : set) { + if (el.getValue().equals(namespaceURI)) + return el.getKey(); + + } + } + + return null; + } + + /* (non-Javadoc) + * @see javax.xml.namespace.NamespaceContext#getPrefixes(java.lang.String) + */ + @Override + public Iterator getPrefixes(String namespaceURI) { + // TODO Auto-generated method stub + return null; + } + +} diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/AttributeProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/AttributeProvider.java index a8454b37c..aaf13a779 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/AttributeProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/AttributeProvider.java @@ -32,6 +32,7 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import eu.stork.peps.auth.commons.IPersonalAttributeList; import eu.stork.peps.auth.commons.PersonalAttribute; @@ -40,7 +41,7 @@ import eu.stork.peps.auth.commons.PersonalAttribute; * An {@link AttributeProvider} can fetch a set of stork attributes. It might complete the query within one method call, * but might also need to redirect to another webservice to accomplish its task. */ -public abstract class AttributeProvider { +public abstract class AttributeProvider implements Comparable<AttributeProvider>{ protected String attributes; @@ -53,19 +54,19 @@ public abstract class AttributeProvider { * for redirecting the user to an external service. Use {@link AttributeProvider#parse(HttpServletRequest)} to parse * the response. * - * @param attributes the list of attributes to be acquired - * @param spCountyCode the sp county code + * @param currentProviderConfiguredAttributes the list of attributes to be acquired + * @param moastorkRequest the sp county code * @param authData the moasession * @return the personal attribute * @throws UnsupportedAttributeException the unsupported attribute exception * @throws ExternalAttributeRequestRequiredException an attribute request to an external service has to be done * @throws MOAIDException the mOAID exception */ - protected abstract IPersonalAttributeList acquire(PersonalAttribute attributes, String spCountyCode, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException; + protected abstract IPersonalAttributeList acquire(PersonalAttribute currentProviderConfiguredAttributes, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException; - public IPersonalAttributeList acquire(List<PersonalAttribute> attributes, String spCountyCode, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { + public IPersonalAttributeList acquire(List<PersonalAttribute> attributes, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { if (attributes.size() == 1) { - return acquire(attributes.get(0), spCountyCode, authData); + return acquire(attributes.get(0), moastorkRequest, authData); } else { throw new MOAIDException("stork.13", new Object[] { }); // TODO message only one attribute supported by this provider @@ -107,5 +108,32 @@ public abstract class AttributeProvider { return supportedAttributeNames; } - + + /** + * Returns the sequence priority of this attribute provider. + * Providers with small numbers are requested first. + * + * @return a sequence priority of this provider + */ + public abstract int getPriority(); + + /** + * Compare the sequence priority of two attribute providers + * @param o attribute provider + * @return 0 if priority is equal + * @return -1 if priority if this is higher then from o + * @return +1 if priority if o is higher then from this + */ + @Override + public int compareTo(AttributeProvider o) { + if (this.getPriority() == o.getPriority()) + return 0; + + if (this.getPriority() < o.getPriority()) + return -1; + + else + return +1; + } + } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttributeProviderPlugin.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttributeProviderPlugin.java index 8af35673f..761460971 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttributeProviderPlugin.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttributeProviderPlugin.java @@ -46,6 +46,7 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import at.gv.egovernment.moa.logging.Logger; import eu.stork.peps.auth.commons.IPersonalAttributeList; @@ -77,7 +78,7 @@ public class EHvdAttributeProviderPlugin extends AttributeProvider { * @see at.gv.egovernment.moa.id.protocols.stork2.AttributeProvider#acquire(eu.stork.peps.auth.commons.PersonalAttribute) */ @Override - protected IPersonalAttributeList acquire(PersonalAttribute attribute, String spCountryCode, IAuthData authData) + protected IPersonalAttributeList acquire(PersonalAttribute attribute, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { @@ -214,7 +215,7 @@ public class EHvdAttributeProviderPlugin extends AttributeProvider { // add stork id for verification ArrayList<String> value = new ArrayList<String>(); - value.add(new BPKBuilder().buildStorkeIdentifier(authData.getIdentityLink(), spCountryCode)); + value.add(new BPKBuilder().buildStorkeIdentifier(authData.getIdentityLink(), moastorkRequest.getSpCountry())); result.add(new PersonalAttribute("eIdentifier", false, value, "Available")); return result; @@ -241,5 +242,12 @@ public class EHvdAttributeProviderPlugin extends AttributeProvider { throw new UnsupportedAttributeException(); } + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 99; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttribute_deprecatedProviderPlugin.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttribute_deprecatedProviderPlugin.java index fb62e43e5..2000ef928 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttribute_deprecatedProviderPlugin.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/EHvdAttribute_deprecatedProviderPlugin.java @@ -46,6 +46,7 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import at.gv.egovernment.moa.logging.Logger; import eu.stork.peps.auth.commons.IPersonalAttributeList; @@ -78,7 +79,7 @@ public class EHvdAttribute_deprecatedProviderPlugin extends AttributeProvider { * @see at.gv.egovernment.moa.id.protocols.stork2.AttributeProvider#acquire(eu.stork.peps.auth.commons.PersonalAttribute) */ @Override - protected IPersonalAttributeList acquire(PersonalAttribute attribute, String spCountryCode, IAuthData authData) + protected IPersonalAttributeList acquire(PersonalAttribute attribute, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { @@ -219,7 +220,7 @@ public class EHvdAttribute_deprecatedProviderPlugin extends AttributeProvider { // add stork id for verification ArrayList<String> value = new ArrayList<String>(); - value.add(new BPKBuilder().buildStorkeIdentifier(authData.getIdentityLink(), spCountryCode)); + value.add(new BPKBuilder().buildStorkeIdentifier(authData.getIdentityLink(), moastorkRequest.getSpCountry())); result.add(new PersonalAttribute("eIdentifier", false, value, "Available")); return result; @@ -246,5 +247,12 @@ public class EHvdAttribute_deprecatedProviderPlugin extends AttributeProvider { throw new UnsupportedAttributeException(); } + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 99; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/MandateAttributeRequestProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/MandateAttributeRequestProvider.java index 07e5b70ba..f4d963645 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/MandateAttributeRequestProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/MandateAttributeRequestProvider.java @@ -36,6 +36,7 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import at.gv.egovernment.moa.id.util.HTTPUtils; import at.gv.egovernment.moa.id.util.VelocityProvider; @@ -73,9 +74,9 @@ public class MandateAttributeRequestProvider extends AttributeProvider { } @Override - protected IPersonalAttributeList acquire(PersonalAttribute attribute, String spCountryCode, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { + protected IPersonalAttributeList acquire(PersonalAttribute attribute, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { Logger.info("Acquiring attribute: " + attribute.getName() + ", by: " + getAttrProviderName()); - this.spCountryCode = spCountryCode; + this.spCountryCode = moastorkRequest.getSpCountry(); requestedAttributes = new PersonalAttributeList(1); requestedAttributes.add(attribute); @@ -94,9 +95,9 @@ public class MandateAttributeRequestProvider extends AttributeProvider { } @Override - public IPersonalAttributeList acquire(List<PersonalAttribute> attributes, String spCountryCode, IAuthData moasession) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { + public IPersonalAttributeList acquire(List<PersonalAttribute> attributes, MOASTORKRequest moastorkRequest, IAuthData moasession) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException, MOAIDException { Logger.info("Acquiring " + attributes.size() + " attributes, by: " + getAttrProviderName()); - this.spCountryCode = spCountryCode; + this.spCountryCode = moastorkRequest.getSpCountry(); requestedAttributes = new PersonalAttributeList(attributes.size()); for (PersonalAttribute personalAttribute : attributes) { @@ -205,5 +206,12 @@ public class MandateAttributeRequestProvider extends AttributeProvider { return null; // } + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 99; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/PVPAuthenticationProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/PVPAuthenticationProvider.java new file mode 100644 index 000000000..96aa55bcf --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/PVPAuthenticationProvider.java @@ -0,0 +1,237 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.protocols.stork2.attributeproviders; + +import java.io.StringWriter; + +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import org.apache.velocity.Template; +import org.apache.velocity.VelocityContext; +import org.apache.velocity.app.VelocityEngine; + +import at.gv.egovernment.moa.id.auth.exception.MOAIDException; +import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; +import at.gv.egovernment.moa.id.data.IAuthData; +import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; +import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; +import at.gv.egovernment.moa.id.util.HTTPUtils; +import at.gv.egovernment.moa.id.util.VelocityProvider; +import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.StringUtils; +import eu.stork.peps.auth.commons.IPersonalAttributeList; +import eu.stork.peps.auth.commons.PEPSUtil; +import eu.stork.peps.auth.commons.PersonalAttribute; +import eu.stork.peps.auth.commons.STORKAttrQueryRequest; +import eu.stork.peps.auth.commons.STORKAttrQueryResponse; +import eu.stork.peps.auth.commons.STORKAuthnRequest; +import eu.stork.peps.auth.commons.STORKAuthnResponse; +import eu.stork.peps.auth.engine.STORKSAMLEngine; +import eu.stork.peps.exceptions.STORKSAMLEngineException; + +/** + * @author tlenz + * + */ +public class PVPAuthenticationProvider extends AttributeProvider { + + private String destination = null; + private MOASTORKRequest moastorkRequest = null; + + /** + * @param attributes + * @param attributes2 + */ + public PVPAuthenticationProvider(String url, String attributes) { + super(attributes); + this.destination = url; + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#acquire(eu.stork.peps.auth.commons.PersonalAttribute, java.lang.String, at.gv.egovernment.moa.id.data.IAuthData) + */ + @Override + protected IPersonalAttributeList acquire(PersonalAttribute attribute, + MOASTORKRequest moastorkRequest, IAuthData authData) + throws UnsupportedAttributeException, + ExternalAttributeRequestRequiredException, MOAIDException { + + this.moastorkRequest = moastorkRequest; + // break if we cannot handle the requested attribute + if (!attributes.contains(attribute.getName())) { + Logger.info("Attribute " + attribute.getName() + " not supported by the provider: " + getAttrProviderName()); + throw new UnsupportedAttributeException(); + + } + + Logger.info("Thrown external request by: " + getAttrProviderName()); + throw new ExternalAttributeRequestRequiredException(this); + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#performRedirect(java.lang.String, javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse, at.gv.egovernment.moa.id.config.auth.OAAuthParameter) + */ + @Override + public void performRedirect(String url, HttpServletRequest req, + HttpServletResponse resp, OAAuthParameter oaParam) + throws MOAIDException { + + String spSector = "Business"; + String spInstitution = StringUtils.isEmpty(oaParam.getFriendlyName()) ? "UNKNOWN" : oaParam.getFriendlyName(); + String spApplication = spInstitution; + String spCountryCode = moastorkRequest.getSpCountry(); + + if ((spCountryCode == null) || (spCountryCode.length()<2)) { + spCountryCode = oaParam.getTarget(); + Logger.info("Setting spcountry target: " + oaParam.getTarget()); + Logger.info("idlink ident " + oaParam.getIdentityLinkDomainIdentifier()); + Logger.info("idlink type " + oaParam.getIdentityLinkDomainIdentifierType()); + Logger.info("Setting spcountry target friendly : " + oaParam.getTargetFriendlyName()); + Logger.info("Oatype : " + oaParam.getOaType()); + Logger.info("puburl : " + oaParam.getPublicURLPrefix()); + if ("STORK".equals(oaParam.getIdentityLinkDomainIdentifierType())) { + + spCountryCode = oaParam.getIdentityLinkDomainIdentifier().substring(oaParam.getIdentityLinkDomainIdentifier().length()-2); + Logger.info("Set to " +spCountryCode); + } + + } + + //generate AttrQueryRequest + STORKAuthnRequest authRequest = new STORKAuthnRequest(); + authRequest.setDestination(destination); + authRequest.setAssertionConsumerServiceURL(url); + authRequest.setIssuer(HTTPUtils.getBaseURL(req)); + authRequest.setQaa(oaParam.getQaaLevel()); + authRequest.setSpInstitution(spInstitution); + authRequest.setCountry(spCountryCode); + authRequest.setSpCountry(spCountryCode); + authRequest.setSpApplication(spApplication); + authRequest.setProviderName(spApplication); + authRequest.setSpSector(spSector); + authRequest.setPersonalAttributeList(moastorkRequest.getPersonalAttributeList()); + + authRequest.setCitizenCountryCode("AT"); + //authRequest.setQaa(oaParam.getQaaLevel()); + authRequest.setQaa(moastorkRequest.getStorkAuthnRequest().getQaa()); + + + + + Logger.info("STORK AttrRequest successfully assembled."); + + STORKSAMLEngine samlEngine = STORKSAMLEngine.getInstance("VIDP"); + try { + + authRequest = samlEngine.generateSTORKAuthnRequest(authRequest); + } catch (STORKSAMLEngineException e) { + Logger.error("Could not sign STORK SAML AttrRequest.", e); + throw new MOAIDException("stork.00", null); + } + + Logger.info("STORK AttrRequest successfully signed!"); + + //validate AuthnRequest + try { + samlEngine.validateSTORKAuthnRequest(authRequest.getTokenSaml()); + } catch (STORKSAMLEngineException e) { + Logger.error("STORK SAML AuthnRequest not valid.", e); + throw new MOAIDException("stork.01", null); + } + + Logger.debug("STORK AuthnRequest successfully internally validated."); + + try { + Logger.trace("Initialize VelocityEngine..."); + + VelocityEngine velocityEngine = VelocityProvider.getClassPathVelocityEngine(); + Template template = velocityEngine.getTemplate("/resources/templates/saml2-post-binding-moa.vm"); + VelocityContext context = new VelocityContext(); + context.put("SAMLRequest", PEPSUtil.encodeSAMLToken(authRequest.getTokenSaml())); + context.put("action", destination); + + StringWriter writer = new StringWriter(); + template.merge(context, writer); + + resp.getOutputStream().write(writer.toString().getBytes("UTF-8")); + + } catch (Exception e) { + Logger.error("Error sending STORK SAML AttrRequest.", e); + throw new MOAIDException("stork.11", null); + + } + Logger.info("STORK AttrRequest successfully rendered!"); + + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#parse(javax.servlet.http.HttpServletRequest) + */ + @Override + public IPersonalAttributeList parse(HttpServletRequest httpReq) + throws UnsupportedAttributeException, MOAIDException { + + Logger.info(this.getClass().getSimpleName() + " tries to extract SAMLResponse out of HTTP Request"); + + //extract STORK Response from HTTP Request + //Decodes SAML Response + byte[] decSamlToken; + try { + decSamlToken = PEPSUtil.decodeSAMLToken(httpReq.getParameter("SAMLResponse")); + } catch(NullPointerException e) { + throw new UnsupportedAttributeException(); + } + + //Get SAMLEngine instance + STORKSAMLEngine engine = STORKSAMLEngine.getInstance("VIDP"); + + STORKAuthnResponse authnResponse = null; + try { + //validate SAML Token + Logger.debug("Starting validation of SAML response"); + authnResponse = engine.validateSTORKAuthnResponse(decSamlToken, (String) httpReq.getRemoteHost()); + Logger.info("SAML response successfully verified!"); + + }catch(STORKSAMLEngineException e){ + Logger.error("Failed to verify STORK SAML Response", e); + throw new MOAIDException("stork.05", null); + } + + return authnResponse.getPersonalAttributeList(); + + } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 1; + } + + public String getAttrProviderName() { + return this.getClass().getName(); + } +} diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/SignedDocAttributeRequestProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/SignedDocAttributeRequestProvider.java index 13b14b0be..124b91e8b 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/SignedDocAttributeRequestProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/SignedDocAttributeRequestProvider.java @@ -58,11 +58,13 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import at.gv.egovernment.moa.id.util.VelocityProvider; import at.gv.egovernment.moa.logging.Logger; import eu.stork.oasisdss.api.ApiUtils; import eu.stork.oasisdss.api.LightweightSourceResolver; +import eu.stork.oasisdss.api.ResultMajor; import eu.stork.oasisdss.api.exceptions.ApiUtilsException; import eu.stork.oasisdss.api.exceptions.UtilsException; import eu.stork.oasisdss.profile.AnyType; @@ -124,7 +126,7 @@ public class SignedDocAttributeRequestProvider extends AttributeProvider { * .lang.String) */ @Override - protected IPersonalAttributeList acquire(PersonalAttribute attribute, String spCountyCode, IAuthData authData) throws UnsupportedAttributeException, + protected IPersonalAttributeList acquire(PersonalAttribute attribute, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException { if(!attributes.contains(attribute.getName())) { throw new UnsupportedAttributeException(); @@ -165,114 +167,127 @@ public class SignedDocAttributeRequestProvider extends AttributeProvider { //create SignResponse object Source response = new StreamSource(new java.io.StringReader(signResponseString)); SignResponse signResponse = ApiUtils.unmarshal(response, SignResponse.class); - //extract doc from signresponse - DataSource dataSource = LightweightSourceResolver.getDataSource(signResponse); - - ByteArrayOutputStream baos = new ByteArrayOutputStream(); - IOUtils.copy(dataSource.getInputStream(), baos); - byte[] data = baos.toByteArray(); + //Check if Signing was successfully or not - //update doc in DTL - String docId, dssId = ""; - docId = signResponse.getDocUI(); - //For reference dssId equals docId - dssId = docId; - if (dssId != null && data!=null) + if(!signResponse.getResult().getResultMajor().equals(ResultMajor.RESULT_MAJOR_SUCCESS)) { - boolean success = false; - try{ - success = updateDocumentInDtl(data, docId, signResponseString); - }catch(Exception e){//No document service used? - Logger.info("No document service used?"); - e.printStackTrace(); - success = false; - } - if(success) - { - // set the url in the SignResponse - DocumentWithSignature documentWithSignature = new DocumentWithSignature(); - DocumentType value = new DocumentType(); - value.setDocumentURL(dtlUrl); - documentWithSignature.setDocument(value); - if(signResponse.getOptionalOutputs()!=null) - { - //signResponse.getOptionalOutputs().getAny().add(documentWithSignature); - for(Object o :signResponse.getOptionalOutputs().getAny()) + //Pass unmodifed or unmarshal & marshal?? + InputStream istr = ApiUtils.marshalToInputStream(signResponse); + StringWriter writer = new StringWriter(); + IOUtils.copy(istr, writer, "UTF-8"); + signResponseString = writer.toString(); + Logger.info("SignResponse with error (unmodified):"+signResponseString); + } + else + { + //extract doc from signresponse + DataSource dataSource = LightweightSourceResolver.getDataSource(signResponse); + + ByteArrayOutputStream baos = new ByteArrayOutputStream(); + IOUtils.copy(dataSource.getInputStream(), baos); + byte[] data = baos.toByteArray(); + + //update doc in DTL + String docId, dssId = ""; + docId = signResponse.getDocUI(); + //For reference dssId equals docId + dssId = docId; + if (dssId != null && data!=null) + { + boolean success = false; + try{ + success = updateDocumentInDtl(data, docId, signResponseString); + }catch(Exception e){//No document service used? + Logger.info("No document service used?"); + e.printStackTrace(); + success = false; + } + if(success) + { + // set the url in the SignResponse + DocumentWithSignature documentWithSignature = new DocumentWithSignature(); + DocumentType value = new DocumentType(); + value.setDocumentURL(dtlUrl); + documentWithSignature.setDocument(value); + if(signResponse.getOptionalOutputs()!=null) { - if(o instanceof DocumentWithSignature) + //signResponse.getOptionalOutputs().getAny().add(documentWithSignature); + for(Object o :signResponse.getOptionalOutputs().getAny()) { - signResponse.getOptionalOutputs().getAny().remove(o); - signResponse.getOptionalOutputs().getAny().add(documentWithSignature); - break; + if(o instanceof DocumentWithSignature) + { + signResponse.getOptionalOutputs().getAny().remove(o); + signResponse.getOptionalOutputs().getAny().add(documentWithSignature); + break; + } } } + else + { + AnyType anytype = new AnyType(); + anytype.getAny().add(documentWithSignature); + signResponse.setOptionalOutputs(anytype ); + } + + // System.out.println("overwriting:"+signResponse.getResult().getResultMessage()+" with DTL url:"+dtlUrl); + InputStream istr = ApiUtils.marshalToInputStream(signResponse); + StringWriter writer = new StringWriter(); + IOUtils.copy(istr, writer, "UTF-8"); + signResponseString = writer.toString(); + Logger.info("SignResponse overwritten:"+signResponseString); } else { - AnyType anytype = new AnyType(); - anytype.getAny().add(documentWithSignature); - signResponse.setOptionalOutputs(anytype ); - } - -// System.out.println("overwriting:"+signResponse.getResult().getResultMessage()+" with DTL url:"+dtlUrl); - InputStream istr = ApiUtils.marshalToInputStream(signResponse); - StringWriter writer = new StringWriter(); - IOUtils.copy(istr, writer, "UTF-8"); - signResponseString = writer.toString(); - Logger.info("SignResponse overwritten:"+signResponseString); - } - else - { - //No document service used? - // do nothing.... - //TODO temporary fix because document is deleted after fetching => SP can't download Doc - //Add doc to Signresponse - - DocumentWithSignature documentWithSignature = new DocumentWithSignature(); - DocumentType value = new DocumentType(); - if(signResponse.getProfile().toLowerCase().contains("xades")) - { - value.setBase64XML(data); - } - else - { - Base64Data base64data = new Base64Data(); - base64data.setValue(data); - base64data.setMimeType(dataSource.getContentType()); - value.setBase64Data(base64data); - } - documentWithSignature.setDocument(value); - if(signResponse.getOptionalOutputs()!=null) - { - //signResponse.getOptionalOutputs().getAny().add(documentWithSignature); - for(Object o :signResponse.getOptionalOutputs().getAny()) + //No document service used? + // do nothing.... + //TODO temporary fix because document is deleted after fetching => SP can't download Doc + //Add doc to Signresponse + + DocumentWithSignature documentWithSignature = new DocumentWithSignature(); + DocumentType value = new DocumentType(); + if(signResponse.getProfile().toLowerCase().contains("xades")) + { + value.setBase64XML(data); + } + else + { + Base64Data base64data = new Base64Data(); + base64data.setValue(data); + base64data.setMimeType(dataSource.getContentType()); + value.setBase64Data(base64data); + } + documentWithSignature.setDocument(value); + if(signResponse.getOptionalOutputs()!=null) { - if(o instanceof DocumentWithSignature) + //signResponse.getOptionalOutputs().getAny().add(documentWithSignature); + for(Object o :signResponse.getOptionalOutputs().getAny()) { - signResponse.getOptionalOutputs().getAny().remove(o); - signResponse.getOptionalOutputs().getAny().add(documentWithSignature); - break; + if(o instanceof DocumentWithSignature) + { + signResponse.getOptionalOutputs().getAny().remove(o); + signResponse.getOptionalOutputs().getAny().add(documentWithSignature); + break; + } } } + else + { + AnyType anytype = new AnyType(); + anytype.getAny().add(documentWithSignature); + signResponse.setOptionalOutputs(anytype ); + } + + // System.out.println("overwriting:"+signResponse.getResult().getResultMessage()+" with DTL url:"+dtlUrl); + InputStream istr = ApiUtils.marshalToInputStream(signResponse); + StringWriter writer = new StringWriter(); + IOUtils.copy(istr, writer, "UTF-8"); + signResponseString = writer.toString(); + Logger.info("SignResponse overwritten:"+signResponseString); } - else - { - AnyType anytype = new AnyType(); - anytype.getAny().add(documentWithSignature); - signResponse.setOptionalOutputs(anytype ); - } - -// System.out.println("overwriting:"+signResponse.getResult().getResultMessage()+" with DTL url:"+dtlUrl); - InputStream istr = ApiUtils.marshalToInputStream(signResponse); - StringWriter writer = new StringWriter(); - IOUtils.copy(istr, writer, "UTF-8"); - signResponseString = writer.toString(); - Logger.info("SignResponse overwritten:"+signResponseString); - } + } + else + throw new Exception("No DSS id found."); } - else - throw new Exception("No DSS id found."); - //alter signresponse //done @@ -318,7 +333,7 @@ public class SignedDocAttributeRequestProvider extends AttributeProvider { try { Logger.trace("Initialize VelocityEngine..."); - + Logger.info("performRedirect url:"+url); VelocityEngine velocityEngine = VelocityProvider.getClassPathVelocityEngine(); Template template = velocityEngine.getTemplate("/resources/templates/oasis_dss_webform_binding.vm"); VelocityContext context = new VelocityContext(); @@ -616,4 +631,12 @@ public class SignedDocAttributeRequestProvider extends AttributeProvider { return success; } + + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 99; + } } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/StorkAttributeRequestProvider.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/StorkAttributeRequestProvider.java index cb3a33c69..5ee0e380e 100644 --- a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/StorkAttributeRequestProvider.java +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/protocols/stork2/attributeproviders/StorkAttributeRequestProvider.java @@ -35,6 +35,7 @@ import at.gv.egovernment.moa.id.auth.exception.MOAIDException; import at.gv.egovernment.moa.id.config.auth.OAAuthParameter; import at.gv.egovernment.moa.id.data.IAuthData; import at.gv.egovernment.moa.id.protocols.stork2.ExternalAttributeRequestRequiredException; +import at.gv.egovernment.moa.id.protocols.stork2.MOASTORKRequest; import at.gv.egovernment.moa.id.protocols.stork2.UnsupportedAttributeException; import at.gv.egovernment.moa.id.util.HTTPUtils; import at.gv.egovernment.moa.id.util.VelocityProvider; @@ -77,13 +78,13 @@ public class StorkAttributeRequestProvider extends AttributeProvider { * @see at.gv.egovernment.moa.id.protocols.stork2.AttributeProvider#acquire(java.lang.String) */ @Override - protected IPersonalAttributeList acquire(PersonalAttribute attribute, String spCountyCode, IAuthData authData) + protected IPersonalAttributeList acquire(PersonalAttribute attribute, MOASTORKRequest moastorkRequest, IAuthData authData) throws UnsupportedAttributeException, ExternalAttributeRequestRequiredException { if (!attributes.contains(attribute.getName())) throw new UnsupportedAttributeException(); - this.spCountryCode = spCountyCode; + this.spCountryCode = moastorkRequest.getSpCountry(); requestedAttributes = new PersonalAttributeList(1); requestedAttributes.add(attribute); @@ -180,5 +181,13 @@ public class StorkAttributeRequestProvider extends AttributeProvider { Logger.info("STORK AttrRequest successfully rendered!"); } + /* (non-Javadoc) + * @see at.gv.egovernment.moa.id.protocols.stork2.attributeproviders.AttributeProvider#getPriority() + */ + @Override + public int getPriority() { + return 99; + } + } diff --git a/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/util/PVPtoSTORKMapper.java b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/util/PVPtoSTORKMapper.java new file mode 100644 index 000000000..0ea03e29d --- /dev/null +++ b/id/server/idserverlib/src/main/java/at/gv/egovernment/moa/id/util/PVPtoSTORKMapper.java @@ -0,0 +1,105 @@ +/* + * Copyright 2014 Federal Chancellery Austria + * MOA-ID has been developed in a cooperation between BRZ, the Federal + * Chancellery Austria - ICT staff unit, and Graz University of Technology. + * + * Licensed under the EUPL, Version 1.1 or - as soon they will be approved by + * the European Commission - subsequent versions of the EUPL (the "Licence"); + * You may not use this work except in compliance with the Licence. + * You may obtain a copy of the Licence at: + * http://www.osor.eu/eupl/ + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the Licence is distributed on an "AS IS" basis, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the Licence for the specific language governing permissions and + * limitations under the Licence. + * + * This product combines work with different licenses. See the "NOTICE" text + * file for details on the various modules and licenses. + * The "NOTICE" text file is part of the distribution. Any derivative works + * that you distribute must include a readable copy of the "NOTICE" text file. + */ +package at.gv.egovernment.moa.id.util; + +import java.io.IOException; +import java.util.Properties; + +import at.gv.egovernment.moa.id.data.AuthenticationRole; +import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.util.MiscUtil; + +/** + * @author tlenz + * + */ +public class PVPtoSTORKMapper { + + private static final String PVP_SECCLASS_PREFIX = "http://www.ref.gv.at/ns/names/agiz/pvp/"; + + private static final String MAPPING_RESOURCE = + "resources/properties/pvp-stork_mapping.properties"; + + private Properties mapping = null; + + private static PVPtoSTORKMapper instance = null; + + public static PVPtoSTORKMapper getInstance() { + if (instance == null) { + instance = new PVPtoSTORKMapper(); + } + + return instance; + } + + private PVPtoSTORKMapper() { + try { + mapping = new Properties(); + mapping.load(this.getClass().getClassLoader().getResourceAsStream(MAPPING_RESOURCE)); + Logger.debug("PVP -> STORK Role mapping initialisation finished."); + + } catch (IOException e) { + Logger.error("PVP -> STORK Role mapping initialisation FAILED." , e); + mapping = null; + + } + + + } + + /**Map a PVP SecClass to STORK QAA level + * + * @param PVP SecClass pvpQAALevel + * @return STORK-QAA level + */ + public String mapQAALevel(String pvpQAALevel) { + if (mapping != null) { + String input = pvpQAALevel.substring(PVP_SECCLASS_PREFIX.length()); + String mappedQAA = mapping.getProperty(input); + if (MiscUtil.isNotEmpty(mappedQAA)) { + Logger.info("Map PVP SecClass " + pvpQAALevel + " to STORK-QAA " + mappedQAA); + return mappedQAA; + + } + } + Logger.warn("No mapping for PVP SecClass " + pvpQAALevel +" !"); + return null; + } + + /**Map a PVP Role attribute to STORK ECAuthenticationRole attribute values + * + * @param PVP Role attribute + * @return STORK ECAuthenticationRole attribute value + */ + public String map(AuthenticationRole el) { + if (mapping != null) { + String ecRole = mapping.getProperty(el.getRawRoleString()); + if (MiscUtil.isNotEmpty(ecRole)) { + Logger.info("Map PVPRole " + el.getRawRoleString() + " to ECRole " + ecRole); + return ecRole; + } + } + Logger.warn("NO mapping for PVPRole "+ el.getRawRoleString() + " !"); + return null; + } +} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWService.java b/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWService.java deleted file mode 100644 index 9562d1c42..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWService.java +++ /dev/null @@ -1,78 +0,0 @@ - -package at.gv.util.wsdl.szrgw; - -import java.net.MalformedURLException; -import java.net.URL; -import javax.xml.namespace.QName; -import javax.xml.ws.Service; -import javax.xml.ws.WebEndpoint; -import javax.xml.ws.WebServiceClient; -import javax.xml.ws.WebServiceException; -import javax.xml.ws.WebServiceFeature; - - -/** - * This class was generated by the JAX-WS RI. - * JAX-WS RI 2.2.4-b01 - * Generated source version: 2.1 - * - */ -@WebServiceClient(name = "SZRGWService", targetNamespace = "http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl", wsdlLocation = "file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/szrgw/szrgw.wsdl") -public class SZRGWService - extends Service -{ - - private final static URL SZRGWSERVICE_WSDL_LOCATION; - private final static WebServiceException SZRGWSERVICE_EXCEPTION; - private final static QName SZRGWSERVICE_QNAME = new QName("http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl", "SZRGWService"); - - static { - URL url = null; - WebServiceException e = null; - try { - url = new URL("file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/szrgw/szrgw.wsdl"); - } catch (MalformedURLException ex) { - e = new WebServiceException(ex); - } - SZRGWSERVICE_WSDL_LOCATION = url; - SZRGWSERVICE_EXCEPTION = e; - } - - public SZRGWService() { - super(__getWsdlLocation(), SZRGWSERVICE_QNAME); - } - - public SZRGWService(URL wsdlLocation, QName serviceName) { - super(wsdlLocation, serviceName); - } - - /** - * - * @return - * returns SZRGWType - */ - @WebEndpoint(name = "SZRGWPort") - public SZRGWType getSZRGWPort() { - return super.getPort(new QName("http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl", "SZRGWPort"), SZRGWType.class); - } - - /** - * - * @param features - * A list of {@link javax.xml.ws.WebServiceFeature} to configure on the proxy. Supported features not in the <code>features</code> parameter will have their default values. - * @return - * returns SZRGWType - */ - @WebEndpoint(name = "SZRGWPort") - public SZRGWType getSZRGWPort(WebServiceFeature... features) { - return super.getPort(new QName("http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl", "SZRGWPort"), SZRGWType.class, features); - } - - private static URL __getWsdlLocation() { - if (SZRGWSERVICE_EXCEPTION!= null) { - throw SZRGWSERVICE_EXCEPTION; - } - return SZRGWSERVICE_WSDL_LOCATION; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWType.java b/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWType.java deleted file mode 100644 index 9f0a8bd6d..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/wsdl/szrgw/SZRGWType.java +++ /dev/null @@ -1,44 +0,0 @@ - -package at.gv.util.wsdl.szrgw; - -import javax.jws.WebMethod; -import javax.jws.WebParam; -import javax.jws.WebResult; -import javax.jws.WebService; -import javax.jws.soap.SOAPBinding; -import javax.xml.bind.annotation.XmlSeeAlso; -import at.gv.util.xsd.srzgw.CreateIdentityLinkRequest; -import at.gv.util.xsd.srzgw.CreateIdentityLinkResponse; - - -/** - * This class was generated by the JAX-WS RI. - * JAX-WS RI 2.2.4-b01 - * Generated source version: 2.1 - * - */ -@WebService(name = "SZRGWType", targetNamespace = "http://reference.e-government.gv.at/namespace/szrgw/20070807/wsdl") -@SOAPBinding(parameterStyle = SOAPBinding.ParameterStyle.BARE) -@XmlSeeAlso({ - at.gv.util.xsd.srzgw.ObjectFactory.class, - at.gv.util.xsd.persondata.ObjectFactory.class, - at.gv.util.xsd.mis.ObjectFactory.class, - at.gv.util.xsd.saml.assertion.ObjectFactory.class, - at.gv.util.xsd.xmldsig.ObjectFactory.class -}) -public interface SZRGWType { - - - /** - * - * @param createIdentityLinkRequest - * @return - * returns at.gv.util.xsd.srzgw.CreateIdentityLinkResponse - */ - @WebMethod(operationName = "SZRGWOperation", action = "szrgw:SZRGWType#SZRGWOperation") - @WebResult(name = "CreateIdentityLinkResponse", targetNamespace = "http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd", partName = "CreateIdentityLinkResponse") - public CreateIdentityLinkResponse szrgwOperation( - @WebParam(name = "CreateIdentityLinkRequest", targetNamespace = "http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd", partName = "CreateIdentityLinkRequest") - CreateIdentityLinkRequest createIdentityLinkRequest); - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIdentifiers.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIdentifiers.java deleted file mode 100644 index 7aa6dcdf2..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIdentifiers.java +++ /dev/null @@ -1,71 +0,0 @@ - -package at.gv.util.xsd.mis; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded"> - * <element name="MandateIdentifier" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "mandateIdentifier" -}) -@XmlRootElement(name = "MandateIdentifiers") -public class MandateIdentifiers { - - @XmlElement(name = "MandateIdentifier", required = true) - protected List<String> mandateIdentifier; - - /** - * Gets the value of the mandateIdentifier property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the mandateIdentifier property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getMandateIdentifier().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getMandateIdentifier() { - if (mandateIdentifier == null) { - mandateIdentifier = new ArrayList<String>(); - } - return this.mandateIdentifier; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueRequestType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueRequestType.java deleted file mode 100644 index 0c67da5ee..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueRequestType.java +++ /dev/null @@ -1,333 +0,0 @@ - -package at.gv.util.xsd.mis; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for MandateIssueRequestType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="MandateIssueRequestType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <sequence> - * <element name="IdentityLink" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> - * <element name="X509SignatureCertificate" type="{http://www.w3.org/2001/XMLSchema}base64Binary" minOccurs="0"/> - * <element name="OAFriendlyName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="RedirectURL" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> - * <element name="ReferenceValue"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}token"> - * <minLength value="10"/> - * <maxLength value="100"/> - * </restriction> - * </simpleType> - * </element> - * <element name="Filters" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}MandateIdentifiers" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}Target" minOccurs="0"/> - * </sequence> - * <element name="SessionID" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "MandateIssueRequestType", propOrder = { - "identityLink", - "x509SignatureCertificate", - "oaFriendlyName", - "redirectURL", - "referenceValue", - "filters", - "target", - "sessionID" -}) -public class MandateIssueRequestType { - - @XmlElement(name = "IdentityLink") - protected byte[] identityLink; - @XmlElement(name = "X509SignatureCertificate") - protected byte[] x509SignatureCertificate; - @XmlElement(name = "OAFriendlyName") - protected String oaFriendlyName; - @XmlElement(name = "RedirectURL") - @XmlSchemaType(name = "anyURI") - protected String redirectURL; - @XmlElement(name = "ReferenceValue") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - protected String referenceValue; - @XmlElement(name = "Filters") - protected MandateIssueRequestType.Filters filters; - @XmlElement(name = "Target") - protected Target target; - @XmlElement(name = "SessionID") - protected String sessionID; - - /** - * Gets the value of the identityLink property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getIdentityLink() { - return identityLink; - } - - /** - * Sets the value of the identityLink property. - * - * @param value - * allowed object is - * byte[] - */ - public void setIdentityLink(byte[] value) { - this.identityLink = value; - } - - /** - * Gets the value of the x509SignatureCertificate property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getX509SignatureCertificate() { - return x509SignatureCertificate; - } - - /** - * Sets the value of the x509SignatureCertificate property. - * - * @param value - * allowed object is - * byte[] - */ - public void setX509SignatureCertificate(byte[] value) { - this.x509SignatureCertificate = value; - } - - /** - * Gets the value of the oaFriendlyName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOAFriendlyName() { - return oaFriendlyName; - } - - /** - * Sets the value of the oaFriendlyName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOAFriendlyName(String value) { - this.oaFriendlyName = value; - } - - /** - * Gets the value of the redirectURL property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRedirectURL() { - return redirectURL; - } - - /** - * Sets the value of the redirectURL property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRedirectURL(String value) { - this.redirectURL = value; - } - - /** - * Gets the value of the referenceValue property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getReferenceValue() { - return referenceValue; - } - - /** - * Sets the value of the referenceValue property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setReferenceValue(String value) { - this.referenceValue = value; - } - - /** - * Gets the value of the filters property. - * - * @return - * possible object is - * {@link MandateIssueRequestType.Filters } - * - */ - public MandateIssueRequestType.Filters getFilters() { - return filters; - } - - /** - * Sets the value of the filters property. - * - * @param value - * allowed object is - * {@link MandateIssueRequestType.Filters } - * - */ - public void setFilters(MandateIssueRequestType.Filters value) { - this.filters = value; - } - - /** - * Gets the value of the target property. - * - * @return - * possible object is - * {@link Target } - * - */ - public Target getTarget() { - return target; - } - - /** - * Sets the value of the target property. - * - * @param value - * allowed object is - * {@link Target } - * - */ - public void setTarget(Target value) { - this.target = value; - } - - /** - * Gets the value of the sessionID property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionID() { - return sessionID; - } - - /** - * Sets the value of the sessionID property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionID(String value) { - this.sessionID = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}MandateIdentifiers" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "mandateIdentifiers" - }) - public static class Filters { - - @XmlElement(name = "MandateIdentifiers") - protected MandateIdentifiers mandateIdentifiers; - - /** - * Gets the value of the mandateIdentifiers property. - * - * @return - * possible object is - * {@link MandateIdentifiers } - * - */ - public MandateIdentifiers getMandateIdentifiers() { - return mandateIdentifiers; - } - - /** - * Sets the value of the mandateIdentifiers property. - * - * @param value - * allowed object is - * {@link MandateIdentifiers } - * - */ - public void setMandateIdentifiers(MandateIdentifiers value) { - this.mandateIdentifiers = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueResponseType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueResponseType.java deleted file mode 100644 index 7e55becac..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/MandateIssueResponseType.java +++ /dev/null @@ -1,442 +0,0 @@ - -package at.gv.util.xsd.mis; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * <p>Java class for MandateIssueResponseType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="MandateIssueResponseType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <sequence> - * <element name="SessionID" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="GuiRedirectURL" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> - * </sequence> - * <element name="Mandates"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Mandate" maxOccurs="unbounded"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> - * <attribute name="ProfessionalRepresentative" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="OWbPK" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element name="Error"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Code" type="{http://www.w3.org/2001/XMLSchema}positiveInteger"/> - * <element name="Text" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "MandateIssueResponseType", propOrder = { - "sessionID", - "guiRedirectURL", - "mandates", - "error" -}) -public class MandateIssueResponseType { - - @XmlElement(name = "SessionID") - protected String sessionID; - @XmlElement(name = "GuiRedirectURL") - @XmlSchemaType(name = "anyURI") - protected String guiRedirectURL; - @XmlElement(name = "Mandates") - protected MandateIssueResponseType.Mandates mandates; - @XmlElement(name = "Error") - protected MandateIssueResponseType.Error error; - - /** - * Gets the value of the sessionID property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSessionID() { - return sessionID; - } - - /** - * Sets the value of the sessionID property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSessionID(String value) { - this.sessionID = value; - } - - /** - * Gets the value of the guiRedirectURL property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getGuiRedirectURL() { - return guiRedirectURL; - } - - /** - * Sets the value of the guiRedirectURL property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setGuiRedirectURL(String value) { - this.guiRedirectURL = value; - } - - /** - * Gets the value of the mandates property. - * - * @return - * possible object is - * {@link MandateIssueResponseType.Mandates } - * - */ - public MandateIssueResponseType.Mandates getMandates() { - return mandates; - } - - /** - * Sets the value of the mandates property. - * - * @param value - * allowed object is - * {@link MandateIssueResponseType.Mandates } - * - */ - public void setMandates(MandateIssueResponseType.Mandates value) { - this.mandates = value; - } - - /** - * Gets the value of the error property. - * - * @return - * possible object is - * {@link MandateIssueResponseType.Error } - * - */ - public MandateIssueResponseType.Error getError() { - return error; - } - - /** - * Sets the value of the error property. - * - * @param value - * allowed object is - * {@link MandateIssueResponseType.Error } - * - */ - public void setError(MandateIssueResponseType.Error value) { - this.error = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Code" type="{http://www.w3.org/2001/XMLSchema}positiveInteger"/> - * <element name="Text" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "code", - "text" - }) - public static class Error { - - @XmlElement(name = "Code", required = true) - @XmlSchemaType(name = "positiveInteger") - protected BigInteger code; - @XmlElement(name = "Text", required = true) - protected String text; - - /** - * Gets the value of the code property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getCode() { - return code; - } - - /** - * Sets the value of the code property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setCode(BigInteger value) { - this.code = value; - } - - /** - * Gets the value of the text property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getText() { - return text; - } - - /** - * Sets the value of the text property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setText(String value) { - this.text = value; - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Mandate" maxOccurs="unbounded"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> - * <attribute name="ProfessionalRepresentative" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="OWbPK" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "mandate" - }) - public static class Mandates { - - @XmlElement(name = "Mandate", required = true) - protected List<MandateIssueResponseType.Mandates.Mandate> mandate; - - /** - * Gets the value of the mandate property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the mandate property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getMandate().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link MandateIssueResponseType.Mandates.Mandate } - * - * - */ - public List<MandateIssueResponseType.Mandates.Mandate> getMandate() { - if (mandate == null) { - mandate = new ArrayList<MandateIssueResponseType.Mandates.Mandate>(); - } - return this.mandate; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>base64Binary"> - * <attribute name="ProfessionalRepresentative" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="OWbPK" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class Mandate { - - @XmlValue - protected byte[] value; - @XmlAttribute(name = "ProfessionalRepresentative") - protected String professionalRepresentative; - @XmlAttribute(name = "OWbPK") - protected String oWbPK; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * byte[] - */ - public void setValue(byte[] value) { - this.value = value; - } - - /** - * Gets the value of the professionalRepresentative property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getProfessionalRepresentative() { - return professionalRepresentative; - } - - /** - * Sets the value of the professionalRepresentative property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setProfessionalRepresentative(String value) { - this.professionalRepresentative = value; - } - - /** - * Gets the value of the oWbPK property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOWbPK() { - return oWbPK; - } - - /** - * Sets the value of the oWbPK property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOWbPK(String value) { - this.oWbPK = value; - } - - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/ObjectFactory.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/ObjectFactory.java deleted file mode 100644 index 5e58d91b1..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/ObjectFactory.java +++ /dev/null @@ -1,119 +0,0 @@ - -package at.gv.util.xsd.mis; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.util.xsd.mis package. - * <p>An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _MandateIssueRequest_QNAME = new QName("http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd", "MandateIssueRequest"); - private final static QName _MandateIssueResponse_QNAME = new QName("http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd", "MandateIssueResponse"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.util.xsd.mis - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link MandateIssueResponseType } - * - */ - public MandateIssueResponseType createMandateIssueResponseType() { - return new MandateIssueResponseType(); - } - - /** - * Create an instance of {@link MandateIssueResponseType.Mandates } - * - */ - public MandateIssueResponseType.Mandates createMandateIssueResponseTypeMandates() { - return new MandateIssueResponseType.Mandates(); - } - - /** - * Create an instance of {@link MandateIssueRequestType } - * - */ - public MandateIssueRequestType createMandateIssueRequestType() { - return new MandateIssueRequestType(); - } - - /** - * Create an instance of {@link Target } - * - */ - public Target createTarget() { - return new Target(); - } - - /** - * Create an instance of {@link MandateIdentifiers } - * - */ - public MandateIdentifiers createMandateIdentifiers() { - return new MandateIdentifiers(); - } - - /** - * Create an instance of {@link MandateIssueResponseType.Error } - * - */ - public MandateIssueResponseType.Error createMandateIssueResponseTypeError() { - return new MandateIssueResponseType.Error(); - } - - /** - * Create an instance of {@link MandateIssueResponseType.Mandates.Mandate } - * - */ - public MandateIssueResponseType.Mandates.Mandate createMandateIssueResponseTypeMandatesMandate() { - return new MandateIssueResponseType.Mandates.Mandate(); - } - - /** - * Create an instance of {@link MandateIssueRequestType.Filters } - * - */ - public MandateIssueRequestType.Filters createMandateIssueRequestTypeFilters() { - return new MandateIssueRequestType.Filters(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link MandateIssueRequestType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd", name = "MandateIssueRequest") - public JAXBElement<MandateIssueRequestType> createMandateIssueRequest(MandateIssueRequestType value) { - return new JAXBElement<MandateIssueRequestType>(_MandateIssueRequest_QNAME, MandateIssueRequestType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link MandateIssueResponseType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd", name = "MandateIssueResponse") - public JAXBElement<MandateIssueResponseType> createMandateIssueResponse(MandateIssueResponseType value) { - return new JAXBElement<MandateIssueResponseType>(_MandateIssueResponse_QNAME, MandateIssueResponseType.class, null, value); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/Target.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/Target.java deleted file mode 100644 index c85376979..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/Target.java +++ /dev/null @@ -1,94 +0,0 @@ - -package at.gv.util.xsd.mis; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> - * <element name="Value" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "type", - "value" -}) -@XmlRootElement(name = "Target") -public class Target { - - @XmlElement(name = "Type", required = true) - @XmlSchemaType(name = "anyURI") - protected String type; - @XmlElement(name = "Value") - protected String value; - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/package-info.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/package-info.java deleted file mode 100644 index e6bcf80ef..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/mis/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.util.xsd.mis; diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractAddressType.java deleted file mode 100644 index 824331174..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractAddressType.java +++ /dev/null @@ -1,139 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import javax.xml.namespace.QName; - - -/** - * main structure of address data - * - * <p>Java class for AbstractAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AbstractAddressType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence minOccurs="0"> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Identification" maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * <anyAttribute namespace='##other'/> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AbstractAddressType", propOrder = { - "identification" -}) -@XmlSeeAlso({ - InternetAddressType.class, - TypedPostalAddressType.class, - TelephoneAddressType.class, - CompactPostalAddressType.class, - PostalAddressType.class -}) -public class AbstractAddressType { - - @XmlElement(name = "Identification") - protected List<IdentificationType> identification; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAnyAttribute - private Map<QName, String> otherAttributes = new HashMap<QName, String>(); - - /** - * unique identification entities Gets the value of the identification property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the identification property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getIdentification().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link IdentificationType } - * - * - */ - public List<IdentificationType> getIdentification() { - if (identification == null) { - identification = new ArrayList<IdentificationType>(); - } - return this.identification; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - * <p> - * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map<QName, String> getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractPersonType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractPersonType.java deleted file mode 100644 index ebcee3d1d..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractPersonType.java +++ /dev/null @@ -1,183 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import javax.xml.namespace.QName; - - -/** - * main structure of person data - * - * <p>Java class for AbstractPersonType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AbstractPersonType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice minOccurs="0"> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Identification" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractSimpleIdentification" maxOccurs="unbounded" minOccurs="0"/> - * </choice> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * <anyAttribute namespace='##other'/> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AbstractPersonType", propOrder = { - "identification", - "abstractSimpleIdentification" -}) -@XmlSeeAlso({ - CompactCorporateBodyType.class, - PersonDataType.class, - CompactPhysicalPersonType.class, - PhysicalPersonType.class, - CorporateBodyType.class, - CompactPersonDataType.class -}) -public class AbstractPersonType { - - @XmlElement(name = "Identification") - protected List<IdentificationType> identification; - @XmlElementRef(name = "AbstractSimpleIdentification", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - protected List<JAXBElement<? extends AbstractSimpleIdentificationType>> abstractSimpleIdentification; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAnyAttribute - private Map<QName, String> otherAttributes = new HashMap<QName, String>(); - - /** - * unique identification entities Gets the value of the identification property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the identification property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getIdentification().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link IdentificationType } - * - * - */ - public List<IdentificationType> getIdentification() { - if (identification == null) { - identification = new ArrayList<IdentificationType>(); - } - return this.identification; - } - - /** - * Gets the value of the abstractSimpleIdentification property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the abstractSimpleIdentification property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAbstractSimpleIdentification().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link ZMRzahl }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >} - * {@link JAXBElement }{@code <}{@link Vereinsnummer }{@code >} - * {@link JAXBElement }{@code <}{@link Firmenbuchnummer }{@code >} - * {@link JAXBElement }{@code <}{@link ERJPZahl }{@code >} - * - * - */ - public List<JAXBElement<? extends AbstractSimpleIdentificationType>> getAbstractSimpleIdentification() { - if (abstractSimpleIdentification == null) { - abstractSimpleIdentification = new ArrayList<JAXBElement<? extends AbstractSimpleIdentificationType>>(); - } - return this.abstractSimpleIdentification; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - * <p> - * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map<QName, String> getOtherAttributes() { - return otherAttributes; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractSimpleIdentificationType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractSimpleIdentificationType.java deleted file mode 100644 index fb9201b02..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AbstractSimpleIdentificationType.java +++ /dev/null @@ -1,66 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * <p>Java class for AbstractSimpleIdentificationType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AbstractSimpleIdentificationType"> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AbstractSimpleIdentificationType", propOrder = { - "value" -}) -@XmlSeeAlso({ - ZMRzahl.class, - Vereinsnummer.class, - ERJPZahl.class, - Firmenbuchnummer.class -}) -public class AbstractSimpleIdentificationType { - - @XmlValue - protected String value; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AlternativeName.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AlternativeName.java deleted file mode 100644 index 9768cadeb..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/AlternativeName.java +++ /dev/null @@ -1,62 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PersonNameType"> - * <attribute name="Type" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AlternativeNameTypeType" /> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "") -@XmlRootElement(name = "AlternativeName") -public class AlternativeName - extends PersonNameType -{ - - @XmlAttribute(name = "Type") - protected String type; - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/BankConnectionType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/BankConnectionType.java deleted file mode 100644 index aaf3ce9fc..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/BankConnectionType.java +++ /dev/null @@ -1,339 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.math.BigInteger; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * compare BankverbindungTyp - * - * <p>Java class for BankConnectionType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="BankConnectionType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Holder" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="BankName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <choice> - * <element name="NationalBankConnection"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AccountNumber" type="{http://www.w3.org/2001/XMLSchema}integer"/> - * <element name="BankCode" type="{http://www.w3.org/2001/XMLSchema}integer"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element name="InternationalBankConnection"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="IBAN" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="BIC" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </choice> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "BankConnectionType", propOrder = { - "holder", - "bankName", - "nationalBankConnection", - "internationalBankConnection" -}) -public class BankConnectionType { - - @XmlElement(name = "Holder", required = true) - protected String holder; - @XmlElement(name = "BankName", required = true) - protected String bankName; - @XmlElement(name = "NationalBankConnection") - protected BankConnectionType.NationalBankConnection nationalBankConnection; - @XmlElement(name = "InternationalBankConnection") - protected BankConnectionType.InternationalBankConnection internationalBankConnection; - - /** - * Gets the value of the holder property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getHolder() { - return holder; - } - - /** - * Sets the value of the holder property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setHolder(String value) { - this.holder = value; - } - - /** - * Gets the value of the bankName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBankName() { - return bankName; - } - - /** - * Sets the value of the bankName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBankName(String value) { - this.bankName = value; - } - - /** - * Gets the value of the nationalBankConnection property. - * - * @return - * possible object is - * {@link BankConnectionType.NationalBankConnection } - * - */ - public BankConnectionType.NationalBankConnection getNationalBankConnection() { - return nationalBankConnection; - } - - /** - * Sets the value of the nationalBankConnection property. - * - * @param value - * allowed object is - * {@link BankConnectionType.NationalBankConnection } - * - */ - public void setNationalBankConnection(BankConnectionType.NationalBankConnection value) { - this.nationalBankConnection = value; - } - - /** - * Gets the value of the internationalBankConnection property. - * - * @return - * possible object is - * {@link BankConnectionType.InternationalBankConnection } - * - */ - public BankConnectionType.InternationalBankConnection getInternationalBankConnection() { - return internationalBankConnection; - } - - /** - * Sets the value of the internationalBankConnection property. - * - * @param value - * allowed object is - * {@link BankConnectionType.InternationalBankConnection } - * - */ - public void setInternationalBankConnection(BankConnectionType.InternationalBankConnection value) { - this.internationalBankConnection = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="IBAN" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="BIC" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "iban", - "bic" - }) - public static class InternationalBankConnection { - - @XmlElement(name = "IBAN", required = true) - protected String iban; - @XmlElement(name = "BIC", required = true) - protected String bic; - - /** - * Gets the value of the iban property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIBAN() { - return iban; - } - - /** - * Sets the value of the iban property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIBAN(String value) { - this.iban = value; - } - - /** - * Gets the value of the bic property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBIC() { - return bic; - } - - /** - * Sets the value of the bic property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBIC(String value) { - this.bic = value; - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AccountNumber" type="{http://www.w3.org/2001/XMLSchema}integer"/> - * <element name="BankCode" type="{http://www.w3.org/2001/XMLSchema}integer"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "accountNumber", - "bankCode" - }) - public static class NationalBankConnection { - - @XmlElement(name = "AccountNumber", required = true) - protected BigInteger accountNumber; - @XmlElement(name = "BankCode", required = true) - protected BigInteger bankCode; - - /** - * Gets the value of the accountNumber property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getAccountNumber() { - return accountNumber; - } - - /** - * Sets the value of the accountNumber property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setAccountNumber(BigInteger value) { - this.accountNumber = value; - } - - /** - * Gets the value of the bankCode property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getBankCode() { - return bankCode; - } - - /** - * Sets the value of the bankCode property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setBankCode(BigInteger value) { - this.bankCode = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactCorporateBodyType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactCorporateBodyType.java deleted file mode 100644 index bd7d32493..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactCorporateBodyType.java +++ /dev/null @@ -1,203 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * juridical person, organisation, compare NichtNatuerlichePersonTyp - * - * <p>Java class for CompactCorporateBodyType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CompactCorporateBodyType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence minOccurs="0"> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded" minOccurs="0"/> - * <element name="FullName" type="{http://www.w3.org/2001/XMLSchema}token"/> - * <element name="LegalForm" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/> - * <element name="Organization" type="{http://www.w3.org/2001/XMLSchema}token" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CompactCorporateBodyType", propOrder = { - "type", - "fullName", - "legalForm", - "organization", - "any" -}) -public class CompactCorporateBodyType - extends AbstractPersonType -{ - - @XmlElement(name = "Type") - @XmlSchemaType(name = "anyURI") - protected List<String> type; - @XmlElement(name = "FullName") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String fullName; - @XmlElement(name = "LegalForm") - @XmlSchemaType(name = "anyURI") - protected String legalForm; - @XmlElement(name = "Organization") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String organization; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the type property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the type property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getType().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getType() { - if (type == null) { - type = new ArrayList<String>(); - } - return this.type; - } - - /** - * Gets the value of the fullName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFullName() { - return fullName; - } - - /** - * Sets the value of the fullName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFullName(String value) { - this.fullName = value; - } - - /** - * Gets the value of the legalForm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLegalForm() { - return legalForm; - } - - /** - * Sets the value of the legalForm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLegalForm(String value) { - this.legalForm = value; - } - - /** - * Gets the value of the organization property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOrganization() { - return organization; - } - - /** - * Sets the value of the organization property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOrganization(String value) { - this.organization = value; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonData.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonData.java deleted file mode 100644 index 5c563cecd..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonData.java +++ /dev/null @@ -1,140 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <choice> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}CompactPhysicalPerson"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}CompactCorporateBody"/> - * </choice> - * <choice maxOccurs="unbounded" minOccurs="0"> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}InternetAddress"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}TelephoneAddress"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}CompactPostalAddress"/> - * </choice> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "compactPhysicalPerson", - "compactCorporateBody", - "internetAddressOrTelephoneAddressOrCompactPostalAddress" -}) -@XmlRootElement(name = "CompactPersonData") -public class CompactPersonData { - - @XmlElement(name = "CompactPhysicalPerson") - protected CompactPhysicalPersonType compactPhysicalPerson; - @XmlElement(name = "CompactCorporateBody") - protected CompactCorporateBodyType compactCorporateBody; - @XmlElements({ - @XmlElement(name = "InternetAddress", type = InternetAddressType.class), - @XmlElement(name = "TelephoneAddress", type = TelephoneAddressType.class), - @XmlElement(name = "CompactPostalAddress", type = CompactPostalAddressType.class) - }) - protected List<AbstractAddressType> internetAddressOrTelephoneAddressOrCompactPostalAddress; - - /** - * Gets the value of the compactPhysicalPerson property. - * - * @return - * possible object is - * {@link CompactPhysicalPersonType } - * - */ - public CompactPhysicalPersonType getCompactPhysicalPerson() { - return compactPhysicalPerson; - } - - /** - * Sets the value of the compactPhysicalPerson property. - * - * @param value - * allowed object is - * {@link CompactPhysicalPersonType } - * - */ - public void setCompactPhysicalPerson(CompactPhysicalPersonType value) { - this.compactPhysicalPerson = value; - } - - /** - * Gets the value of the compactCorporateBody property. - * - * @return - * possible object is - * {@link CompactCorporateBodyType } - * - */ - public CompactCorporateBodyType getCompactCorporateBody() { - return compactCorporateBody; - } - - /** - * Sets the value of the compactCorporateBody property. - * - * @param value - * allowed object is - * {@link CompactCorporateBodyType } - * - */ - public void setCompactCorporateBody(CompactCorporateBodyType value) { - this.compactCorporateBody = value; - } - - /** - * Gets the value of the internetAddressOrTelephoneAddressOrCompactPostalAddress property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the internetAddressOrTelephoneAddressOrCompactPostalAddress property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getInternetAddressOrTelephoneAddressOrCompactPostalAddress().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link InternetAddressType } - * {@link TelephoneAddressType } - * {@link CompactPostalAddressType } - * - * - */ - public List<AbstractAddressType> getInternetAddressOrTelephoneAddressOrCompactPostalAddress() { - if (internetAddressOrTelephoneAddressOrCompactPostalAddress == null) { - internetAddressOrTelephoneAddressOrCompactPostalAddress = new ArrayList<AbstractAddressType>(); - } - return this.internetAddressOrTelephoneAddressOrCompactPostalAddress; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonDataType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonDataType.java deleted file mode 100644 index aad9fa004..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonDataType.java +++ /dev/null @@ -1,255 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.xmldsig.SignatureType; -import org.w3c.dom.Element; - - -/** - * signed person datastructure. The first Identification elements (from the base type) denote the record as such (e.g. database key for this record) - not to be mistaken for identifiers of the person or of an address (they have their own Identification elements). - * - * <p>Java class for CompactPersonDataType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CompactPersonDataType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Person"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Address" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" maxOccurs="unbounded" minOccurs="0"/> - * <element name="AdditionalData" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax'/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CompactPersonDataType", propOrder = { - "person", - "address", - "signature", - "additionalData" -}) -public class CompactPersonDataType - extends AbstractPersonType -{ - - @XmlElementRef(name = "Person", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - protected JAXBElement<? extends AbstractPersonType> person; - @XmlElementRef(name = "Address", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - protected List<JAXBElement<? extends AbstractAddressType>> address; - @XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#") - protected List<SignatureType> signature; - @XmlElement(name = "AdditionalData") - protected CompactPersonDataType.AdditionalData additionalData; - - /** - * Gets the value of the person property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} - * - */ - public JAXBElement<? extends AbstractPersonType> getPerson() { - return person; - } - - /** - * Sets the value of the person property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} - * - */ - public void setPerson(JAXBElement<? extends AbstractPersonType> value) { - this.person = value; - } - - /** - * Gets the value of the address property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the address property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAddress().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link InternetAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} - * - * - */ - public List<JAXBElement<? extends AbstractAddressType>> getAddress() { - if (address == null) { - address = new ArrayList<JAXBElement<? extends AbstractAddressType>>(); - } - return this.address; - } - - /** - * one or more electronic signatures applied on fields above Gets the value of the signature property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the signature property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getSignature().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link SignatureType } - * - * - */ - public List<SignatureType> getSignature() { - if (signature == null) { - signature = new ArrayList<SignatureType>(); - } - return this.signature; - } - - /** - * Gets the value of the additionalData property. - * - * @return - * possible object is - * {@link CompactPersonDataType.AdditionalData } - * - */ - public CompactPersonDataType.AdditionalData getAdditionalData() { - return additionalData; - } - - /** - * Sets the value of the additionalData property. - * - * @param value - * allowed object is - * {@link CompactPersonDataType.AdditionalData } - * - */ - public void setAdditionalData(CompactPersonDataType.AdditionalData value) { - this.additionalData = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax'/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "content" - }) - public static class AdditionalData { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonNameType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonNameType.java deleted file mode 100644 index 08aabd4e5..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPersonNameType.java +++ /dev/null @@ -1,429 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * container for parts of a name, comapre PersonenNameTyp - * - * <p>Java class for CompactPersonNameType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CompactPersonNameType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="GivenName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded"/> - * <element name="FamilyName" maxOccurs="unbounded"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="primary" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="true"/> - * <enumeration value="false"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * <element name="Affix" maxOccurs="unbounded" minOccurs="0"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="academicGrade"/> - * <enumeration value="aristocraticPrefix"/> - * <enumeration value="aristocraticTitle"/> - * <enumeration value="familyNamePrefix"/> - * <enumeration value="familyNameSuffix"/> - * <enumeration value="formOfAddress"/> - * <enumeration value="generation"/> - * <enumeration value="qualification"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="position"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="prefix"/> - * <enumeration value="suffix"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CompactPersonNameType", propOrder = { - "givenName", - "familyName", - "affix" -}) -public class CompactPersonNameType { - - @XmlElement(name = "GivenName", required = true) - protected List<String> givenName; - @XmlElement(name = "FamilyName", required = true) - protected List<CompactPersonNameType.FamilyName> familyName; - @XmlElement(name = "Affix") - protected List<CompactPersonNameType.Affix> affix; - - /** - * Gets the value of the givenName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the givenName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getGivenName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getGivenName() { - if (givenName == null) { - givenName = new ArrayList<String>(); - } - return this.givenName; - } - - /** - * Gets the value of the familyName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the familyName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getFamilyName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link CompactPersonNameType.FamilyName } - * - * - */ - public List<CompactPersonNameType.FamilyName> getFamilyName() { - if (familyName == null) { - familyName = new ArrayList<CompactPersonNameType.FamilyName>(); - } - return this.familyName; - } - - /** - * Gets the value of the affix property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the affix property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAffix().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link CompactPersonNameType.Affix } - * - * - */ - public List<CompactPersonNameType.Affix> getAffix() { - if (affix == null) { - affix = new ArrayList<CompactPersonNameType.Affix>(); - } - return this.affix; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="academicGrade"/> - * <enumeration value="aristocraticPrefix"/> - * <enumeration value="aristocraticTitle"/> - * <enumeration value="familyNamePrefix"/> - * <enumeration value="familyNameSuffix"/> - * <enumeration value="formOfAddress"/> - * <enumeration value="generation"/> - * <enumeration value="qualification"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="position"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="prefix"/> - * <enumeration value="suffix"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class Affix { - - @XmlValue - protected String value; - @XmlAttribute(name = "type") - protected String type; - @XmlAttribute(name = "position") - protected String position; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the position property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPosition() { - return position; - } - - /** - * Sets the value of the position property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPosition(String value) { - this.position = value; - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="primary" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="true"/> - * <enumeration value="false"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class FamilyName { - - @XmlValue - protected String value; - @XmlAttribute(name = "primary") - protected String primary; - @XmlAttribute(name = "prefix") - protected String prefix; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the primary property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrimary() { - if (primary == null) { - return "undefined"; - } else { - return primary; - } - } - - /** - * Sets the value of the primary property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrimary(String value) { - this.primary = value; - } - - /** - * Gets the value of the prefix property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrefix() { - return prefix; - } - - /** - * Sets the value of the prefix property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrefix(String value) { - this.prefix = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPhysicalPersonType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPhysicalPersonType.java deleted file mode 100644 index 1e37799b0..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPhysicalPersonType.java +++ /dev/null @@ -1,255 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * physical person, compare NatuerlichePersonTyp - * - * <p>Java class for CompactPhysicalPersonType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CompactPhysicalPersonType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence minOccurs="0"> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}CompactName"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}MaritalStatus" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Sex" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}DateOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PlaceOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Nationality" maxOccurs="unbounded" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CompactPhysicalPersonType", propOrder = { - "compactName", - "maritalStatus", - "sex", - "dateOfBirth", - "placeOfBirth", - "nationality", - "any" -}) -public class CompactPhysicalPersonType - extends AbstractPersonType -{ - - @XmlElement(name = "CompactName") - protected CompactPersonNameType compactName; - @XmlElement(name = "MaritalStatus") - protected MaritalStatusType maritalStatus; - @XmlElement(name = "Sex") - protected SexType sex; - @XmlElement(name = "DateOfBirth") - protected String dateOfBirth; - @XmlElement(name = "PlaceOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String placeOfBirth; - @XmlElement(name = "Nationality") - protected List<NationalityType> nationality; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the compactName property. - * - * @return - * possible object is - * {@link CompactPersonNameType } - * - */ - public CompactPersonNameType getCompactName() { - return compactName; - } - - /** - * Sets the value of the compactName property. - * - * @param value - * allowed object is - * {@link CompactPersonNameType } - * - */ - public void setCompactName(CompactPersonNameType value) { - this.compactName = value; - } - - /** - * Gets the value of the maritalStatus property. - * - * @return - * possible object is - * {@link MaritalStatusType } - * - */ - public MaritalStatusType getMaritalStatus() { - return maritalStatus; - } - - /** - * Sets the value of the maritalStatus property. - * - * @param value - * allowed object is - * {@link MaritalStatusType } - * - */ - public void setMaritalStatus(MaritalStatusType value) { - this.maritalStatus = value; - } - - /** - * Gets the value of the sex property. - * - * @return - * possible object is - * {@link SexType } - * - */ - public SexType getSex() { - return sex; - } - - /** - * Sets the value of the sex property. - * - * @param value - * allowed object is - * {@link SexType } - * - */ - public void setSex(SexType value) { - this.sex = value; - } - - /** - * Gets the value of the dateOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDateOfBirth() { - return dateOfBirth; - } - - /** - * Sets the value of the dateOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDateOfBirth(String value) { - this.dateOfBirth = value; - } - - /** - * Gets the value of the placeOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPlaceOfBirth() { - return placeOfBirth; - } - - /** - * Sets the value of the placeOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPlaceOfBirth(String value) { - this.placeOfBirth = value; - } - - /** - * Gets the value of the nationality property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the nationality property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getNationality().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link NationalityType } - * - * - */ - public List<NationalityType> getNationality() { - if (nationality == null) { - nationality = new ArrayList<NationalityType>(); - } - return this.nationality; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPostalAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPostalAddressType.java deleted file mode 100644 index 51e34910d..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CompactPostalAddressType.java +++ /dev/null @@ -1,378 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * compare PostAdresseTyp - * - * <p>Java class for CompactPostalAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CompactPostalAddressType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractAddressType"> - * <sequence> - * <element name="CountryCode" minOccurs="0"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <pattern value="[A-Z]{2}"/> - * </restriction> - * </simpleType> - * </element> - * <element name="CountryName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="PostalCode" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="Municipality" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="DeliveryAddress"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="StreetName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="BuildingNumber" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="Unit" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DoorNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * <attribute name="type" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="postOfficeBoxAddress"/> - * <enumeration value="streetAddress"/> - * <enumeration value="militaryAddress"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CompactPostalAddressType", propOrder = { - "countryCode", - "countryName", - "postalCode", - "municipality", - "deliveryAddress" -}) -public class CompactPostalAddressType - extends AbstractAddressType -{ - - @XmlElement(name = "CountryCode") - protected String countryCode; - @XmlElement(name = "CountryName") - protected String countryName; - @XmlElement(name = "PostalCode", required = true) - protected String postalCode; - @XmlElement(name = "Municipality", required = true) - protected String municipality; - @XmlElement(name = "DeliveryAddress", required = true) - protected CompactPostalAddressType.DeliveryAddress deliveryAddress; - @XmlAttribute(name = "type") - protected String type; - - /** - * Gets the value of the countryCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCountryCode() { - return countryCode; - } - - /** - * Sets the value of the countryCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCountryCode(String value) { - this.countryCode = value; - } - - /** - * Gets the value of the countryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCountryName() { - return countryName; - } - - /** - * Sets the value of the countryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCountryName(String value) { - this.countryName = value; - } - - /** - * Gets the value of the postalCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPostalCode() { - return postalCode; - } - - /** - * Sets the value of the postalCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPostalCode(String value) { - this.postalCode = value; - } - - /** - * Gets the value of the municipality property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMunicipality() { - return municipality; - } - - /** - * Sets the value of the municipality property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMunicipality(String value) { - this.municipality = value; - } - - /** - * Gets the value of the deliveryAddress property. - * - * @return - * possible object is - * {@link CompactPostalAddressType.DeliveryAddress } - * - */ - public CompactPostalAddressType.DeliveryAddress getDeliveryAddress() { - return deliveryAddress; - } - - /** - * Sets the value of the deliveryAddress property. - * - * @param value - * allowed object is - * {@link CompactPostalAddressType.DeliveryAddress } - * - */ - public void setDeliveryAddress(CompactPostalAddressType.DeliveryAddress value) { - this.deliveryAddress = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - if (type == null) { - return "undefined"; - } else { - return type; - } - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="StreetName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="BuildingNumber" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="Unit" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DoorNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "streetName", - "buildingNumber", - "unit", - "doorNumber" - }) - public static class DeliveryAddress { - - @XmlElement(name = "StreetName", required = true) - protected String streetName; - @XmlElement(name = "BuildingNumber", required = true) - protected String buildingNumber; - @XmlElement(name = "Unit") - protected String unit; - @XmlElement(name = "DoorNumber") - protected String doorNumber; - - /** - * Gets the value of the streetName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStreetName() { - return streetName; - } - - /** - * Sets the value of the streetName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStreetName(String value) { - this.streetName = value; - } - - /** - * Gets the value of the buildingNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBuildingNumber() { - return buildingNumber; - } - - /** - * Sets the value of the buildingNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBuildingNumber(String value) { - this.buildingNumber = value; - } - - /** - * Gets the value of the unit property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getUnit() { - return unit; - } - - /** - * Sets the value of the unit property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setUnit(String value) { - this.unit = value; - } - - /** - * Gets the value of the doorNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDoorNumber() { - return doorNumber; - } - - /** - * Sets the value of the doorNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDoorNumber(String value) { - this.doorNumber = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CorporateBodyType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CorporateBodyType.java deleted file mode 100644 index 6596ae3ac..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/CorporateBodyType.java +++ /dev/null @@ -1,271 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * juridical person, organisation, compare NichtNatuerlichePersonTyp - * - * <p>Java class for CorporateBodyType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CorporateBodyType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence minOccurs="0"> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded" minOccurs="0"/> - * <element name="FullName" type="{http://www.w3.org/2001/XMLSchema}token" minOccurs="0"/> - * <element name="AlternativeName" type="{http://www.w3.org/2001/XMLSchema}token" maxOccurs="unbounded" minOccurs="0"/> - * <element name="LegalForm" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/> - * <element name="Organization" type="{http://www.w3.org/2001/XMLSchema}token" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}BankConnection" maxOccurs="unbounded" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CorporateBodyType", propOrder = { - "type", - "fullName", - "alternativeName", - "legalForm", - "organization", - "bankConnection", - "any" -}) -public class CorporateBodyType - extends AbstractPersonType -{ - - @XmlElement(name = "Type") - @XmlSchemaType(name = "anyURI") - protected List<String> type; - @XmlElement(name = "FullName") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String fullName; - @XmlElement(name = "AlternativeName") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected List<String> alternativeName; - @XmlElement(name = "LegalForm") - @XmlSchemaType(name = "anyURI") - protected String legalForm; - @XmlElement(name = "Organization") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String organization; - @XmlElement(name = "BankConnection") - protected List<BankConnectionType> bankConnection; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the type property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the type property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getType().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getType() { - if (type == null) { - type = new ArrayList<String>(); - } - return this.type; - } - - /** - * Gets the value of the fullName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFullName() { - return fullName; - } - - /** - * Sets the value of the fullName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFullName(String value) { - this.fullName = value; - } - - /** - * Gets the value of the alternativeName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the alternativeName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAlternativeName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getAlternativeName() { - if (alternativeName == null) { - alternativeName = new ArrayList<String>(); - } - return this.alternativeName; - } - - /** - * Gets the value of the legalForm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLegalForm() { - return legalForm; - } - - /** - * Sets the value of the legalForm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLegalForm(String value) { - this.legalForm = value; - } - - /** - * Gets the value of the organization property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOrganization() { - return organization; - } - - /** - * Sets the value of the organization property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOrganization(String value) { - this.organization = value; - } - - /** - * Gets the value of the bankConnection property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the bankConnection property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getBankConnection().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link BankConnectionType } - * - * - */ - public List<BankConnectionType> getBankConnection() { - if (bankConnection == null) { - bankConnection = new ArrayList<BankConnectionType>(); - } - return this.bankConnection; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedAlternativeNameTypeType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedAlternativeNameTypeType.java deleted file mode 100644 index 41a2fc70b..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedAlternativeNameTypeType.java +++ /dev/null @@ -1,60 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for DefinedAlternativeNameTypeType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="DefinedAlternativeNameTypeType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="ArtistName"/> - * <enumeration value="NickName"/> - * <enumeration value="FormerName"/> - * <enumeration value="Alias"/> - * <enumeration value="MaidenName"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "DefinedAlternativeNameTypeType") -@XmlEnum -public enum DefinedAlternativeNameTypeType { - - @XmlEnumValue("ArtistName") - ARTIST_NAME("ArtistName"), - @XmlEnumValue("NickName") - NICK_NAME("NickName"), - @XmlEnumValue("FormerName") - FORMER_NAME("FormerName"), - @XmlEnumValue("Alias") - ALIAS("Alias"), - @XmlEnumValue("MaidenName") - MAIDEN_NAME("MaidenName"); - private final String value; - - DefinedAlternativeNameTypeType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static DefinedAlternativeNameTypeType fromValue(String v) { - for (DefinedAlternativeNameTypeType c: DefinedAlternativeNameTypeType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedRelationType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedRelationType.java deleted file mode 100644 index 96e6cb4b8..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/DefinedRelationType.java +++ /dev/null @@ -1,72 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for DefinedRelationType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="DefinedRelationType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="family:Parent"/> - * <enumeration value="family:Child"/> - * <enumeration value="family:Sibling"/> - * <enumeration value="family:Grandparent"/> - * <enumeration value="family:Grandchild"/> - * <enumeration value="family:Spouse"/> - * <enumeration value="function:LegalGuardian"/> - * <enumeration value="function:IsGuardedBy"/> - * <enumeration value="function:Cohabitant"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "DefinedRelationType") -@XmlEnum -public enum DefinedRelationType { - - @XmlEnumValue("family:Parent") - FAMILY_PARENT("family:Parent"), - @XmlEnumValue("family:Child") - FAMILY_CHILD("family:Child"), - @XmlEnumValue("family:Sibling") - FAMILY_SIBLING("family:Sibling"), - @XmlEnumValue("family:Grandparent") - FAMILY_GRANDPARENT("family:Grandparent"), - @XmlEnumValue("family:Grandchild") - FAMILY_GRANDCHILD("family:Grandchild"), - @XmlEnumValue("family:Spouse") - FAMILY_SPOUSE("family:Spouse"), - @XmlEnumValue("function:LegalGuardian") - FUNCTION_LEGAL_GUARDIAN("function:LegalGuardian"), - @XmlEnumValue("function:IsGuardedBy") - FUNCTION_IS_GUARDED_BY("function:IsGuardedBy"), - @XmlEnumValue("function:Cohabitant") - FUNCTION_COHABITANT("function:Cohabitant"); - private final String value; - - DefinedRelationType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static DefinedRelationType fromValue(String v) { - for (DefinedRelationType c: DefinedRelationType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ERJPZahl.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ERJPZahl.java deleted file mode 100644 index 3c181a892..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ERJPZahl.java +++ /dev/null @@ -1,64 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://reference.e-government.gv.at/namespace/persondata/20020228#>AbstractSimpleIdentificationType"> - * <attribute name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" fixed="ERJ" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "") -public class ERJPZahl - extends AbstractSimpleIdentificationType -{ - - @XmlAttribute(name = "Identifier") - protected String identifier; - - /** - * Gets the value of the identifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIdentifier() { - if (identifier == null) { - return "ERJ"; - } else { - return identifier; - } - } - - /** - * Sets the value of the identifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIdentifier(String value) { - this.identifier = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/FederalStateType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/FederalStateType.java deleted file mode 100644 index 88577e32e..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/FederalStateType.java +++ /dev/null @@ -1,72 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for FederalStateType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="FederalStateType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="Wien"/> - * <enumeration value="Niederoesterreich"/> - * <enumeration value="Burgenland"/> - * <enumeration value="Oberoesterreich"/> - * <enumeration value="Steiermark"/> - * <enumeration value="Salzburg"/> - * <enumeration value="Kaernten"/> - * <enumeration value="Tirol"/> - * <enumeration value="Vorarlberg"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "FederalStateType") -@XmlEnum -public enum FederalStateType { - - @XmlEnumValue("Wien") - WIEN("Wien"), - @XmlEnumValue("Niederoesterreich") - NIEDEROESTERREICH("Niederoesterreich"), - @XmlEnumValue("Burgenland") - BURGENLAND("Burgenland"), - @XmlEnumValue("Oberoesterreich") - OBEROESTERREICH("Oberoesterreich"), - @XmlEnumValue("Steiermark") - STEIERMARK("Steiermark"), - @XmlEnumValue("Salzburg") - SALZBURG("Salzburg"), - @XmlEnumValue("Kaernten") - KAERNTEN("Kaernten"), - @XmlEnumValue("Tirol") - TIROL("Tirol"), - @XmlEnumValue("Vorarlberg") - VORARLBERG("Vorarlberg"); - private final String value; - - FederalStateType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static FederalStateType fromValue(String v) { - for (FederalStateType c: FederalStateType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Firmenbuchnummer.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Firmenbuchnummer.java deleted file mode 100644 index bd6758704..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Firmenbuchnummer.java +++ /dev/null @@ -1,64 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://reference.e-government.gv.at/namespace/persondata/20020228#>AbstractSimpleIdentificationType"> - * <attribute name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" fixed="FN" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "") -public class Firmenbuchnummer - extends AbstractSimpleIdentificationType -{ - - @XmlAttribute(name = "Identifier") - protected String identifier; - - /** - * Gets the value of the identifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIdentifier() { - if (identifier == null) { - return "FN"; - } else { - return identifier; - } - } - - /** - * Sets the value of the identifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIdentifier(String value) { - this.identifier = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/IdentificationType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/IdentificationType.java deleted file mode 100644 index df20e777f..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/IdentificationType.java +++ /dev/null @@ -1,311 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyAttribute; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import javax.xml.namespace.QName; -import org.w3c.dom.Element; - - -/** - * unique identifier - * - * <p>Java class for IdentificationType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="IdentificationType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Value"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> - * <element name="Authority" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * <anyAttribute namespace='##other'/> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "IdentificationType", propOrder = { - "value", - "type", - "authority", - "any" -}) -public class IdentificationType { - - @XmlElement(name = "Value", required = true) - protected IdentificationType.Value value; - @XmlElement(name = "Type", required = true) - @XmlSchemaType(name = "anyURI") - protected String type; - @XmlElement(name = "Authority") - @XmlSchemaType(name = "anyURI") - protected String authority; - @XmlAnyElement(lax = true) - protected List<Object> any; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAnyAttribute - private Map<QName, String> otherAttributes = new HashMap<QName, String>(); - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link IdentificationType.Value } - * - */ - public IdentificationType.Value getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link IdentificationType.Value } - * - */ - public void setValue(IdentificationType.Value value) { - this.value = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the authority property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAuthority() { - return authority; - } - - /** - * Sets the value of the authority property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAuthority(String value) { - this.authority = value; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets a map that contains attributes that aren't bound to any typed property on this class. - * - * <p> - * the map is keyed by the name of the attribute and - * the value is the string value of the attribute. - * - * the map returned by this method is live, and you can add new attribute - * by updating the map directly. Because of this design, there's no setter. - * - * - * @return - * always non-null - */ - public Map<QName, String> getOtherAttributes() { - return otherAttributes; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class Value { - - @XmlValue - protected String value; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/InternetAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/InternetAddressType.java deleted file mode 100644 index 90dfd4110..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/InternetAddressType.java +++ /dev/null @@ -1,136 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.xmldsig.KeyInfoType; -import org.w3c.dom.Element; - - -/** - * e.g. e-mail, webiste, compare InternetAdresseTyp - * - * <p>Java class for InternetAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="InternetAddressType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractAddressType"> - * <sequence minOccurs="0"> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyInfo" minOccurs="0"/> - * <element name="Address" type="{http://www.w3.org/2001/XMLSchema}anyURI"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "InternetAddressType", propOrder = { - "keyInfo", - "address", - "any" -}) -public class InternetAddressType - extends AbstractAddressType -{ - - @XmlElement(name = "KeyInfo", namespace = "http://www.w3.org/2000/09/xmldsig#") - protected KeyInfoType keyInfo; - @XmlElement(name = "Address") - @XmlSchemaType(name = "anyURI") - protected String address; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * certificate for secure communication - * - * @return - * possible object is - * {@link KeyInfoType } - * - */ - public KeyInfoType getKeyInfo() { - return keyInfo; - } - - /** - * Sets the value of the keyInfo property. - * - * @param value - * allowed object is - * {@link KeyInfoType } - * - */ - public void setKeyInfo(KeyInfoType value) { - this.keyInfo = value; - } - - /** - * Gets the value of the address property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAddress() { - return address; - } - - /** - * Sets the value of the address property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAddress(String value) { - this.address = value; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MaritalStatusType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MaritalStatusType.java deleted file mode 100644 index 7f908d424..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MaritalStatusType.java +++ /dev/null @@ -1,57 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for MaritalStatusType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="MaritalStatusType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}token"> - * <enumeration value="single"/> - * <enumeration value="married"/> - * <enumeration value="divorced"/> - * <enumeration value="widowed"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "MaritalStatusType") -@XmlEnum -public enum MaritalStatusType { - - @XmlEnumValue("single") - SINGLE("single"), - @XmlEnumValue("married") - MARRIED("married"), - @XmlEnumValue("divorced") - DIVORCED("divorced"), - @XmlEnumValue("widowed") - WIDOWED("widowed"); - private final String value; - - MaritalStatusType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static MaritalStatusType fromValue(String v) { - for (MaritalStatusType c: MaritalStatusType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MobileTelcomNumberType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MobileTelcomNumberType.java deleted file mode 100644 index 3abde420a..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/MobileTelcomNumberType.java +++ /dev/null @@ -1,62 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * like TelephoneAddresseType but with additional smsEnabled attribute - * - * <p>Java class for MobileTelcomNumberType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="MobileTelcomNumberType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}TelcomNumberType"> - * <attribute name="smsEnabled" type="{http://www.w3.org/2001/XMLSchema}boolean" /> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "MobileTelcomNumberType") -public class MobileTelcomNumberType - extends TelcomNumberType -{ - - @XmlAttribute(name = "smsEnabled") - protected Boolean smsEnabled; - - /** - * Gets the value of the smsEnabled property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isSmsEnabled() { - return smsEnabled; - } - - /** - * Sets the value of the smsEnabled property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setSmsEnabled(Boolean value) { - this.smsEnabled = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/NationalityType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/NationalityType.java deleted file mode 100644 index ebc563acb..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/NationalityType.java +++ /dev/null @@ -1,99 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * comapre, StaatsangehoerigkeitTyp - * - * <p>Java class for NationalityType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="NationalityType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="ISOCode3" minOccurs="0"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <length value="3"/> - * </restriction> - * </simpleType> - * </element> - * <element name="CountryNameDE" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="CountryNameEN" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="CountryNameFR" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <any processContents='lax' namespace='##other'/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "NationalityType", propOrder = { - "content" -}) -public class NationalityType { - - @XmlElementRefs({ - @XmlElementRef(name = "CountryNameFR", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), - @XmlElementRef(name = "CountryNameEN", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), - @XmlElementRef(name = "CountryNameDE", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class), - @XmlElementRef(name = "ISOCode3", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - }) - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - - /** - * comapre, StaatsangehoerigkeitTyp Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link String } - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ObjectFactory.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ObjectFactory.java deleted file mode 100644 index 890abbf8c..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ObjectFactory.java +++ /dev/null @@ -1,887 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.util.xsd.persondata package. - * <p>An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _Extension_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Extension"); - private final static QName _Vereinsnummer_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Vereinsnummer"); - private final static QName _Matrikelnummer_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Matrikelnummer"); - private final static QName _Mobile_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Mobile"); - private final static QName _Sex_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Sex"); - private final static QName _AreaCityCode_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "AreaCityCode"); - private final static QName _ZMRzahl_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "ZMRzahl"); - private final static QName _InternetAddress_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "InternetAddress"); - private final static QName _Firmenbuchnummer_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Firmenbuchnummer"); - private final static QName _InternationalCountryCode_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "InternationalCountryCode"); - private final static QName _AbstractPersonData_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "AbstractPersonData"); - private final static QName _Pager_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Pager"); - private final static QName _CompactCorporateBody_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CompactCorporateBody"); - private final static QName _ERJPZahl_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "ERJPZahl"); - private final static QName _NationalNumber_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "NationalNumber"); - private final static QName _CompactPhysicalPerson_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CompactPhysicalPerson"); - private final static QName _PhysicalPerson_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "PhysicalPerson"); - private final static QName _MaritalStatus_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "MaritalStatus"); - private final static QName _CorporateBody_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CorporateBody"); - private final static QName _CountryOfBirth_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CountryOfBirth"); - private final static QName _Sozialversicherungsnummer_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Sozialversicherungsnummer"); - private final static QName _Steuernummer_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Steuernummer"); - private final static QName _Name_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Name"); - private final static QName _StateOfBirth_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "StateOfBirth"); - private final static QName _Fax_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Fax"); - private final static QName _TelephoneAddress_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "TelephoneAddress"); - private final static QName _PlaceOfBirth_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "PlaceOfBirth"); - private final static QName _FormattedNumber_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "FormattedNumber"); - private final static QName _TypedPostalAddress_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "TypedPostalAddress"); - private final static QName _TTYTDD_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "TTYTDD"); - private final static QName _DateOfDeath_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "DateOfDeath"); - private final static QName _DateOfBirth_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "DateOfBirth"); - private final static QName _CompactName_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CompactName"); - private final static QName _Confession_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Confession"); - private final static QName _PersonData_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "PersonData"); - private final static QName _SubscriberNumber_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "SubscriberNumber"); - private final static QName _Nationality_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Nationality"); - private final static QName _Occupation_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Occupation"); - private final static QName _Stammzahl_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Stammzahl"); - private final static QName _Telephone_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Telephone"); - private final static QName _AbstractSimpleIdentification_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "AbstractSimpleIdentification"); - private final static QName _BankConnection_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "BankConnection"); - private final static QName _Address_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Address"); - private final static QName _Person_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Person"); - private final static QName _CompactPostalAddress_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CompactPostalAddress"); - private final static QName _PostalAddress_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "PostalAddress"); - private final static QName _Identification_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "Identification"); - private final static QName _NationalityTypeCountryNameDE_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CountryNameDE"); - private final static QName _NationalityTypeCountryNameFR_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CountryNameFR"); - private final static QName _NationalityTypeCountryNameEN_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "CountryNameEN"); - private final static QName _NationalityTypeISOCode3_QNAME = new QName("http://reference.e-government.gv.at/namespace/persondata/20020228#", "ISOCode3"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.util.xsd.persondata - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link PersonNameType } - * - */ - public PersonNameType createPersonNameType() { - return new PersonNameType(); - } - - /** - * Create an instance of {@link CompactPersonDataType } - * - */ - public CompactPersonDataType createCompactPersonDataType() { - return new CompactPersonDataType(); - } - - /** - * Create an instance of {@link IdentificationType } - * - */ - public IdentificationType createIdentificationType() { - return new IdentificationType(); - } - - /** - * Create an instance of {@link PostalAddressType } - * - */ - public PostalAddressType createPostalAddressType() { - return new PostalAddressType(); - } - - /** - * Create an instance of {@link PostalAddressType.DeliveryAddress } - * - */ - public PostalAddressType.DeliveryAddress createPostalAddressTypeDeliveryAddress() { - return new PostalAddressType.DeliveryAddress(); - } - - /** - * Create an instance of {@link BankConnectionType } - * - */ - public BankConnectionType createBankConnectionType() { - return new BankConnectionType(); - } - - /** - * Create an instance of {@link CompactPostalAddressType } - * - */ - public CompactPostalAddressType createCompactPostalAddressType() { - return new CompactPostalAddressType(); - } - - /** - * Create an instance of {@link CompactPersonNameType } - * - */ - public CompactPersonNameType createCompactPersonNameType() { - return new CompactPersonNameType(); - } - - /** - * Create an instance of {@link PersonDataType } - * - */ - public PersonDataType createPersonDataType() { - return new PersonDataType(); - } - - /** - * Create an instance of {@link TelcomNumberType } - * - */ - public TelcomNumberType createTelcomNumberType() { - return new TelcomNumberType(); - } - - /** - * Create an instance of {@link ZMRzahl } - * - */ - public ZMRzahl createZMRzahl() { - return new ZMRzahl(); - } - - /** - * Create an instance of {@link AbstractSimpleIdentificationType } - * - */ - public AbstractSimpleIdentificationType createAbstractSimpleIdentificationType() { - return new AbstractSimpleIdentificationType(); - } - - /** - * Create an instance of {@link InternetAddressType } - * - */ - public InternetAddressType createInternetAddressType() { - return new InternetAddressType(); - } - - /** - * Create an instance of {@link AbstractAddressType } - * - */ - public AbstractAddressType createAbstractAddressType() { - return new AbstractAddressType(); - } - - /** - * Create an instance of {@link Vereinsnummer } - * - */ - public Vereinsnummer createVereinsnummer() { - return new Vereinsnummer(); - } - - /** - * Create an instance of {@link TypedPostalAddressType } - * - */ - public TypedPostalAddressType createTypedPostalAddressType() { - return new TypedPostalAddressType(); - } - - /** - * Create an instance of {@link MobileTelcomNumberType } - * - */ - public MobileTelcomNumberType createMobileTelcomNumberType() { - return new MobileTelcomNumberType(); - } - - /** - * Create an instance of {@link CompactCorporateBodyType } - * - */ - public CompactCorporateBodyType createCompactCorporateBodyType() { - return new CompactCorporateBodyType(); - } - - /** - * Create an instance of {@link AbstractPersonType } - * - */ - public AbstractPersonType createAbstractPersonType() { - return new AbstractPersonType(); - } - - /** - * Create an instance of {@link AlternativeName } - * - */ - public AlternativeName createAlternativeName() { - return new AlternativeName(); - } - - /** - * Create an instance of {@link PersonNameType.FormattedName } - * - */ - public PersonNameType.FormattedName createPersonNameTypeFormattedName() { - return new PersonNameType.FormattedName(); - } - - /** - * Create an instance of {@link PersonNameType.FamilyName } - * - */ - public PersonNameType.FamilyName createPersonNameTypeFamilyName() { - return new PersonNameType.FamilyName(); - } - - /** - * Create an instance of {@link PersonNameType.Affix } - * - */ - public PersonNameType.Affix createPersonNameTypeAffix() { - return new PersonNameType.Affix(); - } - - /** - * Create an instance of {@link ERJPZahl } - * - */ - public ERJPZahl createERJPZahl() { - return new ERJPZahl(); - } - - /** - * Create an instance of {@link NationalityType } - * - */ - public NationalityType createNationalityType() { - return new NationalityType(); - } - - /** - * Create an instance of {@link Firmenbuchnummer } - * - */ - public Firmenbuchnummer createFirmenbuchnummer() { - return new Firmenbuchnummer(); - } - - /** - * Create an instance of {@link CompactPersonData } - * - */ - public CompactPersonData createCompactPersonData() { - return new CompactPersonData(); - } - - /** - * Create an instance of {@link CompactPhysicalPersonType } - * - */ - public CompactPhysicalPersonType createCompactPhysicalPersonType() { - return new CompactPhysicalPersonType(); - } - - /** - * Create an instance of {@link TelephoneAddressType } - * - */ - public TelephoneAddressType createTelephoneAddressType() { - return new TelephoneAddressType(); - } - - /** - * Create an instance of {@link PhysicalPersonType } - * - */ - public PhysicalPersonType createPhysicalPersonType() { - return new PhysicalPersonType(); - } - - /** - * Create an instance of {@link CorporateBodyType } - * - */ - public CorporateBodyType createCorporateBodyType() { - return new CorporateBodyType(); - } - - /** - * Create an instance of {@link RelatedPerson } - * - */ - public RelatedPerson createRelatedPerson() { - return new RelatedPerson(); - } - - /** - * Create an instance of {@link CompactPersonDataType.AdditionalData } - * - */ - public CompactPersonDataType.AdditionalData createCompactPersonDataTypeAdditionalData() { - return new CompactPersonDataType.AdditionalData(); - } - - /** - * Create an instance of {@link IdentificationType.Value } - * - */ - public IdentificationType.Value createIdentificationTypeValue() { - return new IdentificationType.Value(); - } - - /** - * Create an instance of {@link PostalAddressType.Recipient } - * - */ - public PostalAddressType.Recipient createPostalAddressTypeRecipient() { - return new PostalAddressType.Recipient(); - } - - /** - * Create an instance of {@link PostalAddressType.DeliveryAddress.AddressRegisterEntry } - * - */ - public PostalAddressType.DeliveryAddress.AddressRegisterEntry createPostalAddressTypeDeliveryAddressAddressRegisterEntry() { - return new PostalAddressType.DeliveryAddress.AddressRegisterEntry(); - } - - /** - * Create an instance of {@link BankConnectionType.NationalBankConnection } - * - */ - public BankConnectionType.NationalBankConnection createBankConnectionTypeNationalBankConnection() { - return new BankConnectionType.NationalBankConnection(); - } - - /** - * Create an instance of {@link BankConnectionType.InternationalBankConnection } - * - */ - public BankConnectionType.InternationalBankConnection createBankConnectionTypeInternationalBankConnection() { - return new BankConnectionType.InternationalBankConnection(); - } - - /** - * Create an instance of {@link CompactPostalAddressType.DeliveryAddress } - * - */ - public CompactPostalAddressType.DeliveryAddress createCompactPostalAddressTypeDeliveryAddress() { - return new CompactPostalAddressType.DeliveryAddress(); - } - - /** - * Create an instance of {@link CompactPersonNameType.FamilyName } - * - */ - public CompactPersonNameType.FamilyName createCompactPersonNameTypeFamilyName() { - return new CompactPersonNameType.FamilyName(); - } - - /** - * Create an instance of {@link CompactPersonNameType.Affix } - * - */ - public CompactPersonNameType.Affix createCompactPersonNameTypeAffix() { - return new CompactPersonNameType.Affix(); - } - - /** - * Create an instance of {@link PersonDataType.AdditionalData } - * - */ - public PersonDataType.AdditionalData createPersonDataTypeAdditionalData() { - return new PersonDataType.AdditionalData(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Extension") - public JAXBElement<String> createExtension(String value) { - return new JAXBElement<String>(_Extension_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Vereinsnummer }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Vereinsnummer", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<Vereinsnummer> createVereinsnummer(Vereinsnummer value) { - return new JAXBElement<Vereinsnummer>(_Vereinsnummer_QNAME, Vereinsnummer.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Matrikelnummer", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<AbstractSimpleIdentificationType> createMatrikelnummer(AbstractSimpleIdentificationType value) { - return new JAXBElement<AbstractSimpleIdentificationType>(_Matrikelnummer_QNAME, AbstractSimpleIdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link MobileTelcomNumberType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Mobile") - public JAXBElement<MobileTelcomNumberType> createMobile(MobileTelcomNumberType value) { - return new JAXBElement<MobileTelcomNumberType>(_Mobile_QNAME, MobileTelcomNumberType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SexType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Sex") - public JAXBElement<SexType> createSex(SexType value) { - return new JAXBElement<SexType>(_Sex_QNAME, SexType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "AreaCityCode") - public JAXBElement<String> createAreaCityCode(String value) { - return new JAXBElement<String>(_AreaCityCode_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ZMRzahl }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "ZMRzahl", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<ZMRzahl> createZMRzahl(ZMRzahl value) { - return new JAXBElement<ZMRzahl>(_ZMRzahl_QNAME, ZMRzahl.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link InternetAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "InternetAddress", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Address") - public JAXBElement<InternetAddressType> createInternetAddress(InternetAddressType value) { - return new JAXBElement<InternetAddressType>(_InternetAddress_QNAME, InternetAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Firmenbuchnummer }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Firmenbuchnummer", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<Firmenbuchnummer> createFirmenbuchnummer(Firmenbuchnummer value) { - return new JAXBElement<Firmenbuchnummer>(_Firmenbuchnummer_QNAME, Firmenbuchnummer.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "InternationalCountryCode") - public JAXBElement<String> createInternationalCountryCode(String value) { - return new JAXBElement<String>(_InternationalCountryCode_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "AbstractPersonData") - public JAXBElement<AbstractPersonType> createAbstractPersonData(AbstractPersonType value) { - return new JAXBElement<AbstractPersonType>(_AbstractPersonData_QNAME, AbstractPersonType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TelcomNumberType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Pager") - public JAXBElement<TelcomNumberType> createPager(TelcomNumberType value) { - return new JAXBElement<TelcomNumberType>(_Pager_QNAME, TelcomNumberType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CompactCorporateBody", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Person") - public JAXBElement<CompactCorporateBodyType> createCompactCorporateBody(CompactCorporateBodyType value) { - return new JAXBElement<CompactCorporateBodyType>(_CompactCorporateBody_QNAME, CompactCorporateBodyType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ERJPZahl }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "ERJPZahl", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<ERJPZahl> createERJPZahl(ERJPZahl value) { - return new JAXBElement<ERJPZahl>(_ERJPZahl_QNAME, ERJPZahl.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "NationalNumber") - public JAXBElement<String> createNationalNumber(String value) { - return new JAXBElement<String>(_NationalNumber_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CompactPhysicalPerson", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Person") - public JAXBElement<CompactPhysicalPersonType> createCompactPhysicalPerson(CompactPhysicalPersonType value) { - return new JAXBElement<CompactPhysicalPersonType>(_CompactPhysicalPerson_QNAME, CompactPhysicalPersonType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "PhysicalPerson", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Person") - public JAXBElement<PhysicalPersonType> createPhysicalPerson(PhysicalPersonType value) { - return new JAXBElement<PhysicalPersonType>(_PhysicalPerson_QNAME, PhysicalPersonType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link MaritalStatusType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "MaritalStatus") - public JAXBElement<MaritalStatusType> createMaritalStatus(MaritalStatusType value) { - return new JAXBElement<MaritalStatusType>(_MaritalStatus_QNAME, MaritalStatusType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CorporateBody", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Person") - public JAXBElement<CorporateBodyType> createCorporateBody(CorporateBodyType value) { - return new JAXBElement<CorporateBodyType>(_CorporateBody_QNAME, CorporateBodyType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CountryOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - public JAXBElement<String> createCountryOfBirth(String value) { - return new JAXBElement<String>(_CountryOfBirth_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Sozialversicherungsnummer", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<AbstractSimpleIdentificationType> createSozialversicherungsnummer(AbstractSimpleIdentificationType value) { - return new JAXBElement<AbstractSimpleIdentificationType>(_Sozialversicherungsnummer_QNAME, AbstractSimpleIdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Steuernummer", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<AbstractSimpleIdentificationType> createSteuernummer(AbstractSimpleIdentificationType value) { - return new JAXBElement<AbstractSimpleIdentificationType>(_Steuernummer_QNAME, AbstractSimpleIdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link PersonNameType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Name") - public JAXBElement<PersonNameType> createName(PersonNameType value) { - return new JAXBElement<PersonNameType>(_Name_QNAME, PersonNameType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "StateOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - public JAXBElement<String> createStateOfBirth(String value) { - return new JAXBElement<String>(_StateOfBirth_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TelcomNumberType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Fax") - public JAXBElement<TelcomNumberType> createFax(TelcomNumberType value) { - return new JAXBElement<TelcomNumberType>(_Fax_QNAME, TelcomNumberType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "TelephoneAddress", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Address") - public JAXBElement<TelephoneAddressType> createTelephoneAddress(TelephoneAddressType value) { - return new JAXBElement<TelephoneAddressType>(_TelephoneAddress_QNAME, TelephoneAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "PlaceOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - public JAXBElement<String> createPlaceOfBirth(String value) { - return new JAXBElement<String>(_PlaceOfBirth_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "FormattedNumber") - public JAXBElement<String> createFormattedNumber(String value) { - return new JAXBElement<String>(_FormattedNumber_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "TypedPostalAddress", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Address") - public JAXBElement<TypedPostalAddressType> createTypedPostalAddress(TypedPostalAddressType value) { - return new JAXBElement<TypedPostalAddressType>(_TypedPostalAddress_QNAME, TypedPostalAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TelcomNumberType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "TTYTDD") - public JAXBElement<TelcomNumberType> createTTYTDD(TelcomNumberType value) { - return new JAXBElement<TelcomNumberType>(_TTYTDD_QNAME, TelcomNumberType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "DateOfDeath") - public JAXBElement<String> createDateOfDeath(String value) { - return new JAXBElement<String>(_DateOfDeath_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "DateOfBirth") - public JAXBElement<String> createDateOfBirth(String value) { - return new JAXBElement<String>(_DateOfBirth_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CompactPersonNameType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CompactName") - public JAXBElement<CompactPersonNameType> createCompactName(CompactPersonNameType value) { - return new JAXBElement<CompactPersonNameType>(_CompactName_QNAME, CompactPersonNameType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Confession") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - public JAXBElement<String> createConfession(String value) { - return new JAXBElement<String>(_Confession_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link PersonDataType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "PersonData", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractPersonData") - public JAXBElement<PersonDataType> createPersonData(PersonDataType value) { - return new JAXBElement<PersonDataType>(_PersonData_QNAME, PersonDataType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "SubscriberNumber") - public JAXBElement<String> createSubscriberNumber(String value) { - return new JAXBElement<String>(_SubscriberNumber_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link NationalityType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Nationality") - public JAXBElement<NationalityType> createNationality(NationalityType value) { - return new JAXBElement<NationalityType>(_Nationality_QNAME, NationalityType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Occupation") - public JAXBElement<String> createOccupation(String value) { - return new JAXBElement<String>(_Occupation_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Stammzahl", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "AbstractSimpleIdentification") - public JAXBElement<AbstractSimpleIdentificationType> createStammzahl(AbstractSimpleIdentificationType value) { - return new JAXBElement<AbstractSimpleIdentificationType>(_Stammzahl_QNAME, AbstractSimpleIdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TelcomNumberType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Telephone") - public JAXBElement<TelcomNumberType> createTelephone(TelcomNumberType value) { - return new JAXBElement<TelcomNumberType>(_Telephone_QNAME, TelcomNumberType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractSimpleIdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "AbstractSimpleIdentification") - public JAXBElement<AbstractSimpleIdentificationType> createAbstractSimpleIdentification(AbstractSimpleIdentificationType value) { - return new JAXBElement<AbstractSimpleIdentificationType>(_AbstractSimpleIdentification_QNAME, AbstractSimpleIdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BankConnectionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "BankConnection") - public JAXBElement<BankConnectionType> createBankConnection(BankConnectionType value) { - return new JAXBElement<BankConnectionType>(_BankConnection_QNAME, BankConnectionType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Address") - public JAXBElement<AbstractAddressType> createAddress(AbstractAddressType value) { - return new JAXBElement<AbstractAddressType>(_Address_QNAME, AbstractAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Person") - public JAXBElement<AbstractPersonType> createPerson(AbstractPersonType value) { - return new JAXBElement<AbstractPersonType>(_Person_QNAME, AbstractPersonType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CompactPostalAddress", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Address") - public JAXBElement<CompactPostalAddressType> createCompactPostalAddress(CompactPostalAddressType value) { - return new JAXBElement<CompactPostalAddressType>(_CompactPostalAddress_QNAME, CompactPostalAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "PostalAddress", substitutionHeadNamespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", substitutionHeadName = "Address") - public JAXBElement<PostalAddressType> createPostalAddress(PostalAddressType value) { - return new JAXBElement<PostalAddressType>(_PostalAddress_QNAME, PostalAddressType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link IdentificationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "Identification") - public JAXBElement<IdentificationType> createIdentification(IdentificationType value) { - return new JAXBElement<IdentificationType>(_Identification_QNAME, IdentificationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CountryNameDE", scope = NationalityType.class) - public JAXBElement<String> createNationalityTypeCountryNameDE(String value) { - return new JAXBElement<String>(_NationalityTypeCountryNameDE_QNAME, String.class, NationalityType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CountryNameFR", scope = NationalityType.class) - public JAXBElement<String> createNationalityTypeCountryNameFR(String value) { - return new JAXBElement<String>(_NationalityTypeCountryNameFR_QNAME, String.class, NationalityType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "CountryNameEN", scope = NationalityType.class) - public JAXBElement<String> createNationalityTypeCountryNameEN(String value) { - return new JAXBElement<String>(_NationalityTypeCountryNameEN_QNAME, String.class, NationalityType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", name = "ISOCode3", scope = NationalityType.class) - public JAXBElement<String> createNationalityTypeISOCode3(String value) { - return new JAXBElement<String>(_NationalityTypeISOCode3_QNAME, String.class, NationalityType.class, value); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonDataType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonDataType.java deleted file mode 100644 index 699519798..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonDataType.java +++ /dev/null @@ -1,255 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.xmldsig.SignatureType; -import org.w3c.dom.Element; - - -/** - * signed person datastructure. The first Identification elements (from the base type) denote the record as such (e.g. database key for this record) - not to be mistaken for identifiers of the person or of an address (they have their own Identification elements). - * - * <p>Java class for PersonDataType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="PersonDataType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Person"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Address" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" maxOccurs="unbounded" minOccurs="0"/> - * <element name="AdditionalData" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax'/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "PersonDataType", propOrder = { - "person", - "address", - "signature", - "additionalData" -}) -public class PersonDataType - extends AbstractPersonType -{ - - @XmlElementRef(name = "Person", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - protected JAXBElement<? extends AbstractPersonType> person; - @XmlElementRef(name = "Address", namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", type = JAXBElement.class) - protected List<JAXBElement<? extends AbstractAddressType>> address; - @XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#") - protected List<SignatureType> signature; - @XmlElement(name = "AdditionalData") - protected PersonDataType.AdditionalData additionalData; - - /** - * Gets the value of the person property. - * - * @return - * possible object is - * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} - * - */ - public JAXBElement<? extends AbstractPersonType> getPerson() { - return person; - } - - /** - * Sets the value of the person property. - * - * @param value - * allowed object is - * {@link JAXBElement }{@code <}{@link CorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link PhysicalPersonType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactCorporateBodyType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractPersonType }{@code >} - * - */ - public void setPerson(JAXBElement<? extends AbstractPersonType> value) { - this.person = value; - } - - /** - * Gets the value of the address property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the address property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAddress().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link PostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link CompactPostalAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link InternetAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TelephoneAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link AbstractAddressType }{@code >} - * {@link JAXBElement }{@code <}{@link TypedPostalAddressType }{@code >} - * - * - */ - public List<JAXBElement<? extends AbstractAddressType>> getAddress() { - if (address == null) { - address = new ArrayList<JAXBElement<? extends AbstractAddressType>>(); - } - return this.address; - } - - /** - * one or more electronic signatures applied on fields above Gets the value of the signature property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the signature property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getSignature().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link SignatureType } - * - * - */ - public List<SignatureType> getSignature() { - if (signature == null) { - signature = new ArrayList<SignatureType>(); - } - return this.signature; - } - - /** - * Gets the value of the additionalData property. - * - * @return - * possible object is - * {@link PersonDataType.AdditionalData } - * - */ - public PersonDataType.AdditionalData getAdditionalData() { - return additionalData; - } - - /** - * Sets the value of the additionalData property. - * - * @param value - * allowed object is - * {@link PersonDataType.AdditionalData } - * - */ - public void setAdditionalData(PersonDataType.AdditionalData value) { - this.additionalData = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax'/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "content" - }) - public static class AdditionalData { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonNameType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonNameType.java deleted file mode 100644 index 3b148fc3f..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PersonNameType.java +++ /dev/null @@ -1,657 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * container for parts of a name, comapre PersonenNameTyp - * - * <p>Java class for PersonNameType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="PersonNameType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="FormattedName" maxOccurs="unbounded" minOccurs="0"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type" default="presentation"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="presentation"/> - * <enumeration value="legal"/> - * <enumeration value="sortOrder"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * <element name="LegalName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="GivenName" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="PreferredGivenName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="MiddleName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="FamilyName" maxOccurs="unbounded" minOccurs="0"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="primary" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="true"/> - * <enumeration value="false"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * <element name="Affix" maxOccurs="unbounded" minOccurs="0"> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="academicGrade"/> - * <enumeration value="aristocraticPrefix"/> - * <enumeration value="aristocraticTitle"/> - * <enumeration value="familyNamePrefix"/> - * <enumeration value="familyNameSuffix"/> - * <enumeration value="formOfAddress"/> - * <enumeration value="generation"/> - * <enumeration value="qualification"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="position"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="prefix"/> - * <enumeration value="suffix"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "PersonNameType", propOrder = { - "formattedName", - "legalName", - "givenName", - "preferredGivenName", - "middleName", - "familyName", - "affix" -}) -@XmlSeeAlso({ - AlternativeName.class -}) -public class PersonNameType { - - @XmlElement(name = "FormattedName") - protected List<PersonNameType.FormattedName> formattedName; - @XmlElement(name = "LegalName") - protected String legalName; - @XmlElement(name = "GivenName") - protected List<String> givenName; - @XmlElement(name = "PreferredGivenName") - protected String preferredGivenName; - @XmlElement(name = "MiddleName") - protected String middleName; - @XmlElement(name = "FamilyName") - protected List<PersonNameType.FamilyName> familyName; - @XmlElement(name = "Affix") - protected List<PersonNameType.Affix> affix; - - /** - * Gets the value of the formattedName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the formattedName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getFormattedName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link PersonNameType.FormattedName } - * - * - */ - public List<PersonNameType.FormattedName> getFormattedName() { - if (formattedName == null) { - formattedName = new ArrayList<PersonNameType.FormattedName>(); - } - return this.formattedName; - } - - /** - * Gets the value of the legalName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLegalName() { - return legalName; - } - - /** - * Sets the value of the legalName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLegalName(String value) { - this.legalName = value; - } - - /** - * Gets the value of the givenName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the givenName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getGivenName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getGivenName() { - if (givenName == null) { - givenName = new ArrayList<String>(); - } - return this.givenName; - } - - /** - * Gets the value of the preferredGivenName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPreferredGivenName() { - return preferredGivenName; - } - - /** - * Sets the value of the preferredGivenName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPreferredGivenName(String value) { - this.preferredGivenName = value; - } - - /** - * Gets the value of the middleName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMiddleName() { - return middleName; - } - - /** - * Sets the value of the middleName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMiddleName(String value) { - this.middleName = value; - } - - /** - * Gets the value of the familyName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the familyName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getFamilyName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link PersonNameType.FamilyName } - * - * - */ - public List<PersonNameType.FamilyName> getFamilyName() { - if (familyName == null) { - familyName = new ArrayList<PersonNameType.FamilyName>(); - } - return this.familyName; - } - - /** - * Gets the value of the affix property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the affix property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAffix().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link PersonNameType.Affix } - * - * - */ - public List<PersonNameType.Affix> getAffix() { - if (affix == null) { - affix = new ArrayList<PersonNameType.Affix>(); - } - return this.affix; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="academicGrade"/> - * <enumeration value="aristocraticPrefix"/> - * <enumeration value="aristocraticTitle"/> - * <enumeration value="familyNamePrefix"/> - * <enumeration value="familyNameSuffix"/> - * <enumeration value="formOfAddress"/> - * <enumeration value="generation"/> - * <enumeration value="qualification"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="position"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="prefix"/> - * <enumeration value="suffix"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class Affix { - - @XmlValue - protected String value; - @XmlAttribute(name = "type") - protected String type; - @XmlAttribute(name = "position") - protected String position; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the position property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPosition() { - return position; - } - - /** - * Sets the value of the position property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPosition(String value) { - this.position = value; - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="primary" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="true"/> - * <enumeration value="false"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <attribute name="prefix" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class FamilyName { - - @XmlValue - protected String value; - @XmlAttribute(name = "primary") - protected String primary; - @XmlAttribute(name = "prefix") - protected String prefix; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the primary property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrimary() { - if (primary == null) { - return "undefined"; - } else { - return primary; - } - } - - /** - * Sets the value of the primary property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrimary(String value) { - this.primary = value; - } - - /** - * Gets the value of the prefix property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPrefix() { - return prefix; - } - - /** - * Sets the value of the prefix property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPrefix(String value) { - this.prefix = value; - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="type" default="presentation"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="presentation"/> - * <enumeration value="legal"/> - * <enumeration value="sortOrder"/> - * </restriction> - * </simpleType> - * </attribute> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "value" - }) - public static class FormattedName { - - @XmlValue - protected String value; - @XmlAttribute(name = "type") - protected String type; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - if (type == null) { - return "presentation"; - } else { - return type; - } - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PhysicalPersonType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PhysicalPersonType.java deleted file mode 100644 index 4c5a5e34f..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PhysicalPersonType.java +++ /dev/null @@ -1,499 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * physical person, compare NatuerlichePersonTyp - * - * <p>Java class for PhysicalPersonType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="PhysicalPersonType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractPersonType"> - * <sequence minOccurs="0"> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Name" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AlternativeName" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}MaritalStatus" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Sex" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}DateOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PlaceOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}StateOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}CountryOfBirth" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}DateOfDeath" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Nationality" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Confession" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}Occupation" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}relatedPerson" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}BankConnection" maxOccurs="unbounded" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "PhysicalPersonType", propOrder = { - "name", - "alternativeName", - "maritalStatus", - "sex", - "dateOfBirth", - "placeOfBirth", - "stateOfBirth", - "countryOfBirth", - "dateOfDeath", - "nationality", - "confession", - "occupation", - "relatedPerson", - "bankConnection", - "any" -}) -public class PhysicalPersonType - extends AbstractPersonType -{ - - @XmlElement(name = "Name") - protected PersonNameType name; - @XmlElement(name = "AlternativeName") - protected List<AlternativeName> alternativeName; - @XmlElement(name = "MaritalStatus") - protected MaritalStatusType maritalStatus; - @XmlElement(name = "Sex") - protected SexType sex; - @XmlElement(name = "DateOfBirth") - protected String dateOfBirth; - @XmlElement(name = "PlaceOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String placeOfBirth; - @XmlElement(name = "StateOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String stateOfBirth; - @XmlElement(name = "CountryOfBirth") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String countryOfBirth; - @XmlElement(name = "DateOfDeath") - protected String dateOfDeath; - @XmlElement(name = "Nationality") - protected List<NationalityType> nationality; - @XmlElement(name = "Confession") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlSchemaType(name = "token") - protected String confession; - @XmlElement(name = "Occupation") - protected String occupation; - protected List<RelatedPerson> relatedPerson; - @XmlElement(name = "BankConnection") - protected List<BankConnectionType> bankConnection; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the name property. - * - * @return - * possible object is - * {@link PersonNameType } - * - */ - public PersonNameType getName() { - return name; - } - - /** - * Sets the value of the name property. - * - * @param value - * allowed object is - * {@link PersonNameType } - * - */ - public void setName(PersonNameType value) { - this.name = value; - } - - /** - * Gets the value of the alternativeName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the alternativeName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAlternativeName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link AlternativeName } - * - * - */ - public List<AlternativeName> getAlternativeName() { - if (alternativeName == null) { - alternativeName = new ArrayList<AlternativeName>(); - } - return this.alternativeName; - } - - /** - * Gets the value of the maritalStatus property. - * - * @return - * possible object is - * {@link MaritalStatusType } - * - */ - public MaritalStatusType getMaritalStatus() { - return maritalStatus; - } - - /** - * Sets the value of the maritalStatus property. - * - * @param value - * allowed object is - * {@link MaritalStatusType } - * - */ - public void setMaritalStatus(MaritalStatusType value) { - this.maritalStatus = value; - } - - /** - * Gets the value of the sex property. - * - * @return - * possible object is - * {@link SexType } - * - */ - public SexType getSex() { - return sex; - } - - /** - * Sets the value of the sex property. - * - * @param value - * allowed object is - * {@link SexType } - * - */ - public void setSex(SexType value) { - this.sex = value; - } - - /** - * Gets the value of the dateOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDateOfBirth() { - return dateOfBirth; - } - - /** - * Sets the value of the dateOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDateOfBirth(String value) { - this.dateOfBirth = value; - } - - /** - * Gets the value of the placeOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPlaceOfBirth() { - return placeOfBirth; - } - - /** - * Sets the value of the placeOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPlaceOfBirth(String value) { - this.placeOfBirth = value; - } - - /** - * Gets the value of the stateOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStateOfBirth() { - return stateOfBirth; - } - - /** - * Sets the value of the stateOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStateOfBirth(String value) { - this.stateOfBirth = value; - } - - /** - * Gets the value of the countryOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCountryOfBirth() { - return countryOfBirth; - } - - /** - * Sets the value of the countryOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCountryOfBirth(String value) { - this.countryOfBirth = value; - } - - /** - * Gets the value of the dateOfDeath property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDateOfDeath() { - return dateOfDeath; - } - - /** - * Sets the value of the dateOfDeath property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDateOfDeath(String value) { - this.dateOfDeath = value; - } - - /** - * Gets the value of the nationality property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the nationality property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getNationality().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link NationalityType } - * - * - */ - public List<NationalityType> getNationality() { - if (nationality == null) { - nationality = new ArrayList<NationalityType>(); - } - return this.nationality; - } - - /** - * Gets the value of the confession property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getConfession() { - return confession; - } - - /** - * Sets the value of the confession property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setConfession(String value) { - this.confession = value; - } - - /** - * Gets the value of the occupation property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOccupation() { - return occupation; - } - - /** - * Sets the value of the occupation property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOccupation(String value) { - this.occupation = value; - } - - /** - * Gets the value of the relatedPerson property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the relatedPerson property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getRelatedPerson().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link RelatedPerson } - * - * - */ - public List<RelatedPerson> getRelatedPerson() { - if (relatedPerson == null) { - relatedPerson = new ArrayList<RelatedPerson>(); - } - return this.relatedPerson; - } - - /** - * Gets the value of the bankConnection property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the bankConnection property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getBankConnection().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link BankConnectionType } - * - * - */ - public List<BankConnectionType> getBankConnection() { - if (bankConnection == null) { - bankConnection = new ArrayList<BankConnectionType>(); - } - return this.bankConnection; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PostalAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PostalAddressType.java deleted file mode 100644 index d5ba41343..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/PostalAddressType.java +++ /dev/null @@ -1,1029 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * compare PostAdresseTyp - * - * <p>Java class for PostalAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="PostalAddressType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractAddressType"> - * <sequence> - * <element name="CountryCode" minOccurs="0"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <pattern value="[A-Z]{2}"/> - * </restriction> - * </simpleType> - * </element> - * <element name="CountryName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="PostalCode" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Region" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="State" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Municipality" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="MunicipalityNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Hamlet" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="HamletBilingual" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DeliveryAddress" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AddressLine" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="StreetName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="BuildingNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Unit" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DoorNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="PostOfficeBox" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LivingQuality" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DropOffPoint" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/> - * <element name="AreaNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="AddressRegisterEntry" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AddressCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7"/> - * <element name="SubCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string3" minOccurs="0"/> - * <element name="ObjectNumber" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element name="Recipient" maxOccurs="unbounded" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="PersonName" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PersonNameType" minOccurs="0"/> - * <element name="AdditionalText" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="Organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="OrganizationName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * <attribute name="type" default="undefined"> - * <simpleType> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="postOfficeBoxAddress"/> - * <enumeration value="streetAddress"/> - * <enumeration value="militaryAddress"/> - * <enumeration value="undefined"/> - * </restriction> - * </simpleType> - * </attribute> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "PostalAddressType", propOrder = { - "countryCode", - "countryName", - "postalCode", - "region", - "state", - "municipality", - "municipalityNumber", - "hamlet", - "hamletBilingual", - "deliveryAddress", - "recipient" -}) -public class PostalAddressType - extends AbstractAddressType -{ - - @XmlElement(name = "CountryCode") - protected String countryCode; - @XmlElement(name = "CountryName") - protected String countryName; - @XmlElement(name = "PostalCode") - protected String postalCode; - @XmlElement(name = "Region") - protected List<String> region; - @XmlElement(name = "State") - protected String state; - @XmlElement(name = "Municipality") - protected String municipality; - @XmlElement(name = "MunicipalityNumber") - protected String municipalityNumber; - @XmlElement(name = "Hamlet") - protected String hamlet; - @XmlElement(name = "HamletBilingual") - protected String hamletBilingual; - @XmlElement(name = "DeliveryAddress") - protected PostalAddressType.DeliveryAddress deliveryAddress; - @XmlElement(name = "Recipient") - protected List<PostalAddressType.Recipient> recipient; - @XmlAttribute(name = "type") - protected String type; - - /** - * Gets the value of the countryCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCountryCode() { - return countryCode; - } - - /** - * Sets the value of the countryCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCountryCode(String value) { - this.countryCode = value; - } - - /** - * Gets the value of the countryName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getCountryName() { - return countryName; - } - - /** - * Sets the value of the countryName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setCountryName(String value) { - this.countryName = value; - } - - /** - * Gets the value of the postalCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPostalCode() { - return postalCode; - } - - /** - * Sets the value of the postalCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPostalCode(String value) { - this.postalCode = value; - } - - /** - * Gets the value of the region property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the region property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getRegion().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getRegion() { - if (region == null) { - region = new ArrayList<String>(); - } - return this.region; - } - - /** - * Gets the value of the state property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getState() { - return state; - } - - /** - * Sets the value of the state property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setState(String value) { - this.state = value; - } - - /** - * Gets the value of the municipality property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMunicipality() { - return municipality; - } - - /** - * Sets the value of the municipality property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMunicipality(String value) { - this.municipality = value; - } - - /** - * Gets the value of the municipalityNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMunicipalityNumber() { - return municipalityNumber; - } - - /** - * Sets the value of the municipalityNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMunicipalityNumber(String value) { - this.municipalityNumber = value; - } - - /** - * Gets the value of the hamlet property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getHamlet() { - return hamlet; - } - - /** - * Sets the value of the hamlet property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setHamlet(String value) { - this.hamlet = value; - } - - /** - * Gets the value of the hamletBilingual property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getHamletBilingual() { - return hamletBilingual; - } - - /** - * Sets the value of the hamletBilingual property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setHamletBilingual(String value) { - this.hamletBilingual = value; - } - - /** - * Gets the value of the deliveryAddress property. - * - * @return - * possible object is - * {@link PostalAddressType.DeliveryAddress } - * - */ - public PostalAddressType.DeliveryAddress getDeliveryAddress() { - return deliveryAddress; - } - - /** - * Sets the value of the deliveryAddress property. - * - * @param value - * allowed object is - * {@link PostalAddressType.DeliveryAddress } - * - */ - public void setDeliveryAddress(PostalAddressType.DeliveryAddress value) { - this.deliveryAddress = value; - } - - /** - * Gets the value of the recipient property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the recipient property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getRecipient().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link PostalAddressType.Recipient } - * - * - */ - public List<PostalAddressType.Recipient> getRecipient() { - if (recipient == null) { - recipient = new ArrayList<PostalAddressType.Recipient>(); - } - return this.recipient; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - if (type == null) { - return "undefined"; - } else { - return type; - } - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AddressLine" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="StreetName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="BuildingNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Unit" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DoorNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="PostOfficeBox" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LivingQuality" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DropOffPoint" type="{http://www.w3.org/2001/XMLSchema}boolean" minOccurs="0"/> - * <element name="AreaNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="AddressRegisterEntry" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AddressCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7"/> - * <element name="SubCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string3" minOccurs="0"/> - * <element name="ObjectNumber" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "addressLine", - "streetName", - "buildingNumber", - "unit", - "doorNumber", - "postOfficeBox", - "livingQuality", - "dropOffPoint", - "areaNumber", - "addressRegisterEntry" - }) - public static class DeliveryAddress { - - @XmlElement(name = "AddressLine") - protected List<String> addressLine; - @XmlElement(name = "StreetName") - protected String streetName; - @XmlElement(name = "BuildingNumber") - protected String buildingNumber; - @XmlElement(name = "Unit") - protected String unit; - @XmlElement(name = "DoorNumber") - protected String doorNumber; - @XmlElement(name = "PostOfficeBox") - protected String postOfficeBox; - @XmlElement(name = "LivingQuality") - protected String livingQuality; - @XmlElement(name = "DropOffPoint") - protected Boolean dropOffPoint; - @XmlElement(name = "AreaNumber") - protected String areaNumber; - @XmlElement(name = "AddressRegisterEntry") - protected PostalAddressType.DeliveryAddress.AddressRegisterEntry addressRegisterEntry; - - /** - * Gets the value of the addressLine property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the addressLine property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAddressLine().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getAddressLine() { - if (addressLine == null) { - addressLine = new ArrayList<String>(); - } - return this.addressLine; - } - - /** - * Gets the value of the streetName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getStreetName() { - return streetName; - } - - /** - * Sets the value of the streetName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setStreetName(String value) { - this.streetName = value; - } - - /** - * Gets the value of the buildingNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBuildingNumber() { - return buildingNumber; - } - - /** - * Sets the value of the buildingNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBuildingNumber(String value) { - this.buildingNumber = value; - } - - /** - * Gets the value of the unit property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getUnit() { - return unit; - } - - /** - * Sets the value of the unit property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setUnit(String value) { - this.unit = value; - } - - /** - * Gets the value of the doorNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDoorNumber() { - return doorNumber; - } - - /** - * Sets the value of the doorNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDoorNumber(String value) { - this.doorNumber = value; - } - - /** - * Gets the value of the postOfficeBox property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPostOfficeBox() { - return postOfficeBox; - } - - /** - * Sets the value of the postOfficeBox property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPostOfficeBox(String value) { - this.postOfficeBox = value; - } - - /** - * Gets the value of the livingQuality property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLivingQuality() { - return livingQuality; - } - - /** - * Sets the value of the livingQuality property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLivingQuality(String value) { - this.livingQuality = value; - } - - /** - * Gets the value of the dropOffPoint property. - * - * @return - * possible object is - * {@link Boolean } - * - */ - public Boolean isDropOffPoint() { - return dropOffPoint; - } - - /** - * Sets the value of the dropOffPoint property. - * - * @param value - * allowed object is - * {@link Boolean } - * - */ - public void setDropOffPoint(Boolean value) { - this.dropOffPoint = value; - } - - /** - * Gets the value of the areaNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAreaNumber() { - return areaNumber; - } - - /** - * Sets the value of the areaNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAreaNumber(String value) { - this.areaNumber = value; - } - - /** - * Gets the value of the addressRegisterEntry property. - * - * @return - * possible object is - * {@link PostalAddressType.DeliveryAddress.AddressRegisterEntry } - * - */ - public PostalAddressType.DeliveryAddress.AddressRegisterEntry getAddressRegisterEntry() { - return addressRegisterEntry; - } - - /** - * Sets the value of the addressRegisterEntry property. - * - * @param value - * allowed object is - * {@link PostalAddressType.DeliveryAddress.AddressRegisterEntry } - * - */ - public void setAddressRegisterEntry(PostalAddressType.DeliveryAddress.AddressRegisterEntry value) { - this.addressRegisterEntry = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="AddressCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7"/> - * <element name="SubCode" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string3" minOccurs="0"/> - * <element name="ObjectNumber" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}string7" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "addressCode", - "subCode", - "objectNumber" - }) - public static class AddressRegisterEntry { - - @XmlElement(name = "AddressCode", required = true) - protected String addressCode; - @XmlElement(name = "SubCode") - protected String subCode; - @XmlElement(name = "ObjectNumber") - protected String objectNumber; - - /** - * Gets the value of the addressCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAddressCode() { - return addressCode; - } - - /** - * Sets the value of the addressCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAddressCode(String value) { - this.addressCode = value; - } - - /** - * Gets the value of the subCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSubCode() { - return subCode; - } - - /** - * Sets the value of the subCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSubCode(String value) { - this.subCode = value; - } - - /** - * Gets the value of the objectNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getObjectNumber() { - return objectNumber; - } - - /** - * Sets the value of the objectNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setObjectNumber(String value) { - this.objectNumber = value; - } - - } - - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="PersonName" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PersonNameType" minOccurs="0"/> - * <element name="AdditionalText" type="{http://www.w3.org/2001/XMLSchema}string" maxOccurs="unbounded" minOccurs="0"/> - * <element name="Organization" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="OrganizationName" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "personName", - "additionalText", - "organization", - "organizationName" - }) - public static class Recipient { - - @XmlElement(name = "PersonName") - protected PersonNameType personName; - @XmlElement(name = "AdditionalText") - protected List<String> additionalText; - @XmlElement(name = "Organization") - protected String organization; - @XmlElement(name = "OrganizationName") - protected String organizationName; - - /** - * Gets the value of the personName property. - * - * @return - * possible object is - * {@link PersonNameType } - * - */ - public PersonNameType getPersonName() { - return personName; - } - - /** - * Sets the value of the personName property. - * - * @param value - * allowed object is - * {@link PersonNameType } - * - */ - public void setPersonName(PersonNameType value) { - this.personName = value; - } - - /** - * Gets the value of the additionalText property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the additionalText property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAdditionalText().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getAdditionalText() { - if (additionalText == null) { - additionalText = new ArrayList<String>(); - } - return this.additionalText; - } - - /** - * Gets the value of the organization property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOrganization() { - return organization; - } - - /** - * Sets the value of the organization property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOrganization(String value) { - this.organization = value; - } - - /** - * Gets the value of the organizationName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOrganizationName() { - return organizationName; - } - - /** - * Sets the value of the organizationName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOrganizationName(String value) { - this.organizationName = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/RelatedPerson.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/RelatedPerson.java deleted file mode 100644 index 8a20960f9..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/RelatedPerson.java +++ /dev/null @@ -1,99 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="TypeOfRelation" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}RelationType" maxOccurs="unbounded" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PhysicalPerson"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "typeOfRelation", - "physicalPerson" -}) -@XmlRootElement(name = "relatedPerson") -public class RelatedPerson { - - @XmlElement(name = "TypeOfRelation") - protected List<String> typeOfRelation; - @XmlElement(name = "PhysicalPerson", required = true) - protected PhysicalPersonType physicalPerson; - - /** - * Gets the value of the typeOfRelation property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the typeOfRelation property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getTypeOfRelation().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getTypeOfRelation() { - if (typeOfRelation == null) { - typeOfRelation = new ArrayList<String>(); - } - return this.typeOfRelation; - } - - /** - * Gets the value of the physicalPerson property. - * - * @return - * possible object is - * {@link PhysicalPersonType } - * - */ - public PhysicalPersonType getPhysicalPerson() { - return physicalPerson; - } - - /** - * Sets the value of the physicalPerson property. - * - * @param value - * allowed object is - * {@link PhysicalPersonType } - * - */ - public void setPhysicalPerson(PhysicalPersonType value) { - this.physicalPerson = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/SexType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/SexType.java deleted file mode 100644 index eacf4a13e..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/SexType.java +++ /dev/null @@ -1,54 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for SexType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="SexType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}token"> - * <enumeration value="male"/> - * <enumeration value="female"/> - * <enumeration value="unknown"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "SexType") -@XmlEnum -public enum SexType { - - @XmlEnumValue("male") - MALE("male"), - @XmlEnumValue("female") - FEMALE("female"), - @XmlEnumValue("unknown") - UNKNOWN("unknown"); - private final String value; - - SexType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static SexType fromValue(String v) { - for (SexType c: SexType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelcomNumberType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelcomNumberType.java deleted file mode 100644 index 76664aca3..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelcomNumberType.java +++ /dev/null @@ -1,204 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; - - -/** - * formated number or set of telephone number parts - * - * <p>Java class for TelcomNumberType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="TelcomNumberType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}FormattedNumber"/> - * <group ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}TelcomNumberGroup"/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "TelcomNumberType", propOrder = { - "formattedNumber", - "internationalCountryCode", - "nationalNumber", - "areaCityCode", - "subscriberNumber", - "extension" -}) -@XmlSeeAlso({ - MobileTelcomNumberType.class -}) -public class TelcomNumberType { - - @XmlElement(name = "FormattedNumber") - protected String formattedNumber; - @XmlElement(name = "InternationalCountryCode") - protected String internationalCountryCode; - @XmlElement(name = "NationalNumber") - protected String nationalNumber; - @XmlElement(name = "AreaCityCode") - protected String areaCityCode; - @XmlElement(name = "SubscriberNumber") - protected String subscriberNumber; - @XmlElement(name = "Extension") - protected String extension; - - /** - * Gets the value of the formattedNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFormattedNumber() { - return formattedNumber; - } - - /** - * Sets the value of the formattedNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFormattedNumber(String value) { - this.formattedNumber = value; - } - - /** - * Gets the value of the internationalCountryCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getInternationalCountryCode() { - return internationalCountryCode; - } - - /** - * Sets the value of the internationalCountryCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setInternationalCountryCode(String value) { - this.internationalCountryCode = value; - } - - /** - * Gets the value of the nationalNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getNationalNumber() { - return nationalNumber; - } - - /** - * Sets the value of the nationalNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setNationalNumber(String value) { - this.nationalNumber = value; - } - - /** - * Gets the value of the areaCityCode property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAreaCityCode() { - return areaCityCode; - } - - /** - * Sets the value of the areaCityCode property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAreaCityCode(String value) { - this.areaCityCode = value; - } - - /** - * Gets the value of the subscriberNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSubscriberNumber() { - return subscriberNumber; - } - - /** - * Sets the value of the subscriberNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSubscriberNumber(String value) { - this.subscriberNumber = value; - } - - /** - * Gets the value of the extension property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getExtension() { - return extension; - } - - /** - * Sets the value of the extension property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setExtension(String value) { - this.extension = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelephoneAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelephoneAddressType.java deleted file mode 100644 index 2e8e7e6e3..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TelephoneAddressType.java +++ /dev/null @@ -1,140 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * phone numbers, conmpare TelephoneAdresseTyp - * - * <p>Java class for TelephoneAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="TelephoneAddressType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractAddressType"> - * <sequence minOccurs="0"> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" maxOccurs="unbounded" minOccurs="0"/> - * <element name="Number" type="{http://reference.e-government.gv.at/namespace/persondata/20020228#}TelcomNumberType"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "TelephoneAddressType", propOrder = { - "type", - "number", - "any" -}) -public class TelephoneAddressType - extends AbstractAddressType -{ - - @XmlElement(name = "Type") - @XmlSchemaType(name = "anyURI") - protected List<String> type; - @XmlElement(name = "Number") - protected TelcomNumberType number; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the type property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the type property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getType().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getType() { - if (type == null) { - type = new ArrayList<String>(); - } - return this.type; - } - - /** - * Gets the value of the number property. - * - * @return - * possible object is - * {@link TelcomNumberType } - * - */ - public TelcomNumberType getNumber() { - return number; - } - - /** - * Sets the value of the number property. - * - * @param value - * allowed object is - * {@link TelcomNumberType } - * - */ - public void setNumber(TelcomNumberType value) { - this.number = value; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TypedPostalAddressType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TypedPostalAddressType.java deleted file mode 100644 index 0b53e5e6a..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/TypedPostalAddressType.java +++ /dev/null @@ -1,135 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * postal address with type information, compare TypisiertePostAdresseTyp - * - * <p>Java class for TypedPostalAddressType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="TypedPostalAddressType"> - * <complexContent> - * <extension base="{http://reference.e-government.gv.at/namespace/persondata/20020228#}AbstractAddressType"> - * <sequence minOccurs="0"> - * <element name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" minOccurs="0"/> - * <element ref="{http://reference.e-government.gv.at/namespace/persondata/20020228#}PostalAddress"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <anyAttribute namespace='##other'/> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "TypedPostalAddressType", propOrder = { - "type", - "postalAddress", - "any" -}) -public class TypedPostalAddressType - extends AbstractAddressType -{ - - @XmlElement(name = "Type") - @XmlSchemaType(name = "anyURI") - protected String type; - @XmlElement(name = "PostalAddress") - protected PostalAddressType postalAddress; - @XmlAnyElement(lax = true) - protected List<Object> any; - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - - /** - * Gets the value of the postalAddress property. - * - * @return - * possible object is - * {@link PostalAddressType } - * - */ - public PostalAddressType getPostalAddress() { - return postalAddress; - } - - /** - * Sets the value of the postalAddress property. - * - * @param value - * allowed object is - * {@link PostalAddressType } - * - */ - public void setPostalAddress(PostalAddressType value) { - this.postalAddress = value; - } - - /** - * Gets the value of the any property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the any property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * {@link Element } - * - * - */ - public List<Object> getAny() { - if (any == null) { - any = new ArrayList<Object>(); - } - return this.any; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Vereinsnummer.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Vereinsnummer.java deleted file mode 100644 index 08edceb71..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/Vereinsnummer.java +++ /dev/null @@ -1,64 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://reference.e-government.gv.at/namespace/persondata/20020228#>AbstractSimpleIdentificationType"> - * <attribute name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" fixed="VR" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "") -public class Vereinsnummer - extends AbstractSimpleIdentificationType -{ - - @XmlAttribute(name = "Identifier") - protected String identifier; - - /** - * Gets the value of the identifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIdentifier() { - if (identifier == null) { - return "VR"; - } else { - return identifier; - } - } - - /** - * Sets the value of the identifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIdentifier(String value) { - this.identifier = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ZMRzahl.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ZMRzahl.java deleted file mode 100644 index 42f0beafe..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/ZMRzahl.java +++ /dev/null @@ -1,64 +0,0 @@ - -package at.gv.util.xsd.persondata; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <simpleContent> - * <extension base="<http://reference.e-government.gv.at/namespace/persondata/20020228#>AbstractSimpleIdentificationType"> - * <attribute name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" fixed="ZMR" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "") -public class ZMRzahl - extends AbstractSimpleIdentificationType -{ - - @XmlAttribute(name = "Identifier") - protected String identifier; - - /** - * Gets the value of the identifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIdentifier() { - if (identifier == null) { - return "ZMR"; - } else { - return identifier; - } - } - - /** - * Sets the value of the identifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIdentifier(String value) { - this.identifier = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/package-info.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/package-info.java deleted file mode 100644 index 1c9b9e547..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/persondata/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://reference.e-government.gv.at/namespace/persondata/20020228#", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.util.xsd.persondata; diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ActionType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ActionType.java deleted file mode 100644 index 36a5ef407..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ActionType.java +++ /dev/null @@ -1,89 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * <p>Java class for ActionType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ActionType"> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="Namespace" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ActionType", propOrder = { - "value" -}) -public class ActionType { - - @XmlValue - protected String value; - @XmlAttribute(name = "Namespace") - @XmlSchemaType(name = "anyURI") - protected String namespace; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the namespace property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getNamespace() { - return namespace; - } - - /** - * Sets the value of the namespace property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setNamespace(String value) { - this.namespace = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AdviceType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AdviceType.java deleted file mode 100644 index fb556ea95..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AdviceType.java +++ /dev/null @@ -1,82 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for AdviceType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AdviceType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded" minOccurs="0"> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AssertionIDReference"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Assertion"/> - * <any processContents='lax' namespace='##other'/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AdviceType", propOrder = { - "assertionIDReferenceOrAssertionOrAny" -}) -public class AdviceType { - - @XmlElementRefs({ - @XmlElementRef(name = "Assertion", namespace = "urn:oasis:names:tc:SAML:1.0:assertion", type = JAXBElement.class), - @XmlElementRef(name = "AssertionIDReference", namespace = "urn:oasis:names:tc:SAML:1.0:assertion", type = JAXBElement.class) - }) - @XmlAnyElement(lax = true) - protected List<Object> assertionIDReferenceOrAssertionOrAny; - - /** - * Gets the value of the assertionIDReferenceOrAssertionOrAny property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the assertionIDReferenceOrAssertionOrAny property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAssertionIDReferenceOrAssertionOrAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link JAXBElement }{@code <}{@link AssertionType }{@code >} - * {@link Object } - * - * - */ - public List<Object> getAssertionIDReferenceOrAssertionOrAny() { - if (assertionIDReferenceOrAssertionOrAny == null) { - assertionIDReferenceOrAssertionOrAny = new ArrayList<Object>(); - } - return this.assertionIDReferenceOrAssertionOrAny; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AssertionType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AssertionType.java deleted file mode 100644 index 027a40fb2..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AssertionType.java +++ /dev/null @@ -1,311 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; -import at.gv.util.xsd.xmldsig.SignatureType; - - -/** - * <p>Java class for AssertionType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AssertionType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Conditions" minOccurs="0"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Advice" minOccurs="0"/> - * <choice maxOccurs="unbounded"> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Statement"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectStatement"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AuthenticationStatement"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AuthorizationDecisionStatement"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AttributeStatement"/> - * </choice> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Signature" minOccurs="0"/> - * </sequence> - * <attribute name="MajorVersion" use="required" type="{http://www.w3.org/2001/XMLSchema}integer" /> - * <attribute name="MinorVersion" use="required" type="{http://www.w3.org/2001/XMLSchema}integer" /> - * <attribute name="AssertionID" use="required" type="{urn:oasis:names:tc:SAML:1.0:assertion}IDType" /> - * <attribute name="Issuer" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="IssueInstant" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AssertionType", propOrder = { - "conditions", - "advice", - "statementOrSubjectStatementOrAuthenticationStatement", - "signature" -}) -public class AssertionType { - - @XmlElement(name = "Conditions") - protected ConditionsType conditions; - @XmlElement(name = "Advice") - protected AdviceType advice; - @XmlElements({ - @XmlElement(name = "Statement"), - @XmlElement(name = "SubjectStatement", type = SubjectStatementAbstractType.class), - @XmlElement(name = "AuthenticationStatement", type = AuthenticationStatementType.class), - @XmlElement(name = "AuthorizationDecisionStatement", type = AuthorizationDecisionStatementType.class), - @XmlElement(name = "AttributeStatement", type = AttributeStatementType.class) - }) - protected List<StatementAbstractType> statementOrSubjectStatementOrAuthenticationStatement; - @XmlElement(name = "Signature", namespace = "http://www.w3.org/2000/09/xmldsig#") - protected SignatureType signature; - @XmlAttribute(name = "MajorVersion", required = true) - protected BigInteger majorVersion; - @XmlAttribute(name = "MinorVersion", required = true) - protected BigInteger minorVersion; - @XmlAttribute(name = "AssertionID", required = true) - protected String assertionID; - @XmlAttribute(name = "Issuer", required = true) - protected String issuer; - @XmlAttribute(name = "IssueInstant", required = true) - @XmlSchemaType(name = "dateTime") - protected XMLGregorianCalendar issueInstant; - - /** - * Gets the value of the conditions property. - * - * @return - * possible object is - * {@link ConditionsType } - * - */ - public ConditionsType getConditions() { - return conditions; - } - - /** - * Sets the value of the conditions property. - * - * @param value - * allowed object is - * {@link ConditionsType } - * - */ - public void setConditions(ConditionsType value) { - this.conditions = value; - } - - /** - * Gets the value of the advice property. - * - * @return - * possible object is - * {@link AdviceType } - * - */ - public AdviceType getAdvice() { - return advice; - } - - /** - * Sets the value of the advice property. - * - * @param value - * allowed object is - * {@link AdviceType } - * - */ - public void setAdvice(AdviceType value) { - this.advice = value; - } - - /** - * Gets the value of the statementOrSubjectStatementOrAuthenticationStatement property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the statementOrSubjectStatementOrAuthenticationStatement property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getStatementOrSubjectStatementOrAuthenticationStatement().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link StatementAbstractType } - * {@link SubjectStatementAbstractType } - * {@link AuthenticationStatementType } - * {@link AuthorizationDecisionStatementType } - * {@link AttributeStatementType } - * - * - */ - public List<StatementAbstractType> getStatementOrSubjectStatementOrAuthenticationStatement() { - if (statementOrSubjectStatementOrAuthenticationStatement == null) { - statementOrSubjectStatementOrAuthenticationStatement = new ArrayList<StatementAbstractType>(); - } - return this.statementOrSubjectStatementOrAuthenticationStatement; - } - - /** - * Gets the value of the signature property. - * - * @return - * possible object is - * {@link SignatureType } - * - */ - public SignatureType getSignature() { - return signature; - } - - /** - * Sets the value of the signature property. - * - * @param value - * allowed object is - * {@link SignatureType } - * - */ - public void setSignature(SignatureType value) { - this.signature = value; - } - - /** - * Gets the value of the majorVersion property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMajorVersion() { - return majorVersion; - } - - /** - * Sets the value of the majorVersion property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMajorVersion(BigInteger value) { - this.majorVersion = value; - } - - /** - * Gets the value of the minorVersion property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getMinorVersion() { - return minorVersion; - } - - /** - * Sets the value of the minorVersion property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setMinorVersion(BigInteger value) { - this.minorVersion = value; - } - - /** - * Gets the value of the assertionID property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAssertionID() { - return assertionID; - } - - /** - * Sets the value of the assertionID property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAssertionID(String value) { - this.assertionID = value; - } - - /** - * Gets the value of the issuer property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIssuer() { - return issuer; - } - - /** - * Sets the value of the issuer property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIssuer(String value) { - this.issuer = value; - } - - /** - * Gets the value of the issueInstant property. - * - * @return - * possible object is - * {@link XMLGregorianCalendar } - * - */ - public XMLGregorianCalendar getIssueInstant() { - return issueInstant; - } - - /** - * Sets the value of the issueInstant property. - * - * @param value - * allowed object is - * {@link XMLGregorianCalendar } - * - */ - public void setIssueInstant(XMLGregorianCalendar value) { - this.issueInstant = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeDesignatorType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeDesignatorType.java deleted file mode 100644 index 4f03b1951..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeDesignatorType.java +++ /dev/null @@ -1,91 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for AttributeDesignatorType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AttributeDesignatorType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <attribute name="AttributeName" use="required" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="AttributeNamespace" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AttributeDesignatorType") -@XmlSeeAlso({ - AttributeType.class -}) -public class AttributeDesignatorType { - - @XmlAttribute(name = "AttributeName", required = true) - protected String attributeName; - @XmlAttribute(name = "AttributeNamespace", required = true) - @XmlSchemaType(name = "anyURI") - protected String attributeNamespace; - - /** - * Gets the value of the attributeName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAttributeName() { - return attributeName; - } - - /** - * Sets the value of the attributeName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAttributeName(String value) { - this.attributeName = value; - } - - /** - * Gets the value of the attributeNamespace property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAttributeNamespace() { - return attributeNamespace; - } - - /** - * Sets the value of the attributeNamespace property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAttributeNamespace(String value) { - this.attributeNamespace = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeStatementType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeStatementType.java deleted file mode 100644 index 8e499c4ae..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeStatementType.java +++ /dev/null @@ -1,71 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for AttributeStatementType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AttributeStatementType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectStatementAbstractType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Attribute" maxOccurs="unbounded"/> - * </sequence> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AttributeStatementType", propOrder = { - "attribute" -}) -public class AttributeStatementType - extends SubjectStatementAbstractType -{ - - @XmlElement(name = "Attribute", required = true) - protected List<AttributeType> attribute; - - /** - * Gets the value of the attribute property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the attribute property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAttribute().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link AttributeType } - * - * - */ - public List<AttributeType> getAttribute() { - if (attribute == null) { - attribute = new ArrayList<AttributeType>(); - } - return this.attribute; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeType.java deleted file mode 100644 index 0f25e4802..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AttributeType.java +++ /dev/null @@ -1,71 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for AttributeType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AttributeType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}AttributeDesignatorType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AttributeValue" maxOccurs="unbounded"/> - * </sequence> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AttributeType", propOrder = { - "attributeValue" -}) -public class AttributeType - extends AttributeDesignatorType -{ - - @XmlElement(name = "AttributeValue", required = true) - protected List<Object> attributeValue; - - /** - * Gets the value of the attributeValue property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the attributeValue property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAttributeValue().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Object } - * - * - */ - public List<Object> getAttributeValue() { - if (attributeValue == null) { - attributeValue = new ArrayList<Object>(); - } - return this.attributeValue; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AudienceRestrictionConditionType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AudienceRestrictionConditionType.java deleted file mode 100644 index 7088eaaf3..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AudienceRestrictionConditionType.java +++ /dev/null @@ -1,73 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for AudienceRestrictionConditionType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AudienceRestrictionConditionType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}ConditionAbstractType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Audience" maxOccurs="unbounded"/> - * </sequence> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AudienceRestrictionConditionType", propOrder = { - "audience" -}) -public class AudienceRestrictionConditionType - extends ConditionAbstractType -{ - - @XmlElement(name = "Audience", required = true) - @XmlSchemaType(name = "anyURI") - protected List<String> audience; - - /** - * Gets the value of the audience property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the audience property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAudience().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getAudience() { - if (audience == null) { - audience = new ArrayList<String>(); - } - return this.audience; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthenticationStatementType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthenticationStatementType.java deleted file mode 100644 index 48ae6e4b8..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthenticationStatementType.java +++ /dev/null @@ -1,158 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; - - -/** - * <p>Java class for AuthenticationStatementType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AuthenticationStatementType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectStatementAbstractType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectLocality" minOccurs="0"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AuthorityBinding" maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="AuthenticationMethod" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="AuthenticationInstant" use="required" type="{http://www.w3.org/2001/XMLSchema}dateTime" /> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AuthenticationStatementType", propOrder = { - "subjectLocality", - "authorityBinding" -}) -public class AuthenticationStatementType - extends SubjectStatementAbstractType -{ - - @XmlElement(name = "SubjectLocality") - protected SubjectLocalityType subjectLocality; - @XmlElement(name = "AuthorityBinding") - protected List<AuthorityBindingType> authorityBinding; - @XmlAttribute(name = "AuthenticationMethod", required = true) - @XmlSchemaType(name = "anyURI") - protected String authenticationMethod; - @XmlAttribute(name = "AuthenticationInstant", required = true) - @XmlSchemaType(name = "dateTime") - protected XMLGregorianCalendar authenticationInstant; - - /** - * Gets the value of the subjectLocality property. - * - * @return - * possible object is - * {@link SubjectLocalityType } - * - */ - public SubjectLocalityType getSubjectLocality() { - return subjectLocality; - } - - /** - * Sets the value of the subjectLocality property. - * - * @param value - * allowed object is - * {@link SubjectLocalityType } - * - */ - public void setSubjectLocality(SubjectLocalityType value) { - this.subjectLocality = value; - } - - /** - * Gets the value of the authorityBinding property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the authorityBinding property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAuthorityBinding().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link AuthorityBindingType } - * - * - */ - public List<AuthorityBindingType> getAuthorityBinding() { - if (authorityBinding == null) { - authorityBinding = new ArrayList<AuthorityBindingType>(); - } - return this.authorityBinding; - } - - /** - * Gets the value of the authenticationMethod property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAuthenticationMethod() { - return authenticationMethod; - } - - /** - * Sets the value of the authenticationMethod property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAuthenticationMethod(String value) { - this.authenticationMethod = value; - } - - /** - * Gets the value of the authenticationInstant property. - * - * @return - * possible object is - * {@link XMLGregorianCalendar } - * - */ - public XMLGregorianCalendar getAuthenticationInstant() { - return authenticationInstant; - } - - /** - * Sets the value of the authenticationInstant property. - * - * @param value - * allowed object is - * {@link XMLGregorianCalendar } - * - */ - public void setAuthenticationInstant(XMLGregorianCalendar value) { - this.authenticationInstant = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorityBindingType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorityBindingType.java deleted file mode 100644 index 809411c70..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorityBindingType.java +++ /dev/null @@ -1,116 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.namespace.QName; - - -/** - * <p>Java class for AuthorityBindingType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AuthorityBindingType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <attribute name="AuthorityKind" use="required" type="{http://www.w3.org/2001/XMLSchema}QName" /> - * <attribute name="Location" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="Binding" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AuthorityBindingType") -public class AuthorityBindingType { - - @XmlAttribute(name = "AuthorityKind", required = true) - protected QName authorityKind; - @XmlAttribute(name = "Location", required = true) - @XmlSchemaType(name = "anyURI") - protected String location; - @XmlAttribute(name = "Binding", required = true) - @XmlSchemaType(name = "anyURI") - protected String binding; - - /** - * Gets the value of the authorityKind property. - * - * @return - * possible object is - * {@link QName } - * - */ - public QName getAuthorityKind() { - return authorityKind; - } - - /** - * Sets the value of the authorityKind property. - * - * @param value - * allowed object is - * {@link QName } - * - */ - public void setAuthorityKind(QName value) { - this.authorityKind = value; - } - - /** - * Gets the value of the location property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLocation() { - return location; - } - - /** - * Sets the value of the location property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLocation(String value) { - this.location = value; - } - - /** - * Gets the value of the binding property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getBinding() { - return binding; - } - - /** - * Sets the value of the binding property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setBinding(String value) { - this.binding = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorizationDecisionStatementType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorizationDecisionStatementType.java deleted file mode 100644 index 035e3a079..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/AuthorizationDecisionStatementType.java +++ /dev/null @@ -1,156 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for AuthorizationDecisionStatementType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="AuthorizationDecisionStatementType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectStatementAbstractType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Action" maxOccurs="unbounded"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Evidence" minOccurs="0"/> - * </sequence> - * <attribute name="Resource" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="Decision" use="required" type="{urn:oasis:names:tc:SAML:1.0:assertion}DecisionType" /> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "AuthorizationDecisionStatementType", propOrder = { - "action", - "evidence" -}) -public class AuthorizationDecisionStatementType - extends SubjectStatementAbstractType -{ - - @XmlElement(name = "Action", required = true) - protected List<ActionType> action; - @XmlElement(name = "Evidence") - protected EvidenceType evidence; - @XmlAttribute(name = "Resource", required = true) - @XmlSchemaType(name = "anyURI") - protected String resource; - @XmlAttribute(name = "Decision", required = true) - protected DecisionType decision; - - /** - * Gets the value of the action property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the action property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAction().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link ActionType } - * - * - */ - public List<ActionType> getAction() { - if (action == null) { - action = new ArrayList<ActionType>(); - } - return this.action; - } - - /** - * Gets the value of the evidence property. - * - * @return - * possible object is - * {@link EvidenceType } - * - */ - public EvidenceType getEvidence() { - return evidence; - } - - /** - * Sets the value of the evidence property. - * - * @param value - * allowed object is - * {@link EvidenceType } - * - */ - public void setEvidence(EvidenceType value) { - this.evidence = value; - } - - /** - * Gets the value of the resource property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getResource() { - return resource; - } - - /** - * Sets the value of the resource property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setResource(String value) { - this.resource = value; - } - - /** - * Gets the value of the decision property. - * - * @return - * possible object is - * {@link DecisionType } - * - */ - public DecisionType getDecision() { - return decision; - } - - /** - * Sets the value of the decision property. - * - * @param value - * allowed object is - * {@link DecisionType } - * - */ - public void setDecision(DecisionType value) { - this.decision = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionAbstractType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionAbstractType.java deleted file mode 100644 index 31033e0b6..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionAbstractType.java +++ /dev/null @@ -1,34 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for ConditionAbstractType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ConditionAbstractType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ConditionAbstractType") -@XmlSeeAlso({ - AudienceRestrictionConditionType.class -}) -public abstract class ConditionAbstractType { - - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionsType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionsType.java deleted file mode 100644 index 93689f559..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ConditionsType.java +++ /dev/null @@ -1,134 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.datatype.XMLGregorianCalendar; - - -/** - * <p>Java class for ConditionsType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ConditionsType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded" minOccurs="0"> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AudienceRestrictionCondition"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Condition"/> - * </choice> - * <attribute name="NotBefore" type="{http://www.w3.org/2001/XMLSchema}dateTime" /> - * <attribute name="NotOnOrAfter" type="{http://www.w3.org/2001/XMLSchema}dateTime" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ConditionsType", propOrder = { - "audienceRestrictionConditionOrCondition" -}) -public class ConditionsType { - - @XmlElements({ - @XmlElement(name = "AudienceRestrictionCondition", type = AudienceRestrictionConditionType.class), - @XmlElement(name = "Condition") - }) - protected List<ConditionAbstractType> audienceRestrictionConditionOrCondition; - @XmlAttribute(name = "NotBefore") - @XmlSchemaType(name = "dateTime") - protected XMLGregorianCalendar notBefore; - @XmlAttribute(name = "NotOnOrAfter") - @XmlSchemaType(name = "dateTime") - protected XMLGregorianCalendar notOnOrAfter; - - /** - * Gets the value of the audienceRestrictionConditionOrCondition property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the audienceRestrictionConditionOrCondition property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAudienceRestrictionConditionOrCondition().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link AudienceRestrictionConditionType } - * {@link ConditionAbstractType } - * - * - */ - public List<ConditionAbstractType> getAudienceRestrictionConditionOrCondition() { - if (audienceRestrictionConditionOrCondition == null) { - audienceRestrictionConditionOrCondition = new ArrayList<ConditionAbstractType>(); - } - return this.audienceRestrictionConditionOrCondition; - } - - /** - * Gets the value of the notBefore property. - * - * @return - * possible object is - * {@link XMLGregorianCalendar } - * - */ - public XMLGregorianCalendar getNotBefore() { - return notBefore; - } - - /** - * Sets the value of the notBefore property. - * - * @param value - * allowed object is - * {@link XMLGregorianCalendar } - * - */ - public void setNotBefore(XMLGregorianCalendar value) { - this.notBefore = value; - } - - /** - * Gets the value of the notOnOrAfter property. - * - * @return - * possible object is - * {@link XMLGregorianCalendar } - * - */ - public XMLGregorianCalendar getNotOnOrAfter() { - return notOnOrAfter; - } - - /** - * Sets the value of the notOnOrAfter property. - * - * @param value - * allowed object is - * {@link XMLGregorianCalendar } - * - */ - public void setNotOnOrAfter(XMLGregorianCalendar value) { - this.notOnOrAfter = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/DecisionType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/DecisionType.java deleted file mode 100644 index 01befe477..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/DecisionType.java +++ /dev/null @@ -1,54 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlEnum; -import javax.xml.bind.annotation.XmlEnumValue; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for DecisionType. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * <p> - * <pre> - * <simpleType name="DecisionType"> - * <restriction base="{http://www.w3.org/2001/XMLSchema}string"> - * <enumeration value="Permit"/> - * <enumeration value="Deny"/> - * <enumeration value="Indeterminate"/> - * </restriction> - * </simpleType> - * </pre> - * - */ -@XmlType(name = "DecisionType") -@XmlEnum -public enum DecisionType { - - @XmlEnumValue("Permit") - PERMIT("Permit"), - @XmlEnumValue("Deny") - DENY("Deny"), - @XmlEnumValue("Indeterminate") - INDETERMINATE("Indeterminate"); - private final String value; - - DecisionType(String v) { - value = v; - } - - public String value() { - return value; - } - - public static DecisionType fromValue(String v) { - for (DecisionType c: DecisionType.values()) { - if (c.value.equals(v)) { - return c; - } - } - throw new IllegalArgumentException(v); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/EvidenceType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/EvidenceType.java deleted file mode 100644 index 9a25910fa..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/EvidenceType.java +++ /dev/null @@ -1,75 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlElements; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for EvidenceType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="EvidenceType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded"> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}AssertionIDReference"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Assertion"/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "EvidenceType", propOrder = { - "assertionIDReferenceOrAssertion" -}) -public class EvidenceType { - - @XmlElements({ - @XmlElement(name = "AssertionIDReference", type = String.class), - @XmlElement(name = "Assertion", type = AssertionType.class) - }) - protected List<Object> assertionIDReferenceOrAssertion; - - /** - * Gets the value of the assertionIDReferenceOrAssertion property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the assertionIDReferenceOrAssertion property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getAssertionIDReferenceOrAssertion().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * {@link AssertionType } - * - * - */ - public List<Object> getAssertionIDReferenceOrAssertion() { - if (assertionIDReferenceOrAssertion == null) { - assertionIDReferenceOrAssertion = new ArrayList<Object>(); - } - return this.assertionIDReferenceOrAssertion; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/NameIdentifierType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/NameIdentifierType.java deleted file mode 100644 index fd14e84f2..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/NameIdentifierType.java +++ /dev/null @@ -1,116 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; - - -/** - * <p>Java class for NameIdentifierType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="NameIdentifierType"> - * <simpleContent> - * <extension base="<http://www.w3.org/2001/XMLSchema>string"> - * <attribute name="NameQualifier" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="Format" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "NameIdentifierType", propOrder = { - "value" -}) -public class NameIdentifierType { - - @XmlValue - protected String value; - @XmlAttribute(name = "NameQualifier") - protected String nameQualifier; - @XmlAttribute(name = "Format") - @XmlSchemaType(name = "anyURI") - protected String format; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the nameQualifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getNameQualifier() { - return nameQualifier; - } - - /** - * Sets the value of the nameQualifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setNameQualifier(String value) { - this.nameQualifier = value; - } - - /** - * Gets the value of the format property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFormat() { - return format; - } - - /** - * Sets the value of the format property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFormat(String value) { - this.format = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ObjectFactory.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ObjectFactory.java deleted file mode 100644 index e3e54db31..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/ObjectFactory.java +++ /dev/null @@ -1,403 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.util.xsd.saml.assertion package. - * <p>An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _Attribute_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Attribute"); - private final static QName _AttributeStatement_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AttributeStatement"); - private final static QName _Condition_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Condition"); - private final static QName _SubjectConfirmation_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "SubjectConfirmation"); - private final static QName _AudienceRestrictionCondition_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AudienceRestrictionCondition"); - private final static QName _AssertionIDReference_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AssertionIDReference"); - private final static QName _Subject_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Subject"); - private final static QName _Advice_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Advice"); - private final static QName _Action_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Action"); - private final static QName _Audience_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Audience"); - private final static QName _ConfirmationMethod_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "ConfirmationMethod"); - private final static QName _SubjectConfirmationData_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "SubjectConfirmationData"); - private final static QName _SubjectStatement_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "SubjectStatement"); - private final static QName _Assertion_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Assertion"); - private final static QName _NameIdentifier_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "NameIdentifier"); - private final static QName _AuthorizationDecisionStatement_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AuthorizationDecisionStatement"); - private final static QName _AttributeDesignator_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AttributeDesignator"); - private final static QName _AuthorityBinding_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AuthorityBinding"); - private final static QName _Evidence_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Evidence"); - private final static QName _SubjectLocality_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "SubjectLocality"); - private final static QName _AuthenticationStatement_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AuthenticationStatement"); - private final static QName _Conditions_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Conditions"); - private final static QName _Statement_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "Statement"); - private final static QName _AttributeValue_QNAME = new QName("urn:oasis:names:tc:SAML:1.0:assertion", "AttributeValue"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.util.xsd.saml.assertion - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link AuthorizationDecisionStatementType } - * - */ - public AuthorizationDecisionStatementType createAuthorizationDecisionStatementType() { - return new AuthorizationDecisionStatementType(); - } - - /** - * Create an instance of {@link ConditionsType } - * - */ - public ConditionsType createConditionsType() { - return new ConditionsType(); - } - - /** - * Create an instance of {@link AudienceRestrictionConditionType } - * - */ - public AudienceRestrictionConditionType createAudienceRestrictionConditionType() { - return new AudienceRestrictionConditionType(); - } - - /** - * Create an instance of {@link AttributeDesignatorType } - * - */ - public AttributeDesignatorType createAttributeDesignatorType() { - return new AttributeDesignatorType(); - } - - /** - * Create an instance of {@link SubjectType } - * - */ - public SubjectType createSubjectType() { - return new SubjectType(); - } - - /** - * Create an instance of {@link SubjectLocalityType } - * - */ - public SubjectLocalityType createSubjectLocalityType() { - return new SubjectLocalityType(); - } - - /** - * Create an instance of {@link SubjectConfirmationType } - * - */ - public SubjectConfirmationType createSubjectConfirmationType() { - return new SubjectConfirmationType(); - } - - /** - * Create an instance of {@link AdviceType } - * - */ - public AdviceType createAdviceType() { - return new AdviceType(); - } - - /** - * Create an instance of {@link AssertionType } - * - */ - public AssertionType createAssertionType() { - return new AssertionType(); - } - - /** - * Create an instance of {@link AuthorityBindingType } - * - */ - public AuthorityBindingType createAuthorityBindingType() { - return new AuthorityBindingType(); - } - - /** - * Create an instance of {@link ActionType } - * - */ - public ActionType createActionType() { - return new ActionType(); - } - - /** - * Create an instance of {@link AttributeType } - * - */ - public AttributeType createAttributeType() { - return new AttributeType(); - } - - /** - * Create an instance of {@link AuthenticationStatementType } - * - */ - public AuthenticationStatementType createAuthenticationStatementType() { - return new AuthenticationStatementType(); - } - - /** - * Create an instance of {@link AttributeStatementType } - * - */ - public AttributeStatementType createAttributeStatementType() { - return new AttributeStatementType(); - } - - /** - * Create an instance of {@link EvidenceType } - * - */ - public EvidenceType createEvidenceType() { - return new EvidenceType(); - } - - /** - * Create an instance of {@link NameIdentifierType } - * - */ - public NameIdentifierType createNameIdentifierType() { - return new NameIdentifierType(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AttributeType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Attribute") - public JAXBElement<AttributeType> createAttribute(AttributeType value) { - return new JAXBElement<AttributeType>(_Attribute_QNAME, AttributeType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AttributeStatementType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AttributeStatement") - public JAXBElement<AttributeStatementType> createAttributeStatement(AttributeStatementType value) { - return new JAXBElement<AttributeStatementType>(_AttributeStatement_QNAME, AttributeStatementType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ConditionAbstractType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Condition") - public JAXBElement<ConditionAbstractType> createCondition(ConditionAbstractType value) { - return new JAXBElement<ConditionAbstractType>(_Condition_QNAME, ConditionAbstractType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SubjectConfirmationType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "SubjectConfirmation") - public JAXBElement<SubjectConfirmationType> createSubjectConfirmation(SubjectConfirmationType value) { - return new JAXBElement<SubjectConfirmationType>(_SubjectConfirmation_QNAME, SubjectConfirmationType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AudienceRestrictionConditionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AudienceRestrictionCondition") - public JAXBElement<AudienceRestrictionConditionType> createAudienceRestrictionCondition(AudienceRestrictionConditionType value) { - return new JAXBElement<AudienceRestrictionConditionType>(_AudienceRestrictionCondition_QNAME, AudienceRestrictionConditionType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AssertionIDReference") - public JAXBElement<String> createAssertionIDReference(String value) { - return new JAXBElement<String>(_AssertionIDReference_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SubjectType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Subject") - public JAXBElement<SubjectType> createSubject(SubjectType value) { - return new JAXBElement<SubjectType>(_Subject_QNAME, SubjectType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AdviceType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Advice") - public JAXBElement<AdviceType> createAdvice(AdviceType value) { - return new JAXBElement<AdviceType>(_Advice_QNAME, AdviceType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ActionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Action") - public JAXBElement<ActionType> createAction(ActionType value) { - return new JAXBElement<ActionType>(_Action_QNAME, ActionType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Audience") - public JAXBElement<String> createAudience(String value) { - return new JAXBElement<String>(_Audience_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "ConfirmationMethod") - public JAXBElement<String> createConfirmationMethod(String value) { - return new JAXBElement<String>(_ConfirmationMethod_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "SubjectConfirmationData") - public JAXBElement<Object> createSubjectConfirmationData(Object value) { - return new JAXBElement<Object>(_SubjectConfirmationData_QNAME, Object.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SubjectStatementAbstractType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "SubjectStatement") - public JAXBElement<SubjectStatementAbstractType> createSubjectStatement(SubjectStatementAbstractType value) { - return new JAXBElement<SubjectStatementAbstractType>(_SubjectStatement_QNAME, SubjectStatementAbstractType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AssertionType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Assertion") - public JAXBElement<AssertionType> createAssertion(AssertionType value) { - return new JAXBElement<AssertionType>(_Assertion_QNAME, AssertionType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link NameIdentifierType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "NameIdentifier") - public JAXBElement<NameIdentifierType> createNameIdentifier(NameIdentifierType value) { - return new JAXBElement<NameIdentifierType>(_NameIdentifier_QNAME, NameIdentifierType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AuthorizationDecisionStatementType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AuthorizationDecisionStatement") - public JAXBElement<AuthorizationDecisionStatementType> createAuthorizationDecisionStatement(AuthorizationDecisionStatementType value) { - return new JAXBElement<AuthorizationDecisionStatementType>(_AuthorizationDecisionStatement_QNAME, AuthorizationDecisionStatementType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AttributeDesignatorType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AttributeDesignator") - public JAXBElement<AttributeDesignatorType> createAttributeDesignator(AttributeDesignatorType value) { - return new JAXBElement<AttributeDesignatorType>(_AttributeDesignator_QNAME, AttributeDesignatorType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AuthorityBindingType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AuthorityBinding") - public JAXBElement<AuthorityBindingType> createAuthorityBinding(AuthorityBindingType value) { - return new JAXBElement<AuthorityBindingType>(_AuthorityBinding_QNAME, AuthorityBindingType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link EvidenceType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Evidence") - public JAXBElement<EvidenceType> createEvidence(EvidenceType value) { - return new JAXBElement<EvidenceType>(_Evidence_QNAME, EvidenceType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SubjectLocalityType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "SubjectLocality") - public JAXBElement<SubjectLocalityType> createSubjectLocality(SubjectLocalityType value) { - return new JAXBElement<SubjectLocalityType>(_SubjectLocality_QNAME, SubjectLocalityType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link AuthenticationStatementType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AuthenticationStatement") - public JAXBElement<AuthenticationStatementType> createAuthenticationStatement(AuthenticationStatementType value) { - return new JAXBElement<AuthenticationStatementType>(_AuthenticationStatement_QNAME, AuthenticationStatementType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ConditionsType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Conditions") - public JAXBElement<ConditionsType> createConditions(ConditionsType value) { - return new JAXBElement<ConditionsType>(_Conditions_QNAME, ConditionsType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link StatementAbstractType }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "Statement") - public JAXBElement<StatementAbstractType> createStatement(StatementAbstractType value) { - return new JAXBElement<StatementAbstractType>(_Statement_QNAME, StatementAbstractType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link Object }{@code >}} - * - */ - @XmlElementDecl(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", name = "AttributeValue") - public JAXBElement<Object> createAttributeValue(Object value) { - return new JAXBElement<Object>(_AttributeValue_QNAME, Object.class, null, value); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/StatementAbstractType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/StatementAbstractType.java deleted file mode 100644 index b9dfff501..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/StatementAbstractType.java +++ /dev/null @@ -1,34 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for StatementAbstractType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="StatementAbstractType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "StatementAbstractType") -@XmlSeeAlso({ - SubjectStatementAbstractType.class -}) -public abstract class StatementAbstractType { - - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectConfirmationType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectConfirmationType.java deleted file mode 100644 index 76e8a9b9a..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectConfirmationType.java +++ /dev/null @@ -1,128 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.xmldsig.KeyInfoType; - - -/** - * <p>Java class for SubjectConfirmationType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SubjectConfirmationType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}ConfirmationMethod" maxOccurs="unbounded"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectConfirmationData" minOccurs="0"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyInfo" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SubjectConfirmationType", propOrder = { - "confirmationMethod", - "subjectConfirmationData", - "keyInfo" -}) -public class SubjectConfirmationType { - - @XmlElement(name = "ConfirmationMethod", required = true) - @XmlSchemaType(name = "anyURI") - protected List<String> confirmationMethod; - @XmlElement(name = "SubjectConfirmationData") - protected Object subjectConfirmationData; - @XmlElement(name = "KeyInfo", namespace = "http://www.w3.org/2000/09/xmldsig#") - protected KeyInfoType keyInfo; - - /** - * Gets the value of the confirmationMethod property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the confirmationMethod property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getConfirmationMethod().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * - * - */ - public List<String> getConfirmationMethod() { - if (confirmationMethod == null) { - confirmationMethod = new ArrayList<String>(); - } - return this.confirmationMethod; - } - - /** - * Gets the value of the subjectConfirmationData property. - * - * @return - * possible object is - * {@link Object } - * - */ - public Object getSubjectConfirmationData() { - return subjectConfirmationData; - } - - /** - * Sets the value of the subjectConfirmationData property. - * - * @param value - * allowed object is - * {@link Object } - * - */ - public void setSubjectConfirmationData(Object value) { - this.subjectConfirmationData = value; - } - - /** - * Gets the value of the keyInfo property. - * - * @return - * possible object is - * {@link KeyInfoType } - * - */ - public KeyInfoType getKeyInfo() { - return keyInfo; - } - - /** - * Sets the value of the keyInfo property. - * - * @param value - * allowed object is - * {@link KeyInfoType } - * - */ - public void setKeyInfo(KeyInfoType value) { - this.keyInfo = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectLocalityType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectLocalityType.java deleted file mode 100644 index 1bd0eb783..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectLocalityType.java +++ /dev/null @@ -1,85 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for SubjectLocalityType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SubjectLocalityType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <attribute name="IPAddress" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="DNSAddress" type="{http://www.w3.org/2001/XMLSchema}string" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SubjectLocalityType") -public class SubjectLocalityType { - - @XmlAttribute(name = "IPAddress") - protected String ipAddress; - @XmlAttribute(name = "DNSAddress") - protected String dnsAddress; - - /** - * Gets the value of the ipAddress property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIPAddress() { - return ipAddress; - } - - /** - * Sets the value of the ipAddress property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIPAddress(String value) { - this.ipAddress = value; - } - - /** - * Gets the value of the dnsAddress property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDNSAddress() { - return dnsAddress; - } - - /** - * Sets the value of the dnsAddress property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDNSAddress(String value) { - this.dnsAddress = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectStatementAbstractType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectStatementAbstractType.java deleted file mode 100644 index 601815a36..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectStatementAbstractType.java +++ /dev/null @@ -1,70 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSeeAlso; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for SubjectStatementAbstractType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SubjectStatementAbstractType"> - * <complexContent> - * <extension base="{urn:oasis:names:tc:SAML:1.0:assertion}StatementAbstractType"> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}Subject"/> - * </sequence> - * </extension> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SubjectStatementAbstractType", propOrder = { - "subject" -}) -@XmlSeeAlso({ - AuthorizationDecisionStatementType.class, - AuthenticationStatementType.class, - AttributeStatementType.class -}) -public abstract class SubjectStatementAbstractType - extends StatementAbstractType -{ - - @XmlElement(name = "Subject", required = true) - protected SubjectType subject; - - /** - * Gets the value of the subject property. - * - * @return - * possible object is - * {@link SubjectType } - * - */ - public SubjectType getSubject() { - return subject; - } - - /** - * Sets the value of the subject property. - * - * @param value - * allowed object is - * {@link SubjectType } - * - */ - public void setSubject(SubjectType value) { - this.subject = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectType.java deleted file mode 100644 index 89b61c35c..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/SubjectType.java +++ /dev/null @@ -1,89 +0,0 @@ - -package at.gv.util.xsd.saml.assertion; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for SubjectType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SubjectType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}NameIdentifier"/> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectConfirmation" minOccurs="0"/> - * </sequence> - * <element ref="{urn:oasis:names:tc:SAML:1.0:assertion}SubjectConfirmation"/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SubjectType", propOrder = { - "content" -}) -public class SubjectType { - - @XmlElementRefs({ - @XmlElementRef(name = "NameIdentifier", namespace = "urn:oasis:names:tc:SAML:1.0:assertion", type = JAXBElement.class), - @XmlElementRef(name = "SubjectConfirmation", namespace = "urn:oasis:names:tc:SAML:1.0:assertion", type = JAXBElement.class) - }) - protected List<JAXBElement<?>> content; - - /** - * Gets the rest of the content model. - * - * <p> - * You are getting this "catch-all" property because of the following reason: - * The field name "SubjectConfirmation" is used by two different parts of a schema. See: - * line 94 of file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/cs-sstc-schema-assertion-01.xsd - * line 92 of file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/cs-sstc-schema-assertion-01.xsd - * <p> - * To get rid of this property, apply a property customization to one - * of both of the following declarations to change their names: - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link NameIdentifierType }{@code >} - * {@link JAXBElement }{@code <}{@link SubjectConfirmationType }{@code >} - * - * - */ - public List<JAXBElement<?>> getContent() { - if (content == null) { - content = new ArrayList<JAXBElement<?>>(); - } - return this.content; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/package-info.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/package-info.java deleted file mode 100644 index 2e2348830..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/saml/assertion/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "urn:oasis:names:tc:SAML:1.0:assertion", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.util.xsd.saml.assertion; diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkRequest.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkRequest.java deleted file mode 100644 index d191cc686..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkRequest.java +++ /dev/null @@ -1,473 +0,0 @@ - -package at.gv.util.xsd.srzgw; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="PEPSData" minOccurs="0"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Firstname" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Familyname" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DateOfBirth" type="{http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd}DateOfBirthType" minOccurs="0"/> - * <element name="Gender" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="FiscalNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LegalPersonTranslatableType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LegalPersonCanonicalRegisteredAddress" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Representative" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Represented" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="MandateContent" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element name="Signature" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> - * <element name="MIS" type="{http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd}MISType" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "pepsData", - "signature", - "mis" -}) -@XmlRootElement(name = "CreateIdentityLinkRequest") -public class CreateIdentityLinkRequest { - - @XmlElement(name = "PEPSData") - protected CreateIdentityLinkRequest.PEPSData pepsData; - @XmlElement(name = "Signature", required = true) - protected byte[] signature; - @XmlElement(name = "MIS") - protected MISType mis; - - /** - * Gets the value of the pepsData property. - * - * @return - * possible object is - * {@link CreateIdentityLinkRequest.PEPSData } - * - */ - public CreateIdentityLinkRequest.PEPSData getPEPSData() { - return pepsData; - } - - /** - * Sets the value of the pepsData property. - * - * @param value - * allowed object is - * {@link CreateIdentityLinkRequest.PEPSData } - * - */ - public void setPEPSData(CreateIdentityLinkRequest.PEPSData value) { - this.pepsData = value; - } - - /** - * Gets the value of the signature property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getSignature() { - return signature; - } - - /** - * Sets the value of the signature property. - * - * @param value - * allowed object is - * byte[] - */ - public void setSignature(byte[] value) { - this.signature = value; - } - - /** - * Gets the value of the mis property. - * - * @return - * possible object is - * {@link MISType } - * - */ - public MISType getMIS() { - return mis; - } - - /** - * Sets the value of the mis property. - * - * @param value - * allowed object is - * {@link MISType } - * - */ - public void setMIS(MISType value) { - this.mis = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Identifier" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Firstname" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Familyname" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="DateOfBirth" type="{http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd}DateOfBirthType" minOccurs="0"/> - * <element name="Gender" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="FiscalNumber" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LegalPersonTranslatableType" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="LegalPersonCanonicalRegisteredAddress" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Representative" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="Represented" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * <element name="MandateContent" type="{http://www.w3.org/2001/XMLSchema}string" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "identifier", - "firstname", - "familyname", - "dateOfBirth", - "gender", - "fiscalNumber", - "legalPersonTranslatableType", - "legalPersonCanonicalRegisteredAddress", - "representative", - "represented", - "mandateContent" - }) - public static class PEPSData { - - @XmlElement(name = "Identifier") - protected String identifier; - @XmlElement(name = "Firstname") - protected String firstname; - @XmlElement(name = "Familyname") - protected String familyname; - @XmlElement(name = "DateOfBirth") - protected String dateOfBirth; - @XmlElement(name = "Gender") - protected String gender; - @XmlElement(name = "FiscalNumber") - protected String fiscalNumber; - @XmlElement(name = "LegalPersonTranslatableType") - protected String legalPersonTranslatableType; - @XmlElement(name = "LegalPersonCanonicalRegisteredAddress") - protected String legalPersonCanonicalRegisteredAddress; - @XmlElement(name = "Representative") - protected String representative; - @XmlElement(name = "Represented") - protected String represented; - @XmlElement(name = "MandateContent") - protected String mandateContent; - - /** - * Gets the value of the identifier property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getIdentifier() { - return identifier; - } - - /** - * Sets the value of the identifier property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setIdentifier(String value) { - this.identifier = value; - } - - /** - * Gets the value of the firstname property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFirstname() { - return firstname; - } - - /** - * Sets the value of the firstname property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFirstname(String value) { - this.firstname = value; - } - - /** - * Gets the value of the familyname property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFamilyname() { - return familyname; - } - - /** - * Sets the value of the familyname property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFamilyname(String value) { - this.familyname = value; - } - - /** - * Gets the value of the dateOfBirth property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDateOfBirth() { - return dateOfBirth; - } - - /** - * Sets the value of the dateOfBirth property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDateOfBirth(String value) { - this.dateOfBirth = value; - } - - /** - * Gets the value of the gender property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getGender() { - return gender; - } - - /** - * Sets the value of the gender property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setGender(String value) { - this.gender = value; - } - - /** - * Gets the value of the fiscalNumber property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getFiscalNumber() { - return fiscalNumber; - } - - /** - * Sets the value of the fiscalNumber property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setFiscalNumber(String value) { - this.fiscalNumber = value; - } - - /** - * Gets the value of the legalPersonTranslatableType property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLegalPersonTranslatableType() { - return legalPersonTranslatableType; - } - - /** - * Sets the value of the legalPersonTranslatableType property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLegalPersonTranslatableType(String value) { - this.legalPersonTranslatableType = value; - } - - /** - * Gets the value of the legalPersonCanonicalRegisteredAddress property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getLegalPersonCanonicalRegisteredAddress() { - return legalPersonCanonicalRegisteredAddress; - } - - /** - * Sets the value of the legalPersonCanonicalRegisteredAddress property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setLegalPersonCanonicalRegisteredAddress(String value) { - this.legalPersonCanonicalRegisteredAddress = value; - } - - /** - * Gets the value of the representative property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepresentative() { - return representative; - } - - /** - * Sets the value of the representative property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepresentative(String value) { - this.representative = value; - } - - /** - * Gets the value of the represented property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getRepresented() { - return represented; - } - - /** - * Sets the value of the represented property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setRepresented(String value) { - this.represented = value; - } - - /** - * Gets the value of the mandateContent property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMandateContent() { - return mandateContent; - } - - /** - * Sets the value of the mandateContent property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMandateContent(String value) { - this.mandateContent = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkResponse.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkResponse.java deleted file mode 100644 index 255bd843e..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/CreateIdentityLinkResponse.java +++ /dev/null @@ -1,128 +0,0 @@ - -package at.gv.util.xsd.srzgw; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlRootElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <sequence> - * <element name="IdentityLink" type="{http://www.w3.org/2001/XMLSchema}base64Binary"/> - * <element name="Mandate" type="{http://www.w3.org/2001/XMLSchema}base64Binary" maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <sequence> - * <element name="ErrorResponse" type="{http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd}ErrorResponseType"/> - * </sequence> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "", propOrder = { - "identityLink", - "mandate", - "errorResponse" -}) -@XmlRootElement(name = "CreateIdentityLinkResponse") -public class CreateIdentityLinkResponse { - - @XmlElement(name = "IdentityLink") - protected byte[] identityLink; - @XmlElement(name = "Mandate") - protected List<byte[]> mandate; - @XmlElement(name = "ErrorResponse") - protected ErrorResponseType errorResponse; - - /** - * Gets the value of the identityLink property. - * - * @return - * possible object is - * byte[] - */ - public byte[] getIdentityLink() { - return identityLink; - } - - /** - * Sets the value of the identityLink property. - * - * @param value - * allowed object is - * byte[] - */ - public void setIdentityLink(byte[] value) { - this.identityLink = value; - } - - /** - * Gets the value of the mandate property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the mandate property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getMandate().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * byte[] - * - */ - public List<byte[]> getMandate() { - if (mandate == null) { - mandate = new ArrayList<byte[]>(); - } - return this.mandate; - } - - /** - * Gets the value of the errorResponse property. - * - * @return - * possible object is - * {@link ErrorResponseType } - * - */ - public ErrorResponseType getErrorResponse() { - return errorResponse; - } - - /** - * Sets the value of the errorResponse property. - * - * @param value - * allowed object is - * {@link ErrorResponseType } - * - */ - public void setErrorResponse(ErrorResponseType value) { - this.errorResponse = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ErrorResponseType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ErrorResponseType.java deleted file mode 100644 index 294e59b87..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ErrorResponseType.java +++ /dev/null @@ -1,92 +0,0 @@ - -package at.gv.util.xsd.srzgw; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * Allgemeiner Typ fuer ErrorResponse - * - * <p>Java class for ErrorResponseType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ErrorResponseType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="ErrorCode" type="{http://www.w3.org/2001/XMLSchema}anyType"/> - * <element name="Info" type="{http://www.w3.org/2001/XMLSchema}anyType"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ErrorResponseType", propOrder = { - "errorCode", - "info" -}) -public class ErrorResponseType { - - @XmlElement(name = "ErrorCode", required = true) - protected Object errorCode; - @XmlElement(name = "Info", required = true) - protected Object info; - - /** - * Gets the value of the errorCode property. - * - * @return - * possible object is - * {@link Object } - * - */ - public Object getErrorCode() { - return errorCode; - } - - /** - * Sets the value of the errorCode property. - * - * @param value - * allowed object is - * {@link Object } - * - */ - public void setErrorCode(Object value) { - this.errorCode = value; - } - - /** - * Gets the value of the info property. - * - * @return - * possible object is - * {@link Object } - * - */ - public Object getInfo() { - return info; - } - - /** - * Sets the value of the info property. - * - * @param value - * allowed object is - * {@link Object } - * - */ - public void setInfo(Object value) { - this.info = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/MISType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/MISType.java deleted file mode 100644 index 7b626ce23..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/MISType.java +++ /dev/null @@ -1,185 +0,0 @@ - -package at.gv.util.xsd.srzgw; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; -import at.gv.util.xsd.mis.MandateIdentifiers; -import at.gv.util.xsd.mis.Target; - - -/** - * <p>Java class for MISType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="MISType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Filters"> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}MandateIdentifiers" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </element> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}Target" minOccurs="0"/> - * <element name="OAFriendlyName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "MISType", propOrder = { - "filters", - "target", - "oaFriendlyName" -}) -public class MISType { - - @XmlElement(name = "Filters", required = true) - protected MISType.Filters filters; - @XmlElement(name = "Target", namespace = "http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd") - protected Target target; - @XmlElement(name = "OAFriendlyName", required = true) - protected String oaFriendlyName; - - /** - * Gets the value of the filters property. - * - * @return - * possible object is - * {@link MISType.Filters } - * - */ - public MISType.Filters getFilters() { - return filters; - } - - /** - * Sets the value of the filters property. - * - * @param value - * allowed object is - * {@link MISType.Filters } - * - */ - public void setFilters(MISType.Filters value) { - this.filters = value; - } - - /** - * Gets the value of the target property. - * - * @return - * possible object is - * {@link Target } - * - */ - public Target getTarget() { - return target; - } - - /** - * Sets the value of the target property. - * - * @param value - * allowed object is - * {@link Target } - * - */ - public void setTarget(Target value) { - this.target = value; - } - - /** - * Gets the value of the oaFriendlyName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getOAFriendlyName() { - return oaFriendlyName; - } - - /** - * Sets the value of the oaFriendlyName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setOAFriendlyName(String value) { - this.oaFriendlyName = value; - } - - - /** - * <p>Java class for anonymous complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd}MandateIdentifiers" minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ - @XmlAccessorType(XmlAccessType.FIELD) - @XmlType(name = "", propOrder = { - "mandateIdentifiers" - }) - public static class Filters { - - @XmlElement(name = "MandateIdentifiers", namespace = "http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd") - protected MandateIdentifiers mandateIdentifiers; - - /** - * Gets the value of the mandateIdentifiers property. - * - * @return - * possible object is - * {@link MandateIdentifiers } - * - */ - public MandateIdentifiers getMandateIdentifiers() { - return mandateIdentifiers; - } - - /** - * Sets the value of the mandateIdentifiers property. - * - * @param value - * allowed object is - * {@link MandateIdentifiers } - * - */ - public void setMandateIdentifiers(MandateIdentifiers value) { - this.mandateIdentifiers = value; - } - - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ObjectFactory.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ObjectFactory.java deleted file mode 100644 index 1fd2fa5b1..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/ObjectFactory.java +++ /dev/null @@ -1,80 +0,0 @@ - -package at.gv.util.xsd.srzgw; - -import javax.xml.bind.annotation.XmlRegistry; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.util.xsd.srzgw package. - * <p>An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.util.xsd.srzgw - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link CreateIdentityLinkRequest } - * - */ - public CreateIdentityLinkRequest createCreateIdentityLinkRequest() { - return new CreateIdentityLinkRequest(); - } - - /** - * Create an instance of {@link MISType } - * - */ - public MISType createMISType() { - return new MISType(); - } - - /** - * Create an instance of {@link CreateIdentityLinkRequest.PEPSData } - * - */ - public CreateIdentityLinkRequest.PEPSData createCreateIdentityLinkRequestPEPSData() { - return new CreateIdentityLinkRequest.PEPSData(); - } - - /** - * Create an instance of {@link CreateIdentityLinkResponse } - * - */ - public CreateIdentityLinkResponse createCreateIdentityLinkResponse() { - return new CreateIdentityLinkResponse(); - } - - /** - * Create an instance of {@link ErrorResponseType } - * - */ - public ErrorResponseType createErrorResponseType() { - return new ErrorResponseType(); - } - - /** - * Create an instance of {@link MISType.Filters } - * - */ - public MISType.Filters createMISTypeFilters() { - return new MISType.Filters(); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/package-info.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/package-info.java deleted file mode 100644 index d242de2fb..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/srzgw/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.util.xsd.srzgw; diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/CanonicalizationMethodType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/CanonicalizationMethodType.java deleted file mode 100644 index 98f97fba8..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/CanonicalizationMethodType.java +++ /dev/null @@ -1,102 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for CanonicalizationMethodType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="CanonicalizationMethodType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <any maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "CanonicalizationMethodType", propOrder = { - "content" -}) -public class CanonicalizationMethodType { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Algorithm", required = true) - @XmlSchemaType(name = "anyURI") - protected String algorithm; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the algorithm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAlgorithm() { - return algorithm; - } - - /** - * Sets the value of the algorithm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAlgorithm(String value) { - this.algorithm = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DSAKeyValueType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DSAKeyValueType.java deleted file mode 100644 index a57f030b0..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DSAKeyValueType.java +++ /dev/null @@ -1,234 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for DSAKeyValueType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="DSAKeyValueType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <sequence minOccurs="0"> - * <element name="P" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="Q" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * </sequence> - * <element name="J" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary" minOccurs="0"/> - * <element name="G" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary" minOccurs="0"/> - * <element name="Y" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <sequence minOccurs="0"> - * <element name="Seed" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="PgenCounter" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * </sequence> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "DSAKeyValueType", propOrder = { - "p", - "q", - "j", - "g", - "y", - "seed", - "pgenCounter" -}) -public class DSAKeyValueType { - - @XmlElement(name = "P") - protected String p; - @XmlElement(name = "Q") - protected String q; - @XmlElement(name = "J") - protected String j; - @XmlElement(name = "G") - protected String g; - @XmlElement(name = "Y", required = true) - protected String y; - @XmlElement(name = "Seed") - protected String seed; - @XmlElement(name = "PgenCounter") - protected String pgenCounter; - - /** - * Gets the value of the p property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getP() { - return p; - } - - /** - * Sets the value of the p property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setP(String value) { - this.p = value; - } - - /** - * Gets the value of the q property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getQ() { - return q; - } - - /** - * Sets the value of the q property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setQ(String value) { - this.q = value; - } - - /** - * Gets the value of the j property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getJ() { - return j; - } - - /** - * Sets the value of the j property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setJ(String value) { - this.j = value; - } - - /** - * Gets the value of the g property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getG() { - return g; - } - - /** - * Sets the value of the g property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setG(String value) { - this.g = value; - } - - /** - * Gets the value of the y property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getY() { - return y; - } - - /** - * Sets the value of the y property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setY(String value) { - this.y = value; - } - - /** - * Gets the value of the seed property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getSeed() { - return seed; - } - - /** - * Sets the value of the seed property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setSeed(String value) { - this.seed = value; - } - - /** - * Gets the value of the pgenCounter property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getPgenCounter() { - return pgenCounter; - } - - /** - * Sets the value of the pgenCounter property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setPgenCounter(String value) { - this.pgenCounter = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DigestMethodType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DigestMethodType.java deleted file mode 100644 index 630d17042..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/DigestMethodType.java +++ /dev/null @@ -1,104 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for DigestMethodType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="DigestMethodType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "DigestMethodType", propOrder = { - "content" -}) -public class DigestMethodType { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Algorithm", required = true) - @XmlSchemaType(name = "anyURI") - protected String algorithm; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the algorithm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAlgorithm() { - return algorithm; - } - - /** - * Sets the value of the algorithm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAlgorithm(String value) { - this.algorithm = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyInfoType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyInfoType.java deleted file mode 100644 index c6845af5e..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyInfoType.java +++ /dev/null @@ -1,135 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * <p>Java class for KeyInfoType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="KeyInfoType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded"> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyName"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyValue"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}RetrievalMethod"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}X509Data"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}PGPData"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}SPKIData"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}MgmtData"/> - * <any processContents='lax' namespace='##other'/> - * </choice> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "KeyInfoType", propOrder = { - "content" -}) -public class KeyInfoType { - - @XmlElementRefs({ - @XmlElementRef(name = "PGPData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "X509Data", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "KeyName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "RetrievalMethod", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "SPKIData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "MgmtData", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "KeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - }) - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link PGPDataType }{@code >} - * {@link JAXBElement }{@code <}{@link X509DataType }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link JAXBElement }{@code <}{@link RetrievalMethodType }{@code >} - * {@link String } - * {@link JAXBElement }{@code <}{@link SPKIDataType }{@code >} - * {@link Element } - * {@link JAXBElement }{@code <}{@link KeyValueType }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyValueType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyValueType.java deleted file mode 100644 index 68693eace..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/KeyValueType.java +++ /dev/null @@ -1,85 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for KeyValueType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="KeyValueType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}DSAKeyValue"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}RSAKeyValue"/> - * <any processContents='lax' namespace='##other'/> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "KeyValueType", propOrder = { - "content" -}) -public class KeyValueType { - - @XmlElementRefs({ - @XmlElementRef(name = "RSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "DSAKeyValue", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - }) - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link RSAKeyValueType }{@code >} - * {@link JAXBElement }{@code <}{@link DSAKeyValueType }{@code >} - * {@link String } - * {@link Element } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ManifestType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ManifestType.java deleted file mode 100644 index 98a7b9a24..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ManifestType.java +++ /dev/null @@ -1,104 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for ManifestType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ManifestType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Reference" maxOccurs="unbounded"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ManifestType", propOrder = { - "reference" -}) -public class ManifestType { - - @XmlElement(name = "Reference", required = true) - protected List<ReferenceType> reference; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the reference property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the reference property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getReference().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link ReferenceType } - * - * - */ - public List<ReferenceType> getReference() { - if (reference == null) { - reference = new ArrayList<ReferenceType>(); - } - return this.reference; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectFactory.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectFactory.java deleted file mode 100644 index 167a019bd..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectFactory.java +++ /dev/null @@ -1,552 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.math.BigInteger; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlElementDecl; -import javax.xml.bind.annotation.XmlRegistry; -import javax.xml.namespace.QName; - - -/** - * This object contains factory methods for each - * Java content interface and Java element interface - * generated in the at.gv.util.xsd.xmldsig package. - * <p>An ObjectFactory allows you to programatically - * construct new instances of the Java representation - * for XML content. The Java representation of XML - * content can consist of schema derived interfaces - * and classes representing the binding of schema - * type definitions, element declarations and model - * groups. Factory methods for each of these are - * provided in this class. - * - */ -@XmlRegistry -public class ObjectFactory { - - private final static QName _SignatureMethodTypeHMACOutputLength_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "HMACOutputLength"); - private final static QName _PGPData_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "PGPData"); - private final static QName _SPKIData_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SPKIData"); - private final static QName _CanonicalizationMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "CanonicalizationMethod"); - private final static QName _Transforms_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Transforms"); - private final static QName _Manifest_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Manifest"); - private final static QName _SignatureMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignatureMethod"); - private final static QName _KeyInfo_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "KeyInfo"); - private final static QName _DigestMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "DigestMethod"); - private final static QName _MgmtData_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "MgmtData"); - private final static QName _SignedInfo_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignedInfo"); - private final static QName _Object_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Object"); - private final static QName _X509Data_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509Data"); - private final static QName _SignatureProperties_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignatureProperties"); - private final static QName _KeyName_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "KeyName"); - private final static QName _RetrievalMethod_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "RetrievalMethod"); - private final static QName _SignatureProperty_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignatureProperty"); - private final static QName _Reference_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Reference"); - private final static QName _RSAKeyValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "RSAKeyValue"); - private final static QName _Signature_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Signature"); - private final static QName _DSAKeyValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "DSAKeyValue"); - private final static QName _SignatureValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SignatureValue"); - private final static QName _Transform_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "Transform"); - private final static QName _DigestValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "DigestValue"); - private final static QName _KeyValue_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "KeyValue"); - private final static QName _PGPDataTypePGPKeyID_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "PGPKeyID"); - private final static QName _PGPDataTypePGPKeyPacket_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "PGPKeyPacket"); - private final static QName _SPKIDataTypeSPKISexp_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "SPKISexp"); - private final static QName _X509DataTypeX509IssuerSerial_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509IssuerSerial"); - private final static QName _X509DataTypeX509Certificate_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509Certificate"); - private final static QName _X509DataTypeX509SKI_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509SKI"); - private final static QName _X509DataTypeX509SubjectName_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509SubjectName"); - private final static QName _X509DataTypeX509CRL_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "X509CRL"); - private final static QName _TransformTypeXPath_QNAME = new QName("http://www.w3.org/2000/09/xmldsig#", "XPath"); - - /** - * Create a new ObjectFactory that can be used to create new instances of schema derived classes for package: at.gv.util.xsd.xmldsig - * - */ - public ObjectFactory() { - } - - /** - * Create an instance of {@link KeyInfoType } - * - */ - public KeyInfoType createKeyInfoType() { - return new KeyInfoType(); - } - - /** - * Create an instance of {@link SignedInfoType } - * - */ - public SignedInfoType createSignedInfoType() { - return new SignedInfoType(); - } - - /** - * Create an instance of {@link RetrievalMethodType } - * - */ - public RetrievalMethodType createRetrievalMethodType() { - return new RetrievalMethodType(); - } - - /** - * Create an instance of {@link DigestMethodType } - * - */ - public DigestMethodType createDigestMethodType() { - return new DigestMethodType(); - } - - /** - * Create an instance of {@link SignatureMethodType } - * - */ - public SignatureMethodType createSignatureMethodType() { - return new SignatureMethodType(); - } - - /** - * Create an instance of {@link SPKIDataType } - * - */ - public SPKIDataType createSPKIDataType() { - return new SPKIDataType(); - } - - /** - * Create an instance of {@link X509DataType } - * - */ - public X509DataType createX509DataType() { - return new X509DataType(); - } - - /** - * Create an instance of {@link PGPDataType } - * - */ - public PGPDataType createPGPDataType() { - return new PGPDataType(); - } - - /** - * Create an instance of {@link SignatureType } - * - */ - public SignatureType createSignatureType() { - return new SignatureType(); - } - - /** - * Create an instance of {@link DSAKeyValueType } - * - */ - public DSAKeyValueType createDSAKeyValueType() { - return new DSAKeyValueType(); - } - - /** - * Create an instance of {@link ManifestType } - * - */ - public ManifestType createManifestType() { - return new ManifestType(); - } - - /** - * Create an instance of {@link SignatureValueType } - * - */ - public SignatureValueType createSignatureValueType() { - return new SignatureValueType(); - } - - /** - * Create an instance of {@link TransformsType } - * - */ - public TransformsType createTransformsType() { - return new TransformsType(); - } - - /** - * Create an instance of {@link RSAKeyValueType } - * - */ - public RSAKeyValueType createRSAKeyValueType() { - return new RSAKeyValueType(); - } - - /** - * Create an instance of {@link TransformType } - * - */ - public TransformType createTransformType() { - return new TransformType(); - } - - /** - * Create an instance of {@link SignaturePropertyType } - * - */ - public SignaturePropertyType createSignaturePropertyType() { - return new SignaturePropertyType(); - } - - /** - * Create an instance of {@link KeyValueType } - * - */ - public KeyValueType createKeyValueType() { - return new KeyValueType(); - } - - /** - * Create an instance of {@link ReferenceType } - * - */ - public ReferenceType createReferenceType() { - return new ReferenceType(); - } - - /** - * Create an instance of {@link CanonicalizationMethodType } - * - */ - public CanonicalizationMethodType createCanonicalizationMethodType() { - return new CanonicalizationMethodType(); - } - - /** - * Create an instance of {@link SignaturePropertiesType } - * - */ - public SignaturePropertiesType createSignaturePropertiesType() { - return new SignaturePropertiesType(); - } - - /** - * Create an instance of {@link ObjectType } - * - */ - public ObjectType createObjectType() { - return new ObjectType(); - } - - /** - * Create an instance of {@link X509IssuerSerialType } - * - */ - public X509IssuerSerialType createX509IssuerSerialType() { - return new X509IssuerSerialType(); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link BigInteger }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "HMACOutputLength", scope = SignatureMethodType.class) - public JAXBElement<BigInteger> createSignatureMethodTypeHMACOutputLength(BigInteger value) { - return new JAXBElement<BigInteger>(_SignatureMethodTypeHMACOutputLength_QNAME, BigInteger.class, SignatureMethodType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link PGPDataType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "PGPData") - public JAXBElement<PGPDataType> createPGPData(PGPDataType value) { - return new JAXBElement<PGPDataType>(_PGPData_QNAME, PGPDataType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SPKIDataType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SPKIData") - public JAXBElement<SPKIDataType> createSPKIData(SPKIDataType value) { - return new JAXBElement<SPKIDataType>(_SPKIData_QNAME, SPKIDataType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link CanonicalizationMethodType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "CanonicalizationMethod") - public JAXBElement<CanonicalizationMethodType> createCanonicalizationMethod(CanonicalizationMethodType value) { - return new JAXBElement<CanonicalizationMethodType>(_CanonicalizationMethod_QNAME, CanonicalizationMethodType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TransformsType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Transforms") - public JAXBElement<TransformsType> createTransforms(TransformsType value) { - return new JAXBElement<TransformsType>(_Transforms_QNAME, TransformsType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ManifestType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Manifest") - public JAXBElement<ManifestType> createManifest(ManifestType value) { - return new JAXBElement<ManifestType>(_Manifest_QNAME, ManifestType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignatureMethodType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignatureMethod") - public JAXBElement<SignatureMethodType> createSignatureMethod(SignatureMethodType value) { - return new JAXBElement<SignatureMethodType>(_SignatureMethod_QNAME, SignatureMethodType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link KeyInfoType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "KeyInfo") - public JAXBElement<KeyInfoType> createKeyInfo(KeyInfoType value) { - return new JAXBElement<KeyInfoType>(_KeyInfo_QNAME, KeyInfoType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link DigestMethodType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "DigestMethod") - public JAXBElement<DigestMethodType> createDigestMethod(DigestMethodType value) { - return new JAXBElement<DigestMethodType>(_DigestMethod_QNAME, DigestMethodType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "MgmtData") - public JAXBElement<String> createMgmtData(String value) { - return new JAXBElement<String>(_MgmtData_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignedInfoType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignedInfo") - public JAXBElement<SignedInfoType> createSignedInfo(SignedInfoType value) { - return new JAXBElement<SignedInfoType>(_SignedInfo_QNAME, SignedInfoType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ObjectType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Object") - public JAXBElement<ObjectType> createObject(ObjectType value) { - return new JAXBElement<ObjectType>(_Object_QNAME, ObjectType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link X509DataType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509Data") - public JAXBElement<X509DataType> createX509Data(X509DataType value) { - return new JAXBElement<X509DataType>(_X509Data_QNAME, X509DataType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignaturePropertiesType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignatureProperties") - public JAXBElement<SignaturePropertiesType> createSignatureProperties(SignaturePropertiesType value) { - return new JAXBElement<SignaturePropertiesType>(_SignatureProperties_QNAME, SignaturePropertiesType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "KeyName") - public JAXBElement<String> createKeyName(String value) { - return new JAXBElement<String>(_KeyName_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link RetrievalMethodType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "RetrievalMethod") - public JAXBElement<RetrievalMethodType> createRetrievalMethod(RetrievalMethodType value) { - return new JAXBElement<RetrievalMethodType>(_RetrievalMethod_QNAME, RetrievalMethodType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignaturePropertyType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignatureProperty") - public JAXBElement<SignaturePropertyType> createSignatureProperty(SignaturePropertyType value) { - return new JAXBElement<SignaturePropertyType>(_SignatureProperty_QNAME, SignaturePropertyType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link ReferenceType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Reference") - public JAXBElement<ReferenceType> createReference(ReferenceType value) { - return new JAXBElement<ReferenceType>(_Reference_QNAME, ReferenceType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link RSAKeyValueType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "RSAKeyValue") - public JAXBElement<RSAKeyValueType> createRSAKeyValue(RSAKeyValueType value) { - return new JAXBElement<RSAKeyValueType>(_RSAKeyValue_QNAME, RSAKeyValueType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignatureType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Signature") - public JAXBElement<SignatureType> createSignature(SignatureType value) { - return new JAXBElement<SignatureType>(_Signature_QNAME, SignatureType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link DSAKeyValueType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "DSAKeyValue") - public JAXBElement<DSAKeyValueType> createDSAKeyValue(DSAKeyValueType value) { - return new JAXBElement<DSAKeyValueType>(_DSAKeyValue_QNAME, DSAKeyValueType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link SignatureValueType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SignatureValue") - public JAXBElement<SignatureValueType> createSignatureValue(SignatureValueType value) { - return new JAXBElement<SignatureValueType>(_SignatureValue_QNAME, SignatureValueType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link TransformType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "Transform") - public JAXBElement<TransformType> createTransform(TransformType value) { - return new JAXBElement<TransformType>(_Transform_QNAME, TransformType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "DigestValue") - public JAXBElement<String> createDigestValue(String value) { - return new JAXBElement<String>(_DigestValue_QNAME, String.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link KeyValueType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "KeyValue") - public JAXBElement<KeyValueType> createKeyValue(KeyValueType value) { - return new JAXBElement<KeyValueType>(_KeyValue_QNAME, KeyValueType.class, null, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "PGPKeyID", scope = PGPDataType.class) - public JAXBElement<String> createPGPDataTypePGPKeyID(String value) { - return new JAXBElement<String>(_PGPDataTypePGPKeyID_QNAME, String.class, PGPDataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "PGPKeyPacket", scope = PGPDataType.class) - public JAXBElement<String> createPGPDataTypePGPKeyPacket(String value) { - return new JAXBElement<String>(_PGPDataTypePGPKeyPacket_QNAME, String.class, PGPDataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "SPKISexp", scope = SPKIDataType.class) - public JAXBElement<String> createSPKIDataTypeSPKISexp(String value) { - return new JAXBElement<String>(_SPKIDataTypeSPKISexp_QNAME, String.class, SPKIDataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link X509IssuerSerialType }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509IssuerSerial", scope = X509DataType.class) - public JAXBElement<X509IssuerSerialType> createX509DataTypeX509IssuerSerial(X509IssuerSerialType value) { - return new JAXBElement<X509IssuerSerialType>(_X509DataTypeX509IssuerSerial_QNAME, X509IssuerSerialType.class, X509DataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509Certificate", scope = X509DataType.class) - public JAXBElement<String> createX509DataTypeX509Certificate(String value) { - return new JAXBElement<String>(_X509DataTypeX509Certificate_QNAME, String.class, X509DataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509SKI", scope = X509DataType.class) - public JAXBElement<String> createX509DataTypeX509SKI(String value) { - return new JAXBElement<String>(_X509DataTypeX509SKI_QNAME, String.class, X509DataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509SubjectName", scope = X509DataType.class) - public JAXBElement<String> createX509DataTypeX509SubjectName(String value) { - return new JAXBElement<String>(_X509DataTypeX509SubjectName_QNAME, String.class, X509DataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "X509CRL", scope = X509DataType.class) - public JAXBElement<String> createX509DataTypeX509CRL(String value) { - return new JAXBElement<String>(_X509DataTypeX509CRL_QNAME, String.class, X509DataType.class, value); - } - - /** - * Create an instance of {@link JAXBElement }{@code <}{@link String }{@code >}} - * - */ - @XmlElementDecl(namespace = "http://www.w3.org/2000/09/xmldsig#", name = "XPath", scope = TransformType.class) - public JAXBElement<String> createTransformTypeXPath(String value) { - return new JAXBElement<String>(_TransformTypeXPath_QNAME, String.class, TransformType.class, value); - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectType.java deleted file mode 100644 index 7e60f82ab..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ObjectType.java +++ /dev/null @@ -1,164 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * <p>Java class for ObjectType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ObjectType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax'/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * <attribute name="MimeType" type="{http://www.w3.org/2001/XMLSchema}string" /> - * <attribute name="Encoding" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ObjectType", propOrder = { - "content" -}) -public class ObjectType { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAttribute(name = "MimeType") - protected String mimeType; - @XmlAttribute(name = "Encoding") - @XmlSchemaType(name = "anyURI") - protected String encoding; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the mimeType property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getMimeType() { - return mimeType; - } - - /** - * Sets the value of the mimeType property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setMimeType(String value) { - this.mimeType = value; - } - - /** - * Gets the value of the encoding property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getEncoding() { - return encoding; - } - - /** - * Sets the value of the encoding property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setEncoding(String value) { - this.encoding = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/PGPDataType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/PGPDataType.java deleted file mode 100644 index add2d8886..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/PGPDataType.java +++ /dev/null @@ -1,98 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for PGPDataType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="PGPDataType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice> - * <sequence> - * <element name="PGPKeyID" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="PGPKeyPacket" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary" minOccurs="0"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <sequence> - * <element name="PGPKeyPacket" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <any processContents='lax' namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * </choice> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "PGPDataType", propOrder = { - "content" -}) -public class PGPDataType { - - @XmlElementRefs({ - @XmlElementRef(name = "PGPKeyPacket", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "PGPKeyID", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - }) - @XmlAnyElement(lax = true) - protected List<Object> content; - - /** - * Gets the rest of the content model. - * - * <p> - * You are getting this "catch-all" property because of the following reason: - * The field name "PGPKeyPacket" is used by two different parts of a schema. See: - * line 184 of file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/W3C-XMLDSig.xsd - * line 180 of file:/D:/Projekte/svn/online-vollmachten/egovutils/src/main/resources/wsdl/W3C-XMLDSig.xsd - * <p> - * To get rid of this property, apply a property customization to one - * of both of the following declarations to change their names: - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RSAKeyValueType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RSAKeyValueType.java deleted file mode 100644 index a03ee7b8b..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RSAKeyValueType.java +++ /dev/null @@ -1,90 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for RSAKeyValueType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="RSAKeyValueType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Modulus" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="Exponent" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "RSAKeyValueType", propOrder = { - "modulus", - "exponent" -}) -public class RSAKeyValueType { - - @XmlElement(name = "Modulus", required = true) - protected String modulus; - @XmlElement(name = "Exponent", required = true) - protected String exponent; - - /** - * Gets the value of the modulus property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getModulus() { - return modulus; - } - - /** - * Sets the value of the modulus property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setModulus(String value) { - this.modulus = value; - } - - /** - * Gets the value of the exponent property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getExponent() { - return exponent; - } - - /** - * Sets the value of the exponent property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setExponent(String value) { - this.exponent = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ReferenceType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ReferenceType.java deleted file mode 100644 index faacd02ab..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/ReferenceType.java +++ /dev/null @@ -1,209 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for ReferenceType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="ReferenceType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Transforms" minOccurs="0"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}DigestMethod"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}DigestValue"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * <attribute name="URI" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "ReferenceType", propOrder = { - "transforms", - "digestMethod", - "digestValue" -}) -public class ReferenceType { - - @XmlElement(name = "Transforms") - protected TransformsType transforms; - @XmlElement(name = "DigestMethod", required = true) - protected DigestMethodType digestMethod; - @XmlElement(name = "DigestValue", required = true) - protected String digestValue; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - @XmlAttribute(name = "URI") - @XmlSchemaType(name = "anyURI") - protected String uri; - @XmlAttribute(name = "Type") - @XmlSchemaType(name = "anyURI") - protected String type; - - /** - * Gets the value of the transforms property. - * - * @return - * possible object is - * {@link TransformsType } - * - */ - public TransformsType getTransforms() { - return transforms; - } - - /** - * Sets the value of the transforms property. - * - * @param value - * allowed object is - * {@link TransformsType } - * - */ - public void setTransforms(TransformsType value) { - this.transforms = value; - } - - /** - * Gets the value of the digestMethod property. - * - * @return - * possible object is - * {@link DigestMethodType } - * - */ - public DigestMethodType getDigestMethod() { - return digestMethod; - } - - /** - * Sets the value of the digestMethod property. - * - * @param value - * allowed object is - * {@link DigestMethodType } - * - */ - public void setDigestMethod(DigestMethodType value) { - this.digestMethod = value; - } - - /** - * Gets the value of the digestValue property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getDigestValue() { - return digestValue; - } - - /** - * Sets the value of the digestValue property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setDigestValue(String value) { - this.digestValue = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - - /** - * Gets the value of the uri property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getURI() { - return uri; - } - - /** - * Sets the value of the uri property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setURI(String value) { - this.uri = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RetrievalMethodType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RetrievalMethodType.java deleted file mode 100644 index 8de9a570f..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/RetrievalMethodType.java +++ /dev/null @@ -1,120 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for RetrievalMethodType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="RetrievalMethodType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="Transforms" type="{http://www.w3.org/2000/09/xmldsig#}TransformsType" minOccurs="0"/> - * </sequence> - * <attribute name="URI" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="Type" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "RetrievalMethodType", propOrder = { - "transforms" -}) -public class RetrievalMethodType { - - @XmlElement(name = "Transforms") - protected TransformsType transforms; - @XmlAttribute(name = "URI") - @XmlSchemaType(name = "anyURI") - protected String uri; - @XmlAttribute(name = "Type") - @XmlSchemaType(name = "anyURI") - protected String type; - - /** - * Gets the value of the transforms property. - * - * @return - * possible object is - * {@link TransformsType } - * - */ - public TransformsType getTransforms() { - return transforms; - } - - /** - * Sets the value of the transforms property. - * - * @param value - * allowed object is - * {@link TransformsType } - * - */ - public void setTransforms(TransformsType value) { - this.transforms = value; - } - - /** - * Gets the value of the uri property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getURI() { - return uri; - } - - /** - * Sets the value of the uri property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setURI(String value) { - this.uri = value; - } - - /** - * Gets the value of the type property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getType() { - return type; - } - - /** - * Sets the value of the type property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setType(String value) { - this.type = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SPKIDataType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SPKIDataType.java deleted file mode 100644 index e6a187e9b..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SPKIDataType.java +++ /dev/null @@ -1,76 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for SPKIDataType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SPKIDataType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded"> - * <element name="SPKISexp" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <any processContents='lax' namespace='##other' minOccurs="0"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SPKIDataType", propOrder = { - "spkiSexpAndAny" -}) -public class SPKIDataType { - - @XmlElementRef(name = "SPKISexp", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - @XmlAnyElement(lax = true) - protected List<Object> spkiSexpAndAny; - - /** - * Gets the value of the spkiSexpAndAny property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the spkiSexpAndAny property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getSPKISexpAndAny().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link Object } - * - * - */ - public List<Object> getSPKISexpAndAny() { - if (spkiSexpAndAny == null) { - spkiSexpAndAny = new ArrayList<Object>(); - } - return this.spkiSexpAndAny; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureMethodType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureMethodType.java deleted file mode 100644 index 1a463591b..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureMethodType.java +++ /dev/null @@ -1,108 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.math.BigInteger; -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for SignatureMethodType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignatureMethodType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="HMACOutputLength" type="{http://www.w3.org/2000/09/xmldsig#}HMACOutputLengthType" minOccurs="0"/> - * <any namespace='##other' maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignatureMethodType", propOrder = { - "content" -}) -public class SignatureMethodType { - - @XmlElementRef(name = "HMACOutputLength", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Algorithm", required = true) - @XmlSchemaType(name = "anyURI") - protected String algorithm; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link BigInteger }{@code >} - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the algorithm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAlgorithm() { - return algorithm; - } - - /** - * Sets the value of the algorithm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAlgorithm(String value) { - this.algorithm = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertiesType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertiesType.java deleted file mode 100644 index d70a3dfae..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertiesType.java +++ /dev/null @@ -1,104 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for SignaturePropertiesType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignaturePropertiesType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}SignatureProperty" maxOccurs="unbounded"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignaturePropertiesType", propOrder = { - "signatureProperty" -}) -public class SignaturePropertiesType { - - @XmlElement(name = "SignatureProperty", required = true) - protected List<SignaturePropertyType> signatureProperty; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the signatureProperty property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the signatureProperty property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getSignatureProperty().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link SignaturePropertyType } - * - * - */ - public List<SignaturePropertyType> getSignatureProperty() { - if (signatureProperty == null) { - signatureProperty = new ArrayList<SignaturePropertyType>(); - } - return this.signatureProperty; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertyType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertyType.java deleted file mode 100644 index 23b7c84da..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignaturePropertyType.java +++ /dev/null @@ -1,137 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; -import org.w3c.dom.Element; - - -/** - * <p>Java class for SignaturePropertyType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignaturePropertyType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded"> - * <any processContents='lax' namespace='##other'/> - * </choice> - * <attribute name="Target" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignaturePropertyType", propOrder = { - "content" -}) -public class SignaturePropertyType { - - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Target", required = true) - @XmlSchemaType(name = "anyURI") - protected String target; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link Element } - * {@link String } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the target property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getTarget() { - return target; - } - - /** - * Sets the value of the target property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setTarget(String value) { - this.target = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureType.java deleted file mode 100644 index 49db57941..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureType.java +++ /dev/null @@ -1,188 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for SignatureType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignatureType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}SignedInfo"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}SignatureValue"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}KeyInfo" minOccurs="0"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Object" maxOccurs="unbounded" minOccurs="0"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignatureType", propOrder = { - "signedInfo", - "signatureValue", - "keyInfo", - "object" -}) -public class SignatureType { - - @XmlElement(name = "SignedInfo", required = true) - protected SignedInfoType signedInfo; - @XmlElement(name = "SignatureValue", required = true) - protected SignatureValueType signatureValue; - @XmlElement(name = "KeyInfo") - protected KeyInfoType keyInfo; - @XmlElement(name = "Object") - protected List<ObjectType> object; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the signedInfo property. - * - * @return - * possible object is - * {@link SignedInfoType } - * - */ - public SignedInfoType getSignedInfo() { - return signedInfo; - } - - /** - * Sets the value of the signedInfo property. - * - * @param value - * allowed object is - * {@link SignedInfoType } - * - */ - public void setSignedInfo(SignedInfoType value) { - this.signedInfo = value; - } - - /** - * Gets the value of the signatureValue property. - * - * @return - * possible object is - * {@link SignatureValueType } - * - */ - public SignatureValueType getSignatureValue() { - return signatureValue; - } - - /** - * Sets the value of the signatureValue property. - * - * @param value - * allowed object is - * {@link SignatureValueType } - * - */ - public void setSignatureValue(SignatureValueType value) { - this.signatureValue = value; - } - - /** - * Gets the value of the keyInfo property. - * - * @return - * possible object is - * {@link KeyInfoType } - * - */ - public KeyInfoType getKeyInfo() { - return keyInfo; - } - - /** - * Sets the value of the keyInfo property. - * - * @param value - * allowed object is - * {@link KeyInfoType } - * - */ - public void setKeyInfo(KeyInfoType value) { - this.keyInfo = value; - } - - /** - * Gets the value of the object property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the object property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getObject().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link ObjectType } - * - * - */ - public List<ObjectType> getObject() { - if (object == null) { - object = new ArrayList<ObjectType>(); - } - return this.object; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureValueType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureValueType.java deleted file mode 100644 index 10c612080..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignatureValueType.java +++ /dev/null @@ -1,94 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.XmlValue; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for SignatureValueType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignatureValueType"> - * <simpleContent> - * <extension base="<http://www.w3.org/2000/09/xmldsig#>CryptoBinary"> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </extension> - * </simpleContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignatureValueType", propOrder = { - "value" -}) -public class SignatureValueType { - - @XmlValue - protected String value; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the value property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getValue() { - return value; - } - - /** - * Sets the value of the value property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setValue(String value) { - this.value = value; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignedInfoType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignedInfoType.java deleted file mode 100644 index 140ed1b40..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/SignedInfoType.java +++ /dev/null @@ -1,160 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlID; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import javax.xml.bind.annotation.adapters.CollapsedStringAdapter; -import javax.xml.bind.annotation.adapters.XmlJavaTypeAdapter; - - -/** - * <p>Java class for SignedInfoType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="SignedInfoType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}CanonicalizationMethod"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}SignatureMethod"/> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Reference" maxOccurs="unbounded"/> - * </sequence> - * <attribute name="Id" type="{http://www.w3.org/2001/XMLSchema}ID" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "SignedInfoType", propOrder = { - "canonicalizationMethod", - "signatureMethod", - "reference" -}) -public class SignedInfoType { - - @XmlElement(name = "CanonicalizationMethod", required = true) - protected CanonicalizationMethodType canonicalizationMethod; - @XmlElement(name = "SignatureMethod", required = true) - protected SignatureMethodType signatureMethod; - @XmlElement(name = "Reference", required = true) - protected List<ReferenceType> reference; - @XmlAttribute(name = "Id") - @XmlJavaTypeAdapter(CollapsedStringAdapter.class) - @XmlID - @XmlSchemaType(name = "ID") - protected String id; - - /** - * Gets the value of the canonicalizationMethod property. - * - * @return - * possible object is - * {@link CanonicalizationMethodType } - * - */ - public CanonicalizationMethodType getCanonicalizationMethod() { - return canonicalizationMethod; - } - - /** - * Sets the value of the canonicalizationMethod property. - * - * @param value - * allowed object is - * {@link CanonicalizationMethodType } - * - */ - public void setCanonicalizationMethod(CanonicalizationMethodType value) { - this.canonicalizationMethod = value; - } - - /** - * Gets the value of the signatureMethod property. - * - * @return - * possible object is - * {@link SignatureMethodType } - * - */ - public SignatureMethodType getSignatureMethod() { - return signatureMethod; - } - - /** - * Sets the value of the signatureMethod property. - * - * @param value - * allowed object is - * {@link SignatureMethodType } - * - */ - public void setSignatureMethod(SignatureMethodType value) { - this.signatureMethod = value; - } - - /** - * Gets the value of the reference property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the reference property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getReference().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link ReferenceType } - * - * - */ - public List<ReferenceType> getReference() { - if (reference == null) { - reference = new ArrayList<ReferenceType>(); - } - return this.reference; - } - - /** - * Gets the value of the id property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getId() { - return id; - } - - /** - * Sets the value of the id property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setId(String value) { - this.id = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformType.java deleted file mode 100644 index e92465a4c..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformType.java +++ /dev/null @@ -1,109 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlAttribute; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlMixed; -import javax.xml.bind.annotation.XmlSchemaType; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for TransformType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="TransformType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <choice maxOccurs="unbounded" minOccurs="0"> - * <any processContents='lax' namespace='##other'/> - * <element name="XPath" type="{http://www.w3.org/2001/XMLSchema}string"/> - * </choice> - * <attribute name="Algorithm" use="required" type="{http://www.w3.org/2001/XMLSchema}anyURI" /> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "TransformType", propOrder = { - "content" -}) -public class TransformType { - - @XmlElementRef(name = "XPath", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - @XmlMixed - @XmlAnyElement(lax = true) - protected List<Object> content; - @XmlAttribute(name = "Algorithm", required = true) - @XmlSchemaType(name = "anyURI") - protected String algorithm; - - /** - * Gets the value of the content property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the content property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getContent().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link String } - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link Object } - * - * - */ - public List<Object> getContent() { - if (content == null) { - content = new ArrayList<Object>(); - } - return this.content; - } - - /** - * Gets the value of the algorithm property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getAlgorithm() { - return algorithm; - } - - /** - * Sets the value of the algorithm property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setAlgorithm(String value) { - this.algorithm = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformsType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformsType.java deleted file mode 100644 index 9b95a61fc..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/TransformsType.java +++ /dev/null @@ -1,69 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for TransformsType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="TransformsType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element ref="{http://www.w3.org/2000/09/xmldsig#}Transform" maxOccurs="unbounded"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "TransformsType", propOrder = { - "transform" -}) -public class TransformsType { - - @XmlElement(name = "Transform", required = true) - protected List<TransformType> transform; - - /** - * Gets the value of the transform property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the transform property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getTransform().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link TransformType } - * - * - */ - public List<TransformType> getTransform() { - if (transform == null) { - transform = new ArrayList<TransformType>(); - } - return this.transform; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509DataType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509DataType.java deleted file mode 100644 index c70b72293..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509DataType.java +++ /dev/null @@ -1,93 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.util.ArrayList; -import java.util.List; -import javax.xml.bind.JAXBElement; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlAnyElement; -import javax.xml.bind.annotation.XmlElementRef; -import javax.xml.bind.annotation.XmlElementRefs; -import javax.xml.bind.annotation.XmlType; -import org.w3c.dom.Element; - - -/** - * <p>Java class for X509DataType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="X509DataType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence maxOccurs="unbounded"> - * <choice> - * <element name="X509IssuerSerial" type="{http://www.w3.org/2000/09/xmldsig#}X509IssuerSerialType"/> - * <element name="X509SKI" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="X509SubjectName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="X509Certificate" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <element name="X509CRL" type="{http://www.w3.org/2000/09/xmldsig#}CryptoBinary"/> - * <any processContents='lax' namespace='##other'/> - * </choice> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "X509DataType", propOrder = { - "x509IssuerSerialOrX509SKIOrX509SubjectName" -}) -public class X509DataType { - - @XmlElementRefs({ - @XmlElementRef(name = "X509SKI", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "X509CRL", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "X509Certificate", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "X509IssuerSerial", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class), - @XmlElementRef(name = "X509SubjectName", namespace = "http://www.w3.org/2000/09/xmldsig#", type = JAXBElement.class) - }) - @XmlAnyElement(lax = true) - protected List<Object> x509IssuerSerialOrX509SKIOrX509SubjectName; - - /** - * Gets the value of the x509IssuerSerialOrX509SKIOrX509SubjectName property. - * - * <p> - * This accessor method returns a reference to the live list, - * not a snapshot. Therefore any modification you make to the - * returned list will be present inside the JAXB object. - * This is why there is not a <CODE>set</CODE> method for the x509IssuerSerialOrX509SKIOrX509SubjectName property. - * - * <p> - * For example, to add a new item, do as follows: - * <pre> - * getX509IssuerSerialOrX509SKIOrX509SubjectName().add(newItem); - * </pre> - * - * - * <p> - * Objects of the following type(s) are allowed in the list - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link JAXBElement }{@code <}{@link X509IssuerSerialType }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Element } - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link JAXBElement }{@code <}{@link String }{@code >} - * {@link Object } - * - * - */ - public List<Object> getX509IssuerSerialOrX509SKIOrX509SubjectName() { - if (x509IssuerSerialOrX509SKIOrX509SubjectName == null) { - x509IssuerSerialOrX509SKIOrX509SubjectName = new ArrayList<Object>(); - } - return this.x509IssuerSerialOrX509SKIOrX509SubjectName; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509IssuerSerialType.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509IssuerSerialType.java deleted file mode 100644 index b3ef62268..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/X509IssuerSerialType.java +++ /dev/null @@ -1,91 +0,0 @@ - -package at.gv.util.xsd.xmldsig; - -import java.math.BigInteger; -import javax.xml.bind.annotation.XmlAccessType; -import javax.xml.bind.annotation.XmlAccessorType; -import javax.xml.bind.annotation.XmlElement; -import javax.xml.bind.annotation.XmlType; - - -/** - * <p>Java class for X509IssuerSerialType complex type. - * - * <p>The following schema fragment specifies the expected content contained within this class. - * - * <pre> - * <complexType name="X509IssuerSerialType"> - * <complexContent> - * <restriction base="{http://www.w3.org/2001/XMLSchema}anyType"> - * <sequence> - * <element name="X509IssuerName" type="{http://www.w3.org/2001/XMLSchema}string"/> - * <element name="X509SerialNumber" type="{http://www.w3.org/2001/XMLSchema}integer"/> - * </sequence> - * </restriction> - * </complexContent> - * </complexType> - * </pre> - * - * - */ -@XmlAccessorType(XmlAccessType.FIELD) -@XmlType(name = "X509IssuerSerialType", propOrder = { - "x509IssuerName", - "x509SerialNumber" -}) -public class X509IssuerSerialType { - - @XmlElement(name = "X509IssuerName", required = true) - protected String x509IssuerName; - @XmlElement(name = "X509SerialNumber", required = true) - protected BigInteger x509SerialNumber; - - /** - * Gets the value of the x509IssuerName property. - * - * @return - * possible object is - * {@link String } - * - */ - public String getX509IssuerName() { - return x509IssuerName; - } - - /** - * Sets the value of the x509IssuerName property. - * - * @param value - * allowed object is - * {@link String } - * - */ - public void setX509IssuerName(String value) { - this.x509IssuerName = value; - } - - /** - * Gets the value of the x509SerialNumber property. - * - * @return - * possible object is - * {@link BigInteger } - * - */ - public BigInteger getX509SerialNumber() { - return x509SerialNumber; - } - - /** - * Sets the value of the x509SerialNumber property. - * - * @param value - * allowed object is - * {@link BigInteger } - * - */ - public void setX509SerialNumber(BigInteger value) { - this.x509SerialNumber = value; - } - -} diff --git a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/package-info.java b/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/package-info.java deleted file mode 100644 index e4ae44053..000000000 --- a/id/server/idserverlib/src/main/java/at/gv/util/xsd/xmldsig/package-info.java +++ /dev/null @@ -1,2 +0,0 @@ -@javax.xml.bind.annotation.XmlSchema(namespace = "http://www.w3.org/2000/09/xmldsig#", elementFormDefault = javax.xml.bind.annotation.XmlNsForm.QUALIFIED) -package at.gv.util.xsd.xmldsig; diff --git a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties index 9bfa14a7c..8fda4566c 100644 --- a/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties +++ b/id/server/idserverlib/src/main/resources/resources/properties/id_messages_de.properties @@ -44,6 +44,7 @@ auth.23=Das BKU-Selektion Template entspricht nicht der Spezifikation von MOA-ID auth.24=Das Send-Assertion Template entspricht nicht der Spezifikation von MOA-ID 2.x.
auth.25=Fehler beim validieren der SZR-Gateway Response.
auth.26=SessionID unbekannt.
+auth.27=Federated authentication FAILED.
init.00=MOA ID Authentisierung wurde erfolgreich gestartet
init.01=Fehler beim Aktivieren des IAIK-JCE/JSSE/JDK1.3 Workaround\: SSL ist m\u00F6glicherweise nicht verf\u00FCgbar
@@ -72,7 +73,8 @@ config.17=Fehler beim initialisieren von Hibernate config.18=Keine MOA-ID 2.x Konfiguration gefunden.
config.19=Kein Schl\u00FCssel f\u00FCr die Resignierung der Personenbindung gefunden.
config.20=Umgebungsvariable "moa.id.proxy.configuration" nicht gesetzt
-config.21=F\u00FCr diese Online Applikation sind keine Vollmachtsprofile hinterlegt.
+config.21=F\u00FCr diese Online Applikation sind keine Vollmachtsprofile hinterlegt.
+config.22=F\u00FCr den Interfederation-Gateway mit der ID {0} ist kein Endpunkt zur Weiterleitung konfiguriert.
parser.00=Leichter Fehler beim Parsen: {0}
parser.01=Fehler beim Parsen: {0}
@@ -226,6 +228,7 @@ stork.17=Fehler beim Einholen der Zustimmung f\uFFFDr Attribut\u00FCbertragung d stork.18=STORK-SAML Engine konnte nicht initialisiert werden.
stork.19=Das erforderliche Attribut ist f\u00FCr naturliche Personen nicht vorhanden\: {0}
stork.20=Fehler bei der Datenkonversion - eingegebens Datum fehlerhaft
+stork.21=Der angeforderte QAA-level {0} ist h\u00F6her als der QAA-level der Authentifizierung {1}
pvp2.00={0} ist kein gueltiger consumer service index
pvp2.01=Fehler beim kodieren der PVP2 Antwort
diff --git a/id/server/idserverlib/src/main/resources/resources/properties/protocol_response_statuscodes_de.properties b/id/server/idserverlib/src/main/resources/resources/properties/protocol_response_statuscodes_de.properties index 3f9cf2f1d..eeacdc627 100644 --- a/id/server/idserverlib/src/main/resources/resources/properties/protocol_response_statuscodes_de.properties +++ b/id/server/idserverlib/src/main/resources/resources/properties/protocol_response_statuscodes_de.properties @@ -24,6 +24,7 @@ auth.23=9000 auth.24=9001 auth.25=1109 auth.26=1100 +auth.27=4401 init.00=9199 init.01=9199 @@ -52,6 +53,7 @@ config.18=9199 config.19=9199 config.20=9199 config.21=9006 +config.22=9008 parser.00=1101 parser.01=1101 @@ -170,6 +172,7 @@ stork.17=1203 stork.18=9004 stork.19=1203 stork.20=1204 +stork.21=1205 pvp2.01=6100 pvp2.06=6100 diff --git a/id/server/idserverlib/src/main/resources/resources/properties/pvp-stork_mapping.properties b/id/server/idserverlib/src/main/resources/resources/properties/pvp-stork_mapping.properties new file mode 100644 index 000000000..63745f826 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/properties/pvp-stork_mapping.properties @@ -0,0 +1,9 @@ +##PVP role mapping +viewer=CIRCABC/viewer +CIRCABC-viewer=CIRCABC/viewer + +##PVP SecClass mapping +secclass/0=http://www.stork.gov.eu/1.0/citizenQAALevel/1 +secclass/0-1=http://www.stork.gov.eu/1.0/citizenQAALevel/2 +secclass/0-2=http://www.stork.gov.eu/1.0/citizenQAALevel/3 +secclass/0-3=http://www.stork.gov.eu/1.0/citizenQAALevel/4
\ No newline at end of file diff --git a/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html b/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html index ef070b8eb..7e2ddc491 100644 --- a/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html +++ b/id/server/idserverlib/src/main/resources/resources/templates/loginFormFull.html @@ -720,7 +720,7 @@ } } function onChangeChecks() { - if (top.innerWidth < 650) { + if (self.innerWidth < 650) { document.getElementById("moaidform").setAttribute("target","_parent"); } else { document.getElementById("moaidform").removeAttribute("target"); diff --git a/id/server/idserverlib/src/main/resources/resources/templates/saml2-post-binding-moa.vm b/id/server/idserverlib/src/main/resources/resources/templates/saml2-post-binding-moa.vm index cac0bda76..8beb601c6 100644 --- a/id/server/idserverlib/src/main/resources/resources/templates/saml2-post-binding-moa.vm +++ b/id/server/idserverlib/src/main/resources/resources/templates/saml2-post-binding-moa.vm @@ -18,7 +18,7 @@ </p> </noscript> - <form action="${action}" method="post" target="_parent"> + <form action="${action}" method="post" target="_top"> <div> #if($RelayState)<input type="hidden" name="RelayState" value="${RelayState}"/>#end diff --git a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/W3C-XMLDSig.xsd b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/W3C-XMLDSig.xsd new file mode 100644 index 000000000..522cae082 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/W3C-XMLDSig.xsd @@ -0,0 +1,265 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- PUBLIC "-//W3C//DTD XMLSchema 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd" + --> +<!-- Schema for XML Signatures + http://www.w3.org/2000/09/xmldsig# + $Revision: 1.1 $ on $Date: 2002/11/11 16:24:27 $ by $Author: Linauer $ + + Copyright 2001 The Internet Society and W3C (Massachusetts Institute + of Technology, Institut National de Recherche en Informatique et en + Automatique, Keio University). All Rights Reserved. + http://www.w3.org/Consortium/Legal/ + + This document is governed by the W3C Software License [1] as described + in the FAQ [2]. + + [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720 + [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD +--> +<schema targetNamespace="http://www.w3.org/2000/09/xmldsig#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" version="0.1"> + <!-- Basic Types Defined for Signatures --> + <!-- modified to ensure that whiteSpace is preserved +<simpleType name="CryptoBinary"> + <restriction base="base64Binary"> + </restriction> +</simpleType> + --> + <simpleType name="CryptoBinary"> + <restriction base="string"> + <whiteSpace value="preserve"/> + <pattern value="[A-Za-z0-9\+/=\n\r\t ]*"/> + </restriction> + </simpleType> + <!-- Start Signature --> + <element name="Signature" type="ds:SignatureType"/> + <complexType name="SignatureType"> + <sequence> + <element ref="ds:SignedInfo"/> + <element ref="ds:SignatureValue"/> + <element ref="ds:KeyInfo" minOccurs="0"/> + <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <element name="SignatureValue" type="ds:SignatureValueType"/> + <complexType name="SignatureValueType"> + <simpleContent> + <extension base="ds:CryptoBinary"> + <attribute name="Id" type="ID" use="optional"/> + </extension> + </simpleContent> + </complexType> + <!-- Start SignedInfo --> + <element name="SignedInfo" type="ds:SignedInfoType"/> + <complexType name="SignedInfoType"> + <sequence> + <element ref="ds:CanonicalizationMethod"/> + <element ref="ds:SignatureMethod"/> + <element ref="ds:Reference" maxOccurs="unbounded"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/> + <complexType name="CanonicalizationMethodType" mixed="true"> + <sequence> + <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/> + <!-- (0,unbounded) elements from (1,1) namespace --> + </sequence> + <attribute name="Algorithm" type="anyURI" use="required"/> + </complexType> + <element name="SignatureMethod" type="ds:SignatureMethodType"/> + <complexType name="SignatureMethodType" mixed="true"> + <sequence> + <element name="HMACOutputLength" type="ds:HMACOutputLengthType" minOccurs="0"/> + <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/> + <!-- (0,unbounded) elements from (1,1) external namespace --> + </sequence> + <attribute name="Algorithm" type="anyURI" use="required"/> + </complexType> + <!-- Start Reference --> + <element name="Reference" type="ds:ReferenceType"/> + <complexType name="ReferenceType"> + <sequence> + <element ref="ds:Transforms" minOccurs="0"/> + <element ref="ds:DigestMethod"/> + <element ref="ds:DigestValue"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + <attribute name="URI" type="anyURI" use="optional"/> + <attribute name="Type" type="anyURI" use="optional"/> + </complexType> + <element name="Transforms" type="ds:TransformsType"/> + <complexType name="TransformsType"> + <sequence> + <element ref="ds:Transform" maxOccurs="unbounded"/> + </sequence> + </complexType> + <element name="Transform" type="ds:TransformType"/> + <complexType name="TransformType" mixed="true"> + <choice minOccurs="0" maxOccurs="unbounded"> + <any namespace="##other" processContents="lax"/> + <element name="XPath" type="string"/> + <!-- (1,1) elements from (0,unbounded) namespaces --> + </choice> + <attribute name="Algorithm" type="anyURI" use="required"/> + </complexType> + <!-- End Reference --> + <element name="DigestMethod" type="ds:DigestMethodType"/> + <complexType name="DigestMethodType" mixed="true"> + <sequence> + <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <attribute name="Algorithm" type="anyURI" use="required"/> + </complexType> + <element name="DigestValue" type="ds:DigestValueType"/> + <simpleType name="DigestValueType"> + <restriction base="ds:CryptoBinary"/> + </simpleType> + <!-- End SignedInfo --> + <!-- Start KeyInfo --> + <element name="KeyInfo" type="ds:KeyInfoType"/> + <complexType name="KeyInfoType" mixed="true"> + <choice maxOccurs="unbounded"> + <element ref="ds:KeyName"/> + <element ref="ds:KeyValue"/> + <element ref="ds:RetrievalMethod"/> + <element ref="ds:X509Data"/> + <element ref="ds:PGPData"/> + <element ref="ds:SPKIData"/> + <element ref="ds:MgmtData"/> + <any namespace="##other" processContents="lax"/> + <!-- (1,1) elements from (0,unbounded) namespaces --> + </choice> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <element name="KeyName" type="string"/> + <element name="MgmtData" type="string"/> + <element name="KeyValue" type="ds:KeyValueType"/> + <complexType name="KeyValueType" mixed="true"> + <choice> + <element ref="ds:DSAKeyValue"/> + <element ref="ds:RSAKeyValue"/> + <any namespace="##other" processContents="lax"/> + </choice> + </complexType> + <element name="RetrievalMethod" type="ds:RetrievalMethodType"/> + <complexType name="RetrievalMethodType"> + <sequence> + <element name="Transforms" type="ds:TransformsType" minOccurs="0"/> + </sequence> + <attribute name="URI" type="anyURI"/> + <attribute name="Type" type="anyURI" use="optional"/> + </complexType> + <!-- Start X509Data --> + <element name="X509Data" type="ds:X509DataType"/> + <complexType name="X509DataType"> + <sequence maxOccurs="unbounded"> + <choice> + <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/> + <element name="X509SKI" type="ds:CryptoBinary"/> + <element name="X509SubjectName" type="string"/> + <element name="X509Certificate" type="ds:CryptoBinary"/> + <element name="X509CRL" type="ds:CryptoBinary"/> + <any namespace="##other" processContents="lax"/> + </choice> + </sequence> + </complexType> + <complexType name="X509IssuerSerialType"> + <sequence> + <element name="X509IssuerName" type="string"/> + <element name="X509SerialNumber" type="integer"/> + </sequence> + </complexType> + <!-- End X509Data --> + <!-- Begin PGPData --> + <element name="PGPData" type="ds:PGPDataType"/> + <complexType name="PGPDataType"> + <choice> + <sequence> + <element name="PGPKeyID" type="ds:CryptoBinary"/> + <element name="PGPKeyPacket" type="ds:CryptoBinary" minOccurs="0"/> + <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <sequence> + <element name="PGPKeyPacket" type="ds:CryptoBinary"/> + <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + </choice> + </complexType> + <!-- End PGPData --> + <!-- Begin SPKIData --> + <element name="SPKIData" type="ds:SPKIDataType"/> + <complexType name="SPKIDataType"> + <sequence maxOccurs="unbounded"> + <element name="SPKISexp" type="ds:CryptoBinary"/> + <any namespace="##other" processContents="lax" minOccurs="0"/> + </sequence> + </complexType> + <!-- End SPKIData --> + <!-- End KeyInfo --> + <!-- Start Object (Manifest, SignatureProperty) --> + <element name="Object" type="ds:ObjectType"/> + <complexType name="ObjectType" mixed="true"> + <sequence minOccurs="0" maxOccurs="unbounded"> + <any namespace="##any" processContents="lax"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + <attribute name="MimeType" type="string" use="optional"/> + <attribute name="Encoding" type="anyURI" use="optional"/> + <!-- add a grep facet --> + </complexType> + <element name="Manifest" type="ds:ManifestType"/> + <complexType name="ManifestType"> + <sequence> + <element ref="ds:Reference" maxOccurs="unbounded"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <element name="SignatureProperties" type="ds:SignaturePropertiesType"/> + <complexType name="SignaturePropertiesType"> + <sequence> + <element ref="ds:SignatureProperty" maxOccurs="unbounded"/> + </sequence> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <element name="SignatureProperty" type="ds:SignaturePropertyType"/> + <complexType name="SignaturePropertyType" mixed="true"> + <choice maxOccurs="unbounded"> + <any namespace="##other" processContents="lax"/> + <!-- (1,1) elements from (1,unbounded) namespaces --> + </choice> + <attribute name="Target" type="anyURI" use="required"/> + <attribute name="Id" type="ID" use="optional"/> + </complexType> + <!-- End Object (Manifest, SignatureProperty) --> + <!-- Start Algorithm Parameters --> + <simpleType name="HMACOutputLengthType"> + <restriction base="integer"/> + </simpleType> + <!-- Start KeyValue Element-types --> + <element name="DSAKeyValue" type="ds:DSAKeyValueType"/> + <complexType name="DSAKeyValueType"> + <sequence> + <sequence minOccurs="0"> + <element name="P" type="ds:CryptoBinary"/> + <element name="Q" type="ds:CryptoBinary"/> + </sequence> + <element name="J" type="ds:CryptoBinary" minOccurs="0"/> + <element name="G" type="ds:CryptoBinary" minOccurs="0"/> + <element name="Y" type="ds:CryptoBinary"/> + <sequence minOccurs="0"> + <element name="Seed" type="ds:CryptoBinary"/> + <element name="PgenCounter" type="ds:CryptoBinary"/> + </sequence> + </sequence> + </complexType> + <element name="RSAKeyValue" type="ds:RSAKeyValueType"/> + <complexType name="RSAKeyValueType"> + <sequence> + <element name="Modulus" type="ds:CryptoBinary"/> + <element name="Exponent" type="ds:CryptoBinary"/> + </sequence> + </complexType> + <!-- End KeyValue Element-types --> + <!-- End Signature --> +</schema> diff --git a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-assertion-01.xsd b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-assertion-01.xsd new file mode 100644 index 000000000..8ef08727d --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-assertion-01.xsd @@ -0,0 +1,194 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- edited with XML Spy v3.5 NT (http://www.xmlspy.com) by Phill Hallam-Baker (VeriSign Inc.) --> +<schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:oasis:names:tc:SAML:1.0:assertion" elementFormDefault="unqualified"> + <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="W3C-XMLDSig.xsd"/> + <annotation> + <documentation> + Document identifier: cs-sstc-schema-assertion-01 + Location: http://www.oasis-open.org/committees/security/docs/ + </documentation> + </annotation> + <simpleType name="IDType"> + <restriction base="string"/> + </simpleType> + <simpleType name="IDReferenceType"> + <restriction base="string"/> + </simpleType> + <simpleType name="DecisionType"> + <restriction base="string"> + <enumeration value="Permit"/> + <enumeration value="Deny"/> + <enumeration value="Indeterminate"/> + </restriction> + </simpleType> + <element name="AssertionIDReference" type="saml:IDReferenceType"/> + <element name="Assertion" type="saml:AssertionType"/> + <complexType name="AssertionType"> + <sequence> + <element ref="saml:Conditions" minOccurs="0"/> + <element ref="saml:Advice" minOccurs="0"/> + <choice maxOccurs="unbounded"> + <element ref="saml:Statement"/> + <element ref="saml:SubjectStatement"/> + <element ref="saml:AuthenticationStatement"/> + <element ref="saml:AuthorizationDecisionStatement"/> + <element ref="saml:AttributeStatement"/> + </choice> + <element ref="ds:Signature" minOccurs="0"/> + </sequence> + <attribute name="MajorVersion" type="integer" use="required"/> + <attribute name="MinorVersion" type="integer" use="required"/> + <attribute name="AssertionID" type="saml:IDType" use="required"/> + <attribute name="Issuer" type="string" use="required"/> + <attribute name="IssueInstant" type="dateTime" use="required"/> + </complexType> + <element name="Conditions" type="saml:ConditionsType"/> + <complexType name="ConditionsType"> + <choice minOccurs="0" maxOccurs="unbounded"> + <element ref="saml:AudienceRestrictionCondition"/> + <element ref="saml:Condition"/> + </choice> + <attribute name="NotBefore" type="dateTime" use="optional"/> + <attribute name="NotOnOrAfter" type="dateTime" use="optional"/> + </complexType> + <element name="Condition" type="saml:ConditionAbstractType"/> + <complexType name="ConditionAbstractType" abstract="true"/> + <element name="AudienceRestrictionCondition" type="saml:AudienceRestrictionConditionType"/> + <complexType name="AudienceRestrictionConditionType"> + <complexContent> + <extension base="saml:ConditionAbstractType"> + <sequence> + <element ref="saml:Audience" maxOccurs="unbounded"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="Audience" type="anyURI"/> + <element name="Advice" type="saml:AdviceType"/> + <complexType name="AdviceType"> + <choice minOccurs="0" maxOccurs="unbounded"> + <element ref="saml:AssertionIDReference"/> + <element ref="saml:Assertion"/> + <any namespace="##other" processContents="lax"/> + </choice> + </complexType> + <element name="Statement" type="saml:StatementAbstractType"/> + <complexType name="StatementAbstractType" abstract="true"/> + <element name="SubjectStatement" type="saml:SubjectStatementAbstractType"/> + <complexType name="SubjectStatementAbstractType" abstract="true"> + <complexContent> + <extension base="saml:StatementAbstractType"> + <sequence> + <element ref="saml:Subject"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="Subject" type="saml:SubjectType"/> + <complexType name="SubjectType"> + <choice> + <sequence> + <element ref="saml:NameIdentifier"/> + <element ref="saml:SubjectConfirmation" minOccurs="0"/> + </sequence> + <element ref="saml:SubjectConfirmation"/> + </choice> + </complexType> + <element name="NameIdentifier" type="saml:NameIdentifierType"/> + <complexType name="NameIdentifierType"> + <simpleContent> + <extension base="string"> + <attribute name="NameQualifier" type="string" use="optional"/> + <attribute name="Format" type="anyURI" use="optional"/> + </extension> + </simpleContent> + </complexType> + <element name="SubjectConfirmation" type="saml:SubjectConfirmationType"/> + <complexType name="SubjectConfirmationType"> + <sequence> + <element ref="saml:ConfirmationMethod" maxOccurs="unbounded"/> + <element ref="saml:SubjectConfirmationData" minOccurs="0"/> + <element ref="ds:KeyInfo" minOccurs="0"/> + </sequence> + </complexType> + <element name="SubjectConfirmationData" type="anyType"/> + <element name="ConfirmationMethod" type="anyURI"/> + <element name="AuthenticationStatement" type="saml:AuthenticationStatementType"/> + <complexType name="AuthenticationStatementType"> + <complexContent> + <extension base="saml:SubjectStatementAbstractType"> + <sequence> + <element ref="saml:SubjectLocality" minOccurs="0"/> + <element ref="saml:AuthorityBinding" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <attribute name="AuthenticationMethod" type="anyURI" use="required"/> + <attribute name="AuthenticationInstant" type="dateTime" use="required"/> + </extension> + </complexContent> + </complexType> + <element name="SubjectLocality" type="saml:SubjectLocalityType"/> + <complexType name="SubjectLocalityType"> + <attribute name="IPAddress" type="string" use="optional"/> + <attribute name="DNSAddress" type="string" use="optional"/> + </complexType> + <element name="AuthorityBinding" type="saml:AuthorityBindingType"/> + <complexType name="AuthorityBindingType"> + <attribute name="AuthorityKind" type="QName" use="required"/> + <attribute name="Location" type="anyURI" use="required"/> + <attribute name="Binding" type="anyURI" use="required"/> + </complexType> + <element name="AuthorizationDecisionStatement" type="saml:AuthorizationDecisionStatementType"/> + <complexType name="AuthorizationDecisionStatementType"> + <complexContent> + <extension base="saml:SubjectStatementAbstractType"> + <sequence> + <element ref="saml:Action" maxOccurs="unbounded"/> + <element ref="saml:Evidence" minOccurs="0"/> + </sequence> + <attribute name="Resource" type="anyURI" use="required"/> + <attribute name="Decision" type="saml:DecisionType" use="required"/> + </extension> + </complexContent> + </complexType> + <element name="Action" type="saml:ActionType"/> + <complexType name="ActionType"> + <simpleContent> + <extension base="string"> + <attribute name="Namespace" type="anyURI"/> + </extension> + </simpleContent> + </complexType> + <element name="Evidence" type="saml:EvidenceType"/> + <complexType name="EvidenceType"> + <choice maxOccurs="unbounded"> + <element ref="saml:AssertionIDReference"/> + <element ref="saml:Assertion"/> + </choice> + </complexType> + <element name="AttributeStatement" type="saml:AttributeStatementType"/> + <complexType name="AttributeStatementType"> + <complexContent> + <extension base="saml:SubjectStatementAbstractType"> + <sequence> + <element ref="saml:Attribute" maxOccurs="unbounded"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="AttributeDesignator" type="saml:AttributeDesignatorType"/> + <complexType name="AttributeDesignatorType"> + <attribute name="AttributeName" type="string" use="required"/> + <attribute name="AttributeNamespace" type="anyURI" use="required"/> + </complexType> + <element name="Attribute" type="saml:AttributeType"/> + <complexType name="AttributeType"> + <complexContent> + <extension base="saml:AttributeDesignatorType"> + <sequence> + <element ref="saml:AttributeValue" maxOccurs="unbounded"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="AttributeValue" type="anyType"/> +</schema> diff --git a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-protocol-01.xsd b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-protocol-01.xsd new file mode 100644 index 000000000..eeb9bef9f --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/cs-sstc-schema-protocol-01.xsd @@ -0,0 +1,127 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- edited with XML Spy v4.2 U (http://www.xmlspy.com) by Phillip Hallam-Baker (Phillip Hallam-Baker) --> +<schema xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:samlp="urn:oasis:names:tc:SAML:1.0:protocol" xmlns="http://www.w3.org/2001/XMLSchema" targetNamespace="urn:oasis:names:tc:SAML:1.0:protocol" elementFormDefault="unqualified"> + <import namespace="urn:oasis:names:tc:SAML:1.0:assertion" schemaLocation="cs-sstc-schema-assertion-01.xsd"/> + <import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="W3C-XMLDSig.xsd"/> + <annotation> + <documentation> + Document identifier: cs-sstc-schema-protocol-01 + Location: http://www.oasis-open.org/committees/security/docs/ + </documentation> + </annotation> + <complexType name="RequestAbstractType" abstract="true"> + <sequence> + <element ref="samlp:RespondWith" minOccurs="0" maxOccurs="unbounded"/> + <element ref="ds:Signature" minOccurs="0"/> + </sequence> + <attribute name="RequestID" type="saml:IDType" use="required"/> + <attribute name="MajorVersion" type="integer" use="required"/> + <attribute name="MinorVersion" type="integer" use="required"/> + <attribute name="IssueInstant" type="dateTime" use="required"/> + </complexType> + <element name="RespondWith" type="QName"/> + <element name="Request" type="samlp:RequestType"/> + <complexType name="RequestType"> + <complexContent> + <extension base="samlp:RequestAbstractType"> + <choice> + <element ref="samlp:Query"/> + <element ref="samlp:SubjectQuery"/> + <element ref="samlp:AuthenticationQuery"/> + <element ref="samlp:AttributeQuery"/> + <element ref="samlp:AuthorizationDecisionQuery"/> + <element ref="saml:AssertionIDReference" maxOccurs="unbounded"/> + <element ref="samlp:AssertionArtifact" maxOccurs="unbounded"/> + </choice> + </extension> + </complexContent> + </complexType> + <element name="AssertionArtifact" type="string"/> + <element name="Query" type="samlp:QueryAbstractType"/> + <complexType name="QueryAbstractType" abstract="true"/> + <element name="SubjectQuery" type="samlp:SubjectQueryAbstractType"/> + <complexType name="SubjectQueryAbstractType" abstract="true"> + <complexContent> + <extension base="samlp:QueryAbstractType"> + <sequence> + <element ref="saml:Subject"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="AuthenticationQuery" type="samlp:AuthenticationQueryType"/> + <complexType name="AuthenticationQueryType"> + <complexContent> + <extension base="samlp:SubjectQueryAbstractType"> + <attribute name="AuthenticationMethod" type="anyURI"/> + </extension> + </complexContent> + </complexType> + <element name="AttributeQuery" type="samlp:AttributeQueryType"/> + <complexType name="AttributeQueryType"> + <complexContent> + <extension base="samlp:SubjectQueryAbstractType"> + <sequence> + <element ref="saml:AttributeDesignator" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + <attribute name="Resource" type="anyURI" use="optional"/> + </extension> + </complexContent> + </complexType> + <element name="AuthorizationDecisionQuery" type="samlp:AuthorizationDecisionQueryType"/> + <complexType name="AuthorizationDecisionQueryType"> + <complexContent> + <extension base="samlp:SubjectQueryAbstractType"> + <sequence> + <element ref="saml:Action" maxOccurs="unbounded"/> + <element ref="saml:Evidence" minOccurs="0"/> + </sequence> + <attribute name="Resource" type="anyURI" use="required"/> + </extension> + </complexContent> + </complexType> + <complexType name="ResponseAbstractType" abstract="true"> + <sequence> + <element ref="ds:Signature" minOccurs="0"/> + </sequence> + <attribute name="ResponseID" type="saml:IDType" use="required"/> + <attribute name="InResponseTo" type="saml:IDReferenceType" use="optional"/> + <attribute name="MajorVersion" type="integer" use="required"/> + <attribute name="MinorVersion" type="integer" use="required"/> + <attribute name="IssueInstant" type="dateTime" use="required"/> + <attribute name="Recipient" type="anyURI" use="optional"/> + </complexType> + <element name="Response" type="samlp:ResponseType"/> + <complexType name="ResponseType"> + <complexContent> + <extension base="samlp:ResponseAbstractType"> + <sequence> + <element ref="samlp:Status"/> + <element ref="saml:Assertion" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + </extension> + </complexContent> + </complexType> + <element name="Status" type="samlp:StatusType"/> + <complexType name="StatusType"> + <sequence> + <element ref="samlp:StatusCode"/> + <element ref="samlp:StatusMessage" minOccurs="0"/> + <element ref="samlp:StatusDetail" minOccurs="0"/> + </sequence> + </complexType> + <element name="StatusCode" type="samlp:StatusCodeType"/> + <complexType name="StatusCodeType"> + <sequence> + <element ref="samlp:StatusCode" minOccurs="0"/> + </sequence> + <attribute name="Value" type="QName" use="required"/> + </complexType> + <element name="StatusMessage" type="string"/> + <element name="StatusDetail" type="samlp:StatusDetailType"/> + <complexType name="StatusDetailType"> + <sequence> + <any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/> + </sequence> + </complexType> +</schema> diff --git a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/mis/mis-1.0.3.xsd b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/mis/mis-1.0.3.xsd new file mode 100644 index 000000000..48ef60187 --- /dev/null +++ b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/mis/mis-1.0.3.xsd @@ -0,0 +1,98 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- Mit XMLSpy v2013 sp1 (http://www.altova.com) von Thomas Lenz (Graz University of Technology IAIK) bearbeitet --> +<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Arne Tauber (Technische Universität Graz) --> +<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd" targetNamespace="http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd" elementFormDefault="qualified" attributeFormDefault="unqualified"> + <xs:element name="MandateIssueRequest" type="MandateIssueRequestType"> + <xs:annotation> + <xs:documentation>Request to MIS</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="MandateIssueRequestType"> + <xs:choice> + <xs:sequence> + <xs:element name="IdentityLink" type="xs:base64Binary"/> + <xs:element name="X509SignatureCertificate" type="xs:base64Binary" minOccurs="0"/> + <xs:element name="OAFriendlyName" type="xs:string" minOccurs="0"/> + <xs:element name="RedirectURL" type="xs:anyURI"/> + <xs:element name="ReferenceValue"> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:minLength value="10"/> + <xs:maxLength value="100"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="Filters" minOccurs="0"> + <xs:complexType> + <xs:sequence> + <xs:element ref="MandateIdentifiers" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element ref="Target" minOccurs="0" maxOccurs="1"/> + <xs:element name="authBlock" type="xs:base64Binary" minOccurs="0" maxOccurs="1"/> + </xs:sequence> + <xs:element name="SessionID" type="xs:string"/> + </xs:choice> + </xs:complexType> + <xs:element name="MandateIdentifiers"> + <xs:complexType> + <xs:sequence maxOccurs="unbounded"> + <xs:element name="MandateIdentifier" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="Target"> + <xs:complexType> + <xs:sequence> + <xs:element name="Type" type="xs:anyURI" minOccurs="1"/> + <xs:element name="Value" type="xs:string" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="MandateIssueResponse" type="MandateIssueResponseType"> + <xs:annotation> + <xs:documentation>Response from MIS</xs:documentation> + </xs:annotation> + </xs:element> + <xs:complexType name="MandateIssueResponseType"> + <xs:choice> + <xs:sequence> + <xs:element name="SessionID" type="xs:string"/> + <xs:element name="GuiRedirectURL" type="xs:anyURI"/> + </xs:sequence> + <xs:element name="Mandates"> + <xs:complexType> + <xs:sequence> + <xs:element name="Mandate" maxOccurs="unbounded"> + <xs:complexType> + <xs:simpleContent> + <xs:extension base="xs:base64Binary"> + <xs:attribute name="ProfessionalRepresentative" type="xs:string"> + <xs:annotation> + <xs:documentation>Organwalter oder berufsm. Parteienvertreter</xs:documentation> + </xs:annotation> + </xs:attribute> + <xs:attribute name="OWbPK" type="xs:string"> + <xs:annotation> + <xs:documentation>bPK des Organwalters</xs:documentation> + </xs:annotation> + </xs:attribute> + </xs:extension> + </xs:simpleContent> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="Error"> + <xs:complexType> + <xs:sequence> + <xs:element name="Code" type="xs:positiveInteger"/> + <xs:element name="Text" type="xs:string"/> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:choice> + </xs:complexType> +</xs:schema> diff --git a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/szr-gw-0.0.3.xsd b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/szr-gw-0.0.3.xsd index c97822427..211e59d53 100644 --- a/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/szr-gw-0.0.3.xsd +++ b/id/server/idserverlib/src/main/resources/resources/wsdl/szrgw/szr-gw-0.0.3.xsd @@ -1,9 +1,5 @@ <?xml version="1.0" encoding="UTF-8"?> <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:sgw="http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd" xmlns:pr="http://reference.e-government.gv.at/namespace/persondata/20020228#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" xmlns:stork="urn:eu:stork:names:tc:PEPS:1.0:assertion" xmlns:mis="http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd" targetNamespace="http://reference.e-government.gv.at/namespace/szrgw/20070807/xsd" elementFormDefault="qualified" attributeFormDefault="unqualified" version="0.0.1"> - <xs:import namespace="urn:oasis:names:tc:SAML:1.0:assertion" schemaLocation="../cs-sstc-schema-assertion-01.xsd"/> - <xs:import namespace="http://reference.e-government.gv.at/namespace/persondata/20020228#" schemaLocation="../PersonData_20_en_moaWID.xsd"/> - <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="../W3C-XMLDSig.xsd"/> - <xs:import namespace="http://reference.e-government.gv.at/namespace/mandates/mis/1.0/xsd" schemaLocation="../mis/mis-1.0.3.xsd"/> <xs:element name="CreateIdentityLinkRequest"> <xs:complexType> <xs:sequence> diff --git a/id/server/moa-id-commons/.gitignore b/id/server/moa-id-commons/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/id/server/moa-id-commons/.gitignore @@ -0,0 +1 @@ +/target diff --git a/id/server/moa-id-commons/pom.xml b/id/server/moa-id-commons/pom.xml index e6d708eca..2ca351e81 100644 --- a/id/server/moa-id-commons/pom.xml +++ b/id/server/moa-id-commons/pom.xml @@ -82,7 +82,7 @@ <dependency> <groupId>com.sun.xml.bind</groupId> <artifactId>jaxb-xjc</artifactId> - <version>2.2.7</version> + <version>2.2.11</version> </dependency> <dependency> @@ -118,7 +118,7 @@ <dependency> <groupId>mysql</groupId> <artifactId>mysql-connector-java</artifactId> - <version>5.1.32</version> + <version>5.1.33</version> </dependency> </dependencies> @@ -175,7 +175,8 @@ <artifactId>maven-hyperjaxb3-plugin</artifactId> <version>0.5.6</version> <executions> - <execution> + <execution> + <phase>generate-sources</phase> <goals> <goal>generate</goal> </goals> diff --git a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBRead.java b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBRead.java index 46d3ca558..a3f445fcf 100644 --- a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBRead.java +++ b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBRead.java @@ -27,11 +27,13 @@ import at.gv.egovernment.moa.id.commons.db.dao.config.OnlineApplication; import at.gv.egovernment.moa.id.commons.db.dao.config.UserDatabase; import at.gv.egovernment.moa.logging.Logger; import at.gv.egovernment.moa.util.MiscUtil; -import org.apache.commons.lang.StringEscapeUtils; +//import org.apache.commons.lang.StringEscapeUtils; import javax.persistence.EntityManager; import javax.persistence.PersistenceException; +import org.apache.commons.lang3.StringEscapeUtils; + import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -70,7 +72,7 @@ public class ConfigurationDBRead { javax.persistence.Query query = session.createQuery(QUERIES.get("getActiveOnlineApplicationWithID")); //query.setParameter("id", id+"%"); - query.setParameter("id", StringEscapeUtils.escapeHtml(id)); + query.setParameter("id", StringEscapeUtils.escapeHtml4(id)); result = query.getResultList(); Logger.trace("Found entries: " + result.size()); diff --git a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBUtils.java b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBUtils.java index cdb19340d..3dcfa8aa9 100644 --- a/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBUtils.java +++ b/id/server/moa-id-commons/src/main/java/at/gv/egovernment/moa/id/commons/db/ConfigurationDBUtils.java @@ -156,8 +156,8 @@ public final class ConfigurationDBUtils { tx.begin(); session.merge(dbo); tx.commit(); - - //session.clear(); + + session.clear(); } return true; diff --git a/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd b/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd index f2f1949cc..d4686bd5e 100644 --- a/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd +++ b/id/server/moa-id-commons/src/main/resources/config/moaid_config_2.0.xsd @@ -481,10 +481,18 @@ </xsd:element> </xsd:sequence> </xsd:complexType> + <xsd:complexType name="InterfederationGatewayType"> + <xsd:sequence> + <xsd:element name="forwardIDPIdentifier" type="xsd:string" minOccurs="1" maxOccurs="1"/> + <xsd:element name="forwardProtocolIdentifer" type="xsd:string" minOccurs="1" maxOccurs="1"/> + </xsd:sequence> + </xsd:complexType> <xsd:complexType name="InterfederationIDPType"> <xsd:sequence> <xsd:element name="attributeQueryURL" type="xsd:string" minOccurs="0" maxOccurs="1"/> <xsd:element name="storeSSOSession" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/> + <xsd:element name="performPassivRequest" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/> + <xsd:element name="performLocalAuthenticationOnError" type="xsd:boolean" default="true" minOccurs="1" maxOccurs="1"/> </xsd:sequence> <xsd:attribute name="inboundSSO" type="xsd:boolean" default="true"/> <xsd:attribute name="outboundSSO" type="xsd:boolean" default="true"/> @@ -502,6 +510,8 @@ <xsd:element name="isAdminRequired" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1"/> <xsd:element name="isInterfederationIDP" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1"/> <xsd:element name="InterfederationIDP" type="InterfederationIDPType" minOccurs="0" maxOccurs="1"/> + <xsd:element name="isInterfederationGateway" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1"/> + <xsd:element name="InterfederationGateway" type="InterfederationGatewayType" minOccurs="0" maxOccurs="1"/> <xsd:element name="AuthComponent_OA" minOccurs="0"> <xsd:annotation> <xsd:documentation>enthält Parameter über die OA, die die @@ -581,7 +591,7 @@ </xsd:sequence> </xsd:complexType> </xsd:element> - </xsd:sequence> + </xsd:sequence> </xsd:complexType> </xsd:element> <xsd:complexType name="ConnectionParameterServerAuthType"> diff --git a/id/server/proxy/.gitignore b/id/server/proxy/.gitignore new file mode 100644 index 000000000..4dc009173 --- /dev/null +++ b/id/server/proxy/.gitignore @@ -0,0 +1,2 @@ +/target +/bin diff --git a/id/server/stork2-commons/.gitignore b/id/server/stork2-commons/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/id/server/stork2-commons/.gitignore @@ -0,0 +1 @@ +/target diff --git a/id/server/stork2-saml-engine/.gitignore b/id/server/stork2-saml-engine/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/id/server/stork2-saml-engine/.gitignore @@ -0,0 +1 @@ +/target @@ -11,11 +11,11 @@ <repositoryPath>${basedir}/repository</repositoryPath>
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
- <moa-commons-version>2.0.0</moa-commons-version>
- <moa-id-version>2.1.1</moa-id-version>
+ <moa-commons-version>2.0.1</moa-commons-version>
+ <moa-id-version>2.1.2</moa-id-version>
<moa-id-proxy-version>2.0.0</moa-id-proxy-version>
- <moa-spss-version>2.0.2</moa-spss-version>
- <configtool-version>1.1.2</configtool-version>
+ <moa-spss-version>2.0.3</moa-spss-version>
+ <configtool-version>1.1.4</configtool-version>
<demo-oa-version>2.0.2</demo-oa-version>
</properties>
@@ -157,7 +157,7 @@ <dependency>
<groupId>axis</groupId>
<artifactId>axis</artifactId>
- <version>1.0_IAIK_1.1</version>
+ <version>1.0_IAIK_1.2</version>
<scope>compile</scope>
</dependency>
<dependency>
@@ -406,7 +406,7 @@ <dependency>
<groupId>javax.xml.bind</groupId>
<artifactId>jaxb-api</artifactId>
- <version>2.2.11</version>
+ <version>2.2.12</version>
</dependency>
<!-- TSL -->
@@ -445,7 +445,7 @@ <dependency>
<groupId>xerces</groupId>
<artifactId>xercesImpl</artifactId>
- <version>2.9.1</version>
+ <version>2.11.0</version>
<scope>compile</scope>
</dependency>
<!-- The xmlParserAPIs.jar of the official xalan distribution
@@ -457,7 +457,7 @@ <dependency>
<groupId>xalan-bin-dist</groupId>
<artifactId>xml-apis</artifactId>
- <version>2.7.1</version><!-- xalan version -->
+ <version>2.11.0</version>
<scope>runtime</scope>
</dependency>
<!-- The xalan.jar of the official xalan distribution
@@ -469,13 +469,13 @@ <dependency>
<groupId>xalan-bin-dist</groupId>
<artifactId>xalan</artifactId>
- <version>2.7.1</version>
+ <version>2.7.2</version>
<scope>compile</scope><!-- for XPathAPI, Javadoc,...-->
</dependency>
<dependency>
<groupId>xalan-bin-dist</groupId>
<artifactId>serializer</artifactId>
- <version>2.7.1</version><!-- xalan version -->
+ <version>2.7.2</version><!-- xalan version -->
<scope>runtime</scope>
</dependency>
</dependencies>
diff --git a/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.jar b/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.jar Binary files differnew file mode 100644 index 000000000..29ce1fcbf --- /dev/null +++ b/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.jar diff --git a/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.pom b/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.pom new file mode 100644 index 000000000..959b311cd --- /dev/null +++ b/repository/at/gv/util/egovutils/2.0.0/egovutils-2.0.0.pom @@ -0,0 +1,145 @@ +<?xml version="1.0"?> +<project + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" + xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <groupId>at.gv.util</groupId> + <artifactId>egovutils</artifactId> + <version>2.0.0</version> + <name>zuseutil</name> + <url>http://maven.apache.org</url> + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <cxf.version>3.0.1</cxf.version> + </properties> + + <build> + <plugins> + <plugin> + <groupId>org.owasp</groupId> + <artifactId>dependency-check-maven</artifactId> + <version>1.2.5</version> + <executions> + <execution> + <phase>verify</phase> + <goals> + <goal>check</goal> + </goals> + </execution> + </executions> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <configuration> + <source>1.7</source> + <target>1.7</target> + </configuration> + </plugin> + </plugins> + </build> + + + <dependencies> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.11.0</version> + </dependency> + <dependency> + <groupId>xalan</groupId> + <artifactId>xalan</artifactId> + <version>2.7.1</version> + </dependency> +<!-- <dependency> + <groupId>com.sun</groupId> + <artifactId>webservices-tools</artifactId> + <version>2.0.1</version> + </dependency> + <dependency> + <groupId>com.sun</groupId> + <artifactId>webservices-rt</artifactId> + <version>2.0.1</version> + </dependency> --> +<!-- <dependency> + <groupId>org.glassfish.metro</groupId> + <artifactId>webservices-rt</artifactId> + <version>2.3</version> + </dependency> --> + + <!-- Apache CXF libs--> + <dependency> + <groupId>org.apache.cxf</groupId> + <artifactId>cxf-rt-frontend-jaxws</artifactId> + <version>${cxf.version}</version> + </dependency> + <dependency> + <groupId>org.apache.cxf</groupId> + <artifactId>cxf-rt-transports-http</artifactId> + <version>${cxf.version}</version> + </dependency> + <!-- Jetty is needed if you're are not using the CXFServlet --> +<!-- <dependency> + <groupId>org.apache.cxf</groupId> + <artifactId>cxf-rt-transports-http-jetty</artifactId> + <version>${cxf.version}</version> + </dependency> --> + + + <dependency> + <groupId>commons-validator</groupId> + <artifactId>commons-validator</artifactId> + <version>1.4.0</version> + </dependency> + <dependency> + <groupId>commons-beanutils</groupId> + <artifactId>commons-beanutils</artifactId> + <version>1.9.2</version> + </dependency> + <dependency> + <groupId>bouncycastle</groupId> + <artifactId>bcprov-jdk16</artifactId> + <version>140</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-api</artifactId> + <version>1.7.7</version> + </dependency> + <dependency> + <groupId>org.slf4j</groupId> + <artifactId>slf4j-log4j12</artifactId> + <version>1.7.7</version> + </dependency> + <dependency> + <groupId>javax.servlet</groupId> + <artifactId>servlet-api</artifactId> + <version>2.5</version> + <scope>provided</scope> + </dependency> + <dependency> + <groupId>commons-codec</groupId> + <artifactId>commons-codec</artifactId> + <version>1.9</version> + </dependency> + <dependency> + <groupId>commons-lang</groupId> + <artifactId>commons-lang</artifactId> + <version>2.6</version> + <type>jar</type> + <scope>compile</scope> + </dependency> +<!-- <dependency> + <groupId>commons-httpclient</groupId> + <artifactId>commons-httpclient</artifactId> + <version>3.1</version> + </dependency> --> + <dependency> + <groupId>org.apache.httpcomponents</groupId> + <artifactId>httpclient</artifactId> + <version>4.3.5</version> + </dependency> + + </dependencies> + +</project> diff --git a/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.1.pom b/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.1.pom new file mode 100644 index 000000000..6efb3d78d --- /dev/null +++ b/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.1.pom @@ -0,0 +1,7 @@ +<?xml version="1.0" encoding="UTF-8"?><project> + <modelVersion>4.0.0</modelVersion> + <groupId>axis</groupId> + <artifactId>axis</artifactId> + <version>1.0_IAIK_1.2</version> + <description>AXIS 1.0 patched(1.2) (XXE attacks / wsdl ressource loader)</description> +</project> diff --git a/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.2.jar b/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.2.jar Binary files differnew file mode 100644 index 000000000..3418552f4 --- /dev/null +++ b/repository/axis/axis/1.0_IAIK_1.2/axis-1.0_IAIK_1.2.jar diff --git a/repository/iaik/iaik_tsl/1.1/iaik_tsl-1.1.pom b/repository/iaik/iaik_tsl/1.1/iaik_tsl-1.1.pom new file mode 100644 index 000000000..52244bf1c --- /dev/null +++ b/repository/iaik/iaik_tsl/1.1/iaik_tsl-1.1.pom @@ -0,0 +1,276 @@ +<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd"> + <modelVersion>4.0.0</modelVersion> + <groupId>iaik</groupId> + <artifactId>iaik_tsl</artifactId> + <packaging>jar</packaging> + <version>1.1</version> + <name>TSL_library</name> + + <properties> + <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> + <project.reporting.outputEncoding>UTF-8</project.reporting.outputEncoding> + <endorsed.dir>${project.build.directory}/endorsed</endorsed.dir> + </properties> + + + <build> + <resources> + <resource> + <filtering>true</filtering> + <directory>src/main/resources</directory> + </resource> + </resources> + + <finalName>${project.artifactId}</finalName> + + <plugins> + <plugin> + <artifactId>maven-dependency-plugin</artifactId> + <executions> + <execution> + <id>copy-dependencies</id> + <phase>validate</phase> + <goals> + <goal>copy-dependencies</goal> + </goals> + <configuration> + <outputDirectory>${endorsed.dir}</outputDirectory> + <excludeTransitive>true</excludeTransitive> + <includeArtifactIds>jaxb-api,jaxb-impl</includeArtifactIds> + </configuration> + </execution> + </executions> + </plugin> + + <plugin> + <artifactId>maven-resources-plugin</artifactId> + <version>2.5</version> + <configuration> + <encoding>UTF-8</encoding> + </configuration> + </plugin> + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-compiler-plugin</artifactId> + <version>3.0</version> + <configuration> + <compilerArguments> + <verbose /> + <endorseddirs>${endorsed.dir}</endorseddirs> + </compilerArguments> + <source>${java.version}</source> + <target>${java.version}</target> + <fork>true</fork> + <compilerVersion>${java.version}</compilerVersion> + <encoding>${project.build.sourceEncoding}</encoding> + </configuration> + </plugin> + + <plugin> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-enforcer-plugin</artifactId> + <version>1.2</version> + <executions> + <execution> + <id>enforce-versions</id> + <goals> + <goal>enforce</goal> + </goals> + <configuration> + <rules> + <requireJavaVersion> + <version>1.6</version> + </requireJavaVersion> + </rules> + </configuration> + </execution> + </executions> + </plugin> + + + <!-- if maven should be used to build jaxb classes --> +<!-- <plugin> + <groupId>org.codehaus.mojo</groupId> + <artifactId>jaxb2-maven-plugin</artifactId> + <version>1.5</version> + <executions> + <execution> + <id>xjc</id> + <goals> + <goal>xjc</goal> + </goals> + </execution> + </executions> + <configuration> + <outputDirectory>${project.basedir}/src/main/xjc</outputDirectory> + <bindingDirectory>${project.basedir}/src/main/resources/spec/jaxb/</bindingDirectory> + <bindingFiles>ts_119612v010201_sie_xsd_local.xsd.binding.xml</bindingFiles> + <schemaDirectory>${project.basedir}/src/main/resources/spec/jaxb/</schemaDirectory> + <schemaFiles>ts_119612v010201_sie_xsd_local.xsd</schemaFiles> + <extension>true</extension> + </configuration> + </plugin> --> + + </plugins> + <pluginManagement> + <plugins> + <plugin> + <groupId>org.eclipse.m2e</groupId> + <artifactId>lifecycle-mapping</artifactId> + <version>1.0.0</version> + <configuration> + <lifecycleMappingMetadata> + <pluginExecutions> + <pluginExecution> + <pluginExecutionFilter> + <groupId>org.apache.maven.plugins</groupId> + <artifactId>maven-dependency-plugin</artifactId> + <versionRange>[2.0,)</versionRange> + <goals> + <goal>copy-dependencies</goal> + </goals> + </pluginExecutionFilter> + <action> + <ignore /> + </action> + </pluginExecution> + </pluginExecutions> + </lifecycleMappingMetadata> + </configuration> + </plugin> + </plugins> + </pluginManagement> + </build> + + <profiles> + <profile> + <id>profile-for-jdk1.6</id> + <activation> + <activeByDefault>false</activeByDefault> + <jdk>[1.6,)</jdk> + </activation> + <properties> + <java.version>1.6</java.version> + <envClassifier>jdk${java.version}</envClassifier> + </properties> + <build> + <finalName>${project.artifactId}-${project.version}-${envClassifier}</finalName> + </build> + <dependencies> + <!-- Requires JAVA 1.6 --> + <dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.2.11</version> + </dependency> + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.2.7</version> + </dependency> + + </dependencies> + </profile> + <profile> + <id>profile-for-jdk1.5</id> + <activation> + <activeByDefault>true</activeByDefault> + <jdk>(,1.5]</jdk> + </activation> + <properties> + <java.version>1.5</java.version> + <envClassifier>jdk${java.version}</envClassifier> + </properties> + <build> + <finalName>${project.artifactId}-${project.version}-${envClassifier}</finalName> + </build> + <dependencies> + <!-- Last Version with JAVA 1.5 --> + <dependency> + <groupId>javax.xml.bind</groupId> + <artifactId>jaxb-api</artifactId> + <version>2.2.7</version> + </dependency> + <dependency> + <groupId>com.sun.xml.bind</groupId> + <artifactId>jaxb-impl</artifactId> + <version>2.2.7</version> + </dependency> + </dependencies> + </profile> + </profiles> + + <dependencies> + + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_xsect_eval</artifactId> + <version>1.1709142</version> + </dependency> + <dependency> + <groupId>iaik.prod</groupId> + <artifactId>iaik_ecc</artifactId> + <version>2.19</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_jce_eval_signed</artifactId> + <version>3.181</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_pki_module</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_javax_crypto</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_util</artifactId> + <!-- <version>0.23 (snapshot 20121011-125127 eval)</version>--> + <version>0.23</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_jsse</artifactId> + <version>4.4</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>iaik_ssl</artifactId> + <version>4.4</version> + </dependency> + <dependency> + <groupId>iaik</groupId> + <artifactId>w3c_http</artifactId> + <version>1.0</version> + </dependency> + <dependency> + <groupId>org.xerial</groupId> + <artifactId>sqlite-jdbc</artifactId> + <version>3.7.2</version> + </dependency> + + + <dependency> + <groupId>javax.activation</groupId> + <artifactId>activation</artifactId> + <version>1.1.1</version> + </dependency> +<!-- <dependency> + <groupId>stax</groupId> + <artifactId>stax-api</artifactId> + <version>1.0.1</version> + </dependency> --> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.11.0</version> + </dependency> + </dependencies> + +</project>
\ No newline at end of file diff --git a/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.jar b/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.jar Binary files differnew file mode 100644 index 000000000..10c881c10 --- /dev/null +++ b/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.jar diff --git a/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.pom b/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.pom new file mode 100644 index 000000000..677fc1ae0 --- /dev/null +++ b/repository/xalan-bin-dist/serializer/2.7.2/serializer-2.7.2.pom @@ -0,0 +1,39 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project + xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>4</version> + </parent> + + <groupId>xalan</groupId> + <artifactId>serializer</artifactId> + <version>2.7.2</version> + + <name>Xalan Java Serializer</name> + <description> + Serializer to write out XML, HTML etc. as a stream of characters from an input DOM or from input + SAX events. + </description> + <url>http://xml.apache.org/xalan-j/</url> + + <dependencies> + <dependency> + <groupId>xml-apis</groupId> + <artifactId>xml-apis</artifactId> + <version>1.3.04</version> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.9.1</version> + <optional>true</optional> + </dependency> + </dependencies> + +</project> diff --git a/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.jar b/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.jar Binary files differnew file mode 100644 index 000000000..abdabe33e --- /dev/null +++ b/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.jar diff --git a/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.pom b/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.pom new file mode 100644 index 000000000..758958d11 --- /dev/null +++ b/repository/xalan-bin-dist/xalan/2.7.2/xalan-2.7.2.pom @@ -0,0 +1,41 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project + xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd"> + + <modelVersion>4.0.0</modelVersion> + <parent> + <groupId>org.apache</groupId> + <artifactId>apache</artifactId> + <version>4</version> + </parent> + + <groupId>xalan</groupId> + <artifactId>xalan</artifactId> + <version>2.7.2</version> + + <name>Xalan Java</name> + <description> + Xalan-Java is an XSLT processor for transforming XML documents into HTML, + text, or other XML document types. It implements XSL Transformations (XSLT) + Version 1.0 and XML Path Language (XPath) Version 1.0 and can be used from + the command line, in an applet or a servlet, or as a module in other program. + </description> + <url>http://xml.apache.org/xalan-j/</url> + + <dependencies> + <dependency> + <groupId>xalan</groupId> + <artifactId>serializer</artifactId> + <version>2.7.2</version> + </dependency> + <dependency> + <groupId>xerces</groupId> + <artifactId>xercesImpl</artifactId> + <version>2.9.1</version> + <optional>true</optional> + </dependency> + </dependencies> + +</project>
\ No newline at end of file diff --git a/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.jar b/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.jar Binary files differnew file mode 100644 index 000000000..530ea6fc5 --- /dev/null +++ b/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.jar diff --git a/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.pom b/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.pom new file mode 100644 index 000000000..35b51d5fa --- /dev/null +++ b/repository/xalan-bin-dist/xml-apis/2.11.0/xml-apis.pom @@ -0,0 +1,9 @@ +<?xml version="1.0" encoding="UTF-8"?> +<project xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd" xmlns="http://maven.apache.org/POM/4.0.0" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"> + <modelVersion>4.0.0</modelVersion> + <groupId>xerces-J</groupId> + <artifactId>xml-apis</artifactId> + <version>2.11.0</version> + <description>Artifactory auto generated POM</description> +</project>
\ No newline at end of file diff --git a/spss/handbook/clients/api/.gitignore b/spss/handbook/clients/api/.gitignore new file mode 100644 index 000000000..934e0e06f --- /dev/null +++ b/spss/handbook/clients/api/.gitignore @@ -0,0 +1,2 @@ +/bin +/target diff --git a/spss/handbook/clients/referencedData/.gitignore b/spss/handbook/clients/referencedData/.gitignore new file mode 100644 index 000000000..934e0e06f --- /dev/null +++ b/spss/handbook/clients/referencedData/.gitignore @@ -0,0 +1,2 @@ +/bin +/target diff --git a/spss/handbook/clients/webservice/.gitignore b/spss/handbook/clients/webservice/.gitignore new file mode 100644 index 000000000..934e0e06f --- /dev/null +++ b/spss/handbook/clients/webservice/.gitignore @@ -0,0 +1,2 @@ +/bin +/target diff --git a/spss/handbook/handbook/usage/usage.html b/spss/handbook/handbook/usage/usage.html index 690b7120f..d36fb13d1 100644 --- a/spss/handbook/handbook/usage/usage.html +++ b/spss/handbook/handbook/usage/usage.html @@ -63,8 +63,9 @@ <li><a href="#webservice_clients_gemeinsamkeiten">Gemeinsamkeiten</a></li> <li><a href="#webservice_clients_httpsserverauth">Besonderheiten von <code>HTTPSServerAuth.java</code></a></li> <li><a href="#webservice_clients_httpsclientauth">Besonderheiten von <code>HTTPSClientAuth.java</code></a></li> - </ol> + </ol> </li> + <li><a href="#readcert">Zertifikat einer Schlüsselgruppe auslesen</a></li> </ol> </li> <li><a href="#klassenbibliothek">Verwendung der Klassenbibliothek</a> @@ -1304,6 +1305,10 @@ Ich habe weiters ein eigenens ID-Attribut bekommen.</doc:Paragraph> <p>Diese Variante des Webservice-Clients baut im Schritt 3 des Kernablaufs aus <a href="#webservice_clients_gemeinsamkeiten">Abschnitt 2.2.2</a> eine SSL-Verbindung mit Server- und Client-Authentifizierung zum MOA SP/SS Server auf. In dieser SSL-Verbindung sendet der Webservice-Client dann den erstellten SOAP-Request über HTTPS.</p> <p>Die gegenüber <a href="#webservice_clients_httpsserverauth">Abschnitt 2.2.3</a> zusätzlich notwendige Konfiguration (Speicher für das SSL-Client-Zertifikat sowie den dazugehörigen privaten Schlüssel, Typ dieses Speichers, Passwort für diesen Speicher) wird mittels zusätzlicher Parameter in der in <a href="#webservice_clients_gemeinsamkeiten">Abschnitt 2.2.2</a> besprochenen Java-Properties-Datei vorgenommen. Genaue Infos zu diesen Konfigurationsparametern entnehmen Sie bitte der Quellcodedokumentation von <code><a href="../../clients/webservice/src/main/java/at/gv/egovernment/moa/spss/handbook/clients/webservice/HTTPSClientAuth.java">HTTPSClientAuth.java</a></code>. <a href="../../clients/webservice/conf/http.properties"><code>http.properties</code></a> enthält eine auf dieses Handbuch abgestimmte Konfiguration.</p> <p>Beachten Sie bitte auch den Hinweis zum SSL Logging aus <a href="#webservice_clients_httpsserverauth">Abschnitt 2.2.3</a>.</p> +<h2><a name="readcert" id="webservice_clients_httpsclientauth2"></a>2.3 Zertifikat einer Schlüsselgruppe auslesen</h2> +<p>Ab der Version 2.0.3 von MOA-SPSS kann das Zertifikat einer Schlüsselgruppe über ein Web Interface abgerufen werden. MOA-SPSS bietet hierfür folgenden Endpunkt:</p> +<pre>http(s)://......../moa-spss/Certificate?id=<Name der Schlüsselgruppe></pre> +<p>Mit dem http GET Parameter id kann die gewünsche Schlüsselgruppe ausgewählt werden.</p> <h1><a name="klassenbibliothek" id="klassenbibliothek"></a>3 Verwendung der Klassenbibliothek</h1> <p>Neben dem Betrieb von MOA SP/SS als Webservice ist als Alternative auch die Verwendung von MOA SP/SS als Klassenbibliothek möglich, also die direkte Einbindung in ein Java-Programm unter Verwendung des Application Programmers Interface (API) von MOA SP/SS. </p> <h2><a name="klassenbibliothek_vorbereitung" id="klassenbibliothek_vorbereitung"></a>3.1 Vorbereitung</h2> diff --git a/spss/server/history.txt b/spss/server/history.txt index 2dbd62760..9fbfd6a7d 100644 --- a/spss/server/history.txt +++ b/spss/server/history.txt @@ -1,4 +1,15 @@ ############## +2.0.3 +############## +- Neues Endpunkt zum Auslesen des Zertifikats einer Schlüsselgruppe hinzugefügt +- Libraries aktuallisert + > javax.xml.bind.jaxb-api 2.2.12 + > xerces.xercesImpl 2.11.0 + > xalan 2.7.2 + > serializer 2.7.2 + + +############## 2.0.2 ############## - Libraries aktuallisert diff --git a/spss/server/readme.update.txt b/spss/server/readme.update.txt index 144abc5bc..3ebf15565 100644 --- a/spss/server/readme.update.txt +++ b/spss/server/readme.update.txt @@ -1,5 +1,5 @@ ------------------------------------------------------------------------------- - Update einer bestehenden MOA-SPSS-Installation auf Version 2.0.2 + Update einer bestehenden MOA-SPSS-Installation auf Version 2.0.3 ------------------------------------------------------------------------------- Es gibt zwei Moeglichkeiten (im Folgenden als "Update Variante A" und "Update Variante B" bezeichnet), das Update von MOA-SPSS auf Version @@ -23,12 +23,9 @@ Update Variante A 1.) Erstellen Sie eine Sicherungskopie des kompletten Tomcat-Verzeichnisses Ihrer MOA-SPSS-Installation. -2.) Erstellen Sie eine Sicherungskopie aller "iaik*.jar"-Dateien im Verzeichnis - JAVA_HOME\jre\lib\ext, und loeschen Sie diese Dateien danach. +2.) Fuehren Sie eine Neuinstallation gemaess Handbuch durch. -3.) Fuehren Sie eine Neuinstallation gemaess Handbuch durch. - -4.) Kopieren Sie etwaige Konfigurationsdateien, Trust-Profile und Key-Stores, +3.) Kopieren Sie etwaige Konfigurationsdateien, Trust-Profile und Key-Stores, die Sie aus Ihrer alten Installation beibehalten moechten, aus Ihrer Sicherungskopie in die entsprechenden Verzeichnisse der neuen Installation. @@ -36,7 +33,7 @@ Update Variante A Update Variante B, Punkt 9 beschrieben vor, um Ihre alten Trustprofile auf einen aktuellen Stand zu bringen. -5.) Nur wenn alte Installation aelter als Version 1.3.0: +4.) Nur wenn alte Installation aelter als Version 1.3.0: Falls Sie Ihre alte MOA-SP Konfigurationsdatei weiterverwenden wollen: Seit dem Wechsel auf Version 1.3.1 verwendet MOA SP ein neues Format fuer die XML-Konfigurationsdatei. Sie muessen die Konfigurationsdatei fuer MOA-SP aus @@ -51,9 +48,9 @@ Update Variante B 1.) Erstellen Sie eine Sicherungskopie des kompletten Tomcat-Verzeichnisses Ihrer MOA-SPSS-Installation. -2.) Entpacken Sie die Datei "moa-spss-2.0.2.zip" in das Verzeichnis MOA_SPSS_INST. +2.) Entpacken Sie die Datei "moa-spss-2.0.3.zip" in das Verzeichnis MOA_SPSS_INST. -3.) Erstellen Sie eine Sicherungskopie aller "iaik*.jar"-Dateien im Verzeichnis +3.) Erstellen Sie eine Sicherungskopie aller "*.jar"-Dateien im Verzeichnis JAVA_HOME\jre\lib\ext und loeschen Sie diese Dateien danach. 4.) Kopieren Sie alle Dateien aus dem Verzeichnis MOA_SPSS_INST\ext in das @@ -71,58 +68,8 @@ Update Variante B MOA_SPSS_INST\moa-spss.war. 8.) Loeschen Sie das Verzeichnis CATALINA_HOME\work. - -9.) Update der Trust-Profile. - Wenn Sie Ihre alten Trust-Profile durch die neuen ersetzen wollen, dann gehen - Sie vor, wie in Punkt a). Wenn Sie Ihre eigenen Trust-Profile beibehalten wollen, - dann gehen Sie vor, wie in Punkt b). - - a) Gehen Sie wie folgt vor, um die Trust-Profile auszutauschen: - - 1) Loeschen Sie das Verzeichnis CATALINA_HOME\conf\moa-spss\trustProfiles. - 2) Kopieren Sie das Verzeichnis MOA_SPSS_INST\conf\moa-spss\trustProfiles - in das Verzeichnis CATALINA_HOME\conf\moa-spss. - - b) Falls Sie Ihre alten Trust-Profile beibehalten wollen, gehen Sie wie folgt vor, - um die Profile auf den aktuellen Stand zu bringen: - - 1) Loeschen Sie die Datei "C=AT,O=Hauptverband oesterr. Sozialvers.,CN=CRL-Signer.der" - aus jedem Trustprofil, in dem sie enthalten ist. (Je nachdem welche Version Sie - ursprünglich verwendet haben kann diese Datei auch in keinem Trustprofile vorhanden sein) - - 2) Loeschen Sie die Datei "OCSP Responder 02-20051027-20101027.der" aus jedem - Trustprofil, in dem sie enthalten ist. (Je nachdem welche Version Sie - ursprünglich verwendet haben kann diese Datei auch in keinem Trustprofile vorhanden sein) - - 3) Ergaenzen Sie ihre Trustprofile durch alle Zertifikate aus den entsprechenden Profilen - im Verzeichnis MOA_SPSS_INST\conf\moa-spss\trustProfiles, die nicht in Ihren - Profilen enthalten sind. Am einfachsten ist es, wenn Sie den Inhalt der einzelnen Profile - aus der Distribution (MOA_SPSS_INST\conf\moa-spss\trustProfiles) in die entsprechenden - Profile Ihrer Installation (CATALINA_HOME\conf\moa-spss\trustProfiles) kopieren und - dabei die vorhandenen gleichnamigen Zertifikate �berschreiben), also z.B: - - Kopieren des Inhalts von - MOA_SPSS_INST\conf\moa-spss\trustProfiles\certifiedSignature - nach - CATALINA_HOME\conf\moa-spss\trustProfiles\certifiedSignature - usw. - -10.) Update des Cert-Stores. - a) Kopieren Sie den Inhalt des Verzeichnisses MOA_SPSS_INST\conf\moa-spss\certstore - in das Verzeichnis CATALINA_HOME\conf\moa-spss\certstore. Wenn Sie gefragt werden, ob Sie - vorhandene Dateien oder Unterverzeichnisse ueberschreiben sollen, dann bejahen Sie das. - - b) Falls vorhanden, loeschen Sie die Datei "890A4C8282E95EBB398685D9501486EF213941B5" aus dem - Verzeichnis CATALINA_HOME\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D. - - c) Falls die Datei "E7340D1FB627D8917A9C0D23F21515C441BF1214" noch nicht im Verzeichnis - CATALINA_HOME\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D - enthalten ist, dann kopieren Sie diese Datei aus dem Verzeichnis - MOA_ID_INST_AUTH\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D - in das Verzeichnis - CATALINA_HOME\conf\moa-spss\certstore\10F17BDACD8DEAA1E8F23FBEAE7B3EC3D9773D1D. - -11.) Nur wenn alte Installation aelter als Version 1.3.0: + +9.) Nur wenn alte Installation aelter als Version 1.3.0: Mit dem Wechsel auf Version 1.3.0 verwendet MOA SP ein neues Format fuer die XML-Konfigurationsdatei. Sie muessen die Konfigurationsdatei fuer MOA-SP aus Ihrer alten Installation auf das neue Format konvertieren. Details dazu diff --git a/spss/server/serverlib/.gitignore b/spss/server/serverlib/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/spss/server/serverlib/.gitignore @@ -0,0 +1 @@ +/target diff --git a/spss/server/serverlib/pom.xml b/spss/server/serverlib/pom.xml index 3cf8d0bd7..da78d3dc1 100644 --- a/spss/server/serverlib/pom.xml +++ b/spss/server/serverlib/pom.xml @@ -161,6 +161,18 @@ </exclusions>
</dependency>
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-impl</artifactId>
+ <version>2.2.11</version>
+ </dependency>
+
+ <dependency>
+ <groupId>com.sun.xml.bind</groupId>
+ <artifactId>jaxb-core</artifactId>
+ <version>2.2.11</version>
+ </dependency>
+
<!-- <dependency>
<groupId>iaik</groupId>
<artifactId>iaik_util</artifactId>
diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/service/CertificateProviderServlet.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/service/CertificateProviderServlet.java new file mode 100644 index 000000000..c8a0f68bf --- /dev/null +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/server/service/CertificateProviderServlet.java @@ -0,0 +1,178 @@ +package at.gv.egovernment.moa.spss.server.service; + +import iaik.server.modules.keys.KeyEntryID; +import iaik.server.modules.keys.KeyModule; +import iaik.server.modules.keys.KeyModuleFactory; + +import java.io.IOException; +import java.math.BigInteger; +import java.security.Principal; +import java.security.cert.Certificate; +import java.security.cert.X509Certificate; +import java.util.Collections; +import java.util.HashSet; +import java.util.Iterator; +import java.util.List; +import java.util.Set; + +import javax.servlet.ServletException; +import javax.servlet.http.HttpServlet; +import javax.servlet.http.HttpServletRequest; +import javax.servlet.http.HttpServletResponse; + +import at.gv.egovernment.moa.logging.Logger; +import at.gv.egovernment.moa.spss.server.config.ConfigurationException; +import at.gv.egovernment.moa.spss.server.config.ConfigurationProvider; +import at.gv.egovernment.moa.spss.server.config.KeyGroupEntry; +import at.gv.egovernment.moa.spss.server.logging.TransactionId; +import at.gv.egovernment.moa.spss.server.transaction.TransactionIDGenerator; + +/** + * + * @author Andreas Fitzek + * @version $Id$ + */ +public class CertificateProviderServlet extends HttpServlet { + + /** + * + */ + private static final long serialVersionUID = -6907582473072190122L; + + /** The property name for accessing the X509 client certificate chain. */ + private static final String X509_CERTIFICATE_PROPERTY = "javax.servlet.request.X509Certificate"; + + public static final String PARAM_KEYID = "id"; + + /** + * Build the set of <code>KeyEntryID</code>s available to the given + * <code>keyGroupID</code>. + * + * @param keyGroupID + * The keygroup ID for which the available keys should be + * returned. + * @return The <code>Set</code> of <code>KeyEntryID</code>s identifying the + * available keys. + * @throws ConfigurationException + */ + private Set buildKeySet(String keyGroupID, X509Certificate cert, KeyModule module) + throws ConfigurationException { + ConfigurationProvider config = ConfigurationProvider.getInstance(); + Set keyGroupEntries; + + // get the KeyGroup entries from the configuration + if (cert != null) { + Principal issuer = cert.getIssuerDN(); + BigInteger serialNumber = cert.getSerialNumber(); + + keyGroupEntries = config.getKeyGroupEntries(issuer, serialNumber, + keyGroupID); + } else { + keyGroupEntries = config.getKeyGroupEntries(null, null, keyGroupID); + } + + // map the KeyGroup entries to a set of KeyEntryIDs + if (keyGroupEntries == null) { + return null; + } else if (keyGroupEntries.size() == 0) { + return Collections.EMPTY_SET; + } else { + + Set keyEntryIDs = module.getPrivateKeyEntryIDs(); + Set keySet = new HashSet(); + Iterator iter; + + // filter out the keys that do not exist in the IAIK configuration + // by walking through the key entries and checking if the exist in + // the + // keyGroupEntries + for (iter = keyEntryIDs.iterator(); iter.hasNext();) { + KeyEntryID entryID = (KeyEntryID) iter.next(); + KeyGroupEntry entry = new KeyGroupEntry(entryID.getModuleID(), + entryID.getCertificateIssuer(), + entryID.getCertificateSerialNumber()); + if (keyGroupEntries.contains(entry)) { + keySet.add(entryID); + } + } + return keySet; + } + } + + private X509Certificate getClientCertificate(HttpServletRequest request) { + X509Certificate[] clientCert = (X509Certificate[]) request + .getAttribute(X509_CERTIFICATE_PROPERTY); + if(clientCert != null) { + return clientCert[0]; + } + return null; + } + + public void doGet(HttpServletRequest request, HttpServletResponse response) + throws ServletException, IOException { + try { + X509Certificate cert = getClientCertificate(request); + String keyId = request.getParameter(PARAM_KEYID); + + if(keyId == null) { + Logger.warn(PARAM_KEYID + " not provided in Request. Returning: " + HttpServletResponse.SC_BAD_REQUEST); + response.sendError(HttpServletResponse.SC_BAD_REQUEST); + return; + } + + String transactionId = TransactionIDGenerator.nextID(); + + KeyModule module = KeyModuleFactory.getInstance(new TransactionId( + transactionId)); + + Set keySet = buildKeySet(keyId, cert, module); + + if(keySet == null || keySet.isEmpty()) { + Logger.warn("No keys available for Key Identifier " + keyId + " and given authentication."); + response.sendError(HttpServletResponse.SC_NOT_FOUND); + return; + } + + + if(keySet.size() != 1) { + Logger.warn("Too many keys available for Key Identifier " + keyId + " and given authentication."); + response.sendError(HttpServletResponse.SC_CONFLICT); + return; + } + + Iterator iter; + + // filter out the keys that do not exist in the IAIK configuration + // by walking through the key entries and checking if the exist in + // the + // keyGroupEntries + for (iter = keySet.iterator(); iter.hasNext();) { + KeyEntryID entryID = (KeyEntryID) iter.next(); + + List certChain = module.getPrivateKeyEntry(entryID).getCertificateChain(); + + if(certChain != null && !certChain.isEmpty()) { + Logger.trace("Returning Certificate!"); + Certificate keyCert = ((Certificate)certChain.get(0)); + byte[] certData = keyCert.getEncoded(); + response.setStatus(HttpServletResponse.SC_OK); + response.setContentType("application/pkix-cert"); + response.setHeader("Content-disposition","attachment; filename=\"" + keyId + ".cer\""); + response.getOutputStream().write(certData); + response.getOutputStream().close(); + return; + } + + break; + } + + // No Certificate could be found! + Logger.warn("Failed to find keys available for Key Identifier " + keyId + " and given authentication."); + response.sendError(HttpServletResponse.SC_NOT_FOUND); + return; + } catch(Throwable e) { + Logger.error("Unhandled Exception when providing certificate", e); + response.sendError(HttpServletResponse.SC_INTERNAL_SERVER_ERROR); + } + } +} diff --git a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/tsl/utils/TSLImportFromFileContext.java b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/tsl/utils/TSLImportFromFileContext.java index 492d10eda..f8e8f608b 100644 --- a/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/tsl/utils/TSLImportFromFileContext.java +++ b/spss/server/serverlib/src/main/java/at/gv/egovernment/moa/spss/tsl/utils/TSLImportFromFileContext.java @@ -726,7 +726,8 @@ public class TSLImportFromFileContext extends iaik.xml.crypto.tsl.TSLImportFromF } else if (e.getMessage().startsWith("cvc-datatype-valid.1.2.1: '") && e.getMessage().endsWith("' is not a valid value for 'NCName'.")){
- if (expectedTerritory_ == Countries.CY || expectedTerritory_ == Countries.LV){
+ if (expectedTerritory_ == Countries.CY || expectedTerritory_ == Countries.LV ||
+ expectedTerritory_ == Countries.HR || expectedTerritory_ == Countries.NL){
return new AttributeValueFixup("","Id","(.+)","x$1",e, this);
}
} else if (e.getMessage().startsWith("cvc-complex-type.2.3: Element '") && e.getMessage().endsWith("' cannot have character [children], because the type's content type is element-only.")) {
diff --git a/spss/server/serverws/.gitignore b/spss/server/serverws/.gitignore new file mode 100644 index 000000000..4dc009173 --- /dev/null +++ b/spss/server/serverws/.gitignore @@ -0,0 +1,2 @@ +/target +/bin diff --git a/spss/server/serverws/pom.xml b/spss/server/serverws/pom.xml index 79a16cbb5..bbfb3c443 100644 --- a/spss/server/serverws/pom.xml +++ b/spss/server/serverws/pom.xml @@ -50,7 +50,7 @@ <webResources> <resource> <directory>${basedir}/resources/wsdl</directory> - <targetPath>resources/schemas</targetPath> + <targetPath>WEB-INF/classes/resources/schemas</targetPath> <includes> <include>*.xsd</include> <include>*.wsdl</include> diff --git a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl b/spss/server/serverws/resources/wsdl/MOA-SPSS-2.0.0.wsdl index 4f9deee38..4f9deee38 100644 --- a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.wsdl +++ b/spss/server/serverws/resources/wsdl/MOA-SPSS-2.0.0.wsdl diff --git a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd b/spss/server/serverws/resources/wsdl/MOA-SPSS-2.0.0.xsd index cc0a7c882..cc0a7c882 100644 --- a/spss/server/serverws/resources/wsdl/MOA-SPSS-1.5.2.xsd +++ b/spss/server/serverws/resources/wsdl/MOA-SPSS-2.0.0.xsd diff --git a/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd b/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd index 9ff243e5c..43e748734 100644 --- a/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd +++ b/spss/server/serverws/src/main/webapp/WEB-INF/server-config.wsdd @@ -16,7 +16,7 @@ <namespace>http://reference.e-government.gv.at/namespace/moa/20020822#</namespace>
<parameter name="allowedMethods" value="CreateCMSSignatureRequest CreateXMLSignatureRequest"/>
<parameter name="className" value="at.gv.egovernment.moa.spss.server.service.SignatureCreationService"/>
- <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
+ <wsdlFile>/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
<requestFlow>
<handler type="MOAHandler"/>
@@ -30,7 +30,7 @@ <namespace>http://reference.e-government.gv.at/namespace/moa/20020822#</namespace>
<parameter name="allowedMethods" value="VerifyCMSSignatureRequest VerifyXMLSignatureRequest"/>
<parameter name="className" value="at.gv.egovernment.moa.spss.server.service.SignatureVerificationService"/>
- <wsdlFile>webapps/moa-spss/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
+ <wsdlFile>/resources/schemas/MOA-SPSS-2.0.0.wsdl</wsdlFile>
<requestFlow>
<handler type="MOAHandler"/>
</requestFlow>
diff --git a/spss/server/serverws/src/main/webapp/WEB-INF/web.xml b/spss/server/serverws/src/main/webapp/WEB-INF/web.xml index b68ee850e..5de9f1d9c 100644 --- a/spss/server/serverws/src/main/webapp/WEB-INF/web.xml +++ b/spss/server/serverws/src/main/webapp/WEB-INF/web.xml @@ -10,9 +10,7 @@ <servlet> <servlet-name>ConfigurationServlet</servlet-name> <display-name>MOA Configuration Servlet</display-name> - <servlet-class> - at.gv.egovernment.moa.spss.server.service.ConfigurationServlet - </servlet-class> + <servlet-class>at.gv.egovernment.moa.spss.server.service.ConfigurationServlet</servlet-class> <load-on-startup>0</load-on-startup> </servlet> <servlet> @@ -22,6 +20,12 @@ org.apache.axis.transport.http.AxisServlet </servlet-class> </servlet> + <servlet> + <servlet-name>CertificateProviderServlet</servlet-name> + <display-name>MOA Certificate Provider Servlet</display-name> + <servlet-class>at.gv.egovernment.moa.spss.server.service.CertificateProviderServlet</servlet-class> + <load-on-startup>0</load-on-startup> + </servlet> <servlet-mapping> <servlet-name>AxisServlet</servlet-name> <url-pattern>/services/*</url-pattern> @@ -30,6 +34,10 @@ <servlet-name>ConfigurationServlet</servlet-name> <url-pattern>/ConfigurationUpdate</url-pattern> </servlet-mapping> + <servlet-mapping> + <servlet-name>CertificateProviderServlet</servlet-name> + <url-pattern>/Certificate</url-pattern> + </servlet-mapping> <security-constraint> <web-resource-collection> diff --git a/spss/server/tools/.gitignore b/spss/server/tools/.gitignore new file mode 100644 index 000000000..ea8c4bf7f --- /dev/null +++ b/spss/server/tools/.gitignore @@ -0,0 +1 @@ +/target |