aboutsummaryrefslogtreecommitdiff
path: root/id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java
diff options
context:
space:
mode:
authorFlorian Reimair <florian.reimair@iaik.tugraz.at>2014-01-16 08:55:06 +0100
committerFlorian Reimair <florian.reimair@iaik.tugraz.at>2014-01-27 16:37:40 +0100
commit6c7a6f8e222e4fb39a11c220b63e785f2037d428 (patch)
tree2628e16ffc7296a2d6a8a3e9c2200dbc9f1536bd /id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java
parent8276884b9c45315df5fa951ce53b3d35f4983b22 (diff)
downloadmoa-id-spss-6c7a6f8e222e4fb39a11c220b63e785f2037d428.tar.gz
moa-id-spss-6c7a6f8e222e4fb39a11c220b63e785f2037d428.tar.bz2
moa-id-spss-6c7a6f8e222e4fb39a11c220b63e785f2037d428.zip
fix added real source of stork modules
Diffstat (limited to 'id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java')
-rw-r--r--id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java65
1 files changed, 65 insertions, 0 deletions
diff --git a/id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java b/id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java
new file mode 100644
index 000000000..be5dc8c34
--- /dev/null
+++ b/id/server/stork2-saml-engine/src/main/java/eu/stork/peps/auth/engine/core/validator/QAAAttributeSchemaValidator.java
@@ -0,0 +1,65 @@
+/*
+ * 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/european-union-public-licence-eupl-v.1.1
+ *
+ * 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.
+ */
+
+package eu.stork.peps.auth.engine.core.validator;
+
+import org.opensaml.xml.util.DatatypeHelper;
+import org.opensaml.xml.validation.ValidationException;
+import org.opensaml.xml.validation.Validator;
+
+import eu.stork.peps.auth.engine.core.QAAAttribute;
+
+/**
+ * The Class QAAAttributeSchemaValidator.
+ *
+ * @author fjquevedo
+ */
+public class QAAAttributeSchemaValidator implements Validator<QAAAttribute> {
+
+
+ /**
+ * Validate action.
+ *
+ * @param qaa the quality authentication assurance level attribute
+ *
+ * @throws ValidationException the validation exception
+ */
+ public final void validate(final QAAAttribute qaa) throws ValidationException {
+ validateAction(qaa);
+ }
+
+
+ /**
+ * Validate action.
+ *
+ * @param qaaAttribute the quality authentication assurance level attribute.
+ *
+ * @throws ValidationException the validation exception
+ */
+ protected final void validateAction(final QAAAttribute qaaAttribute)
+ throws ValidationException {
+ if (DatatypeHelper.isEmpty(qaaAttribute.getQaaLevel())) {
+ throw new ValidationException("QAALevel label must be specified.");
+ }
+
+ final int qaa = Integer.valueOf(qaaAttribute.getQaaLevel());
+
+ if (qaa < QAAAttribute.MIN_VALUE || qaa > QAAAttribute.MAX_VALUE) {
+ throw new ValidationException(
+ "QAALevel label must be greater than 0.");
+ }
+ }
+
+}