[java-opensaml COMMIT] in /trunk/opensaml-saml-api/src/main/java/org/opensaml/saml: saml1/binding/artifact/SAML1Artif...

noreply at shibboleth.net noreply at shibboleth.net
Tue Apr 29 00:43:55 EDT 2014


Author: scantor
Date: Tue Apr 29 00:43:54 2014
New Revision: 3823

URL: http://svn.shibboleth.net/view/java-opensaml?rev=3823&view=rev
Log:
Stop throwing runtime exceptions from artifact builders.

Added:
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/package-info.java   (with props)
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/artifact/package-info.java   (with props)
Modified:
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactBuilder.java
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0001Builder.java
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0002Builder.java
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/package.html
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/artifact/SAML2ArtifactBuilder.java
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/artifact/SAML2ArtifactType0004Builder.java
    trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml2/binding/artifact/package.html

Modified: trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactBuilder.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactBuilder.java?rev=3823&r1=3822&r2=3823&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactBuilder.java (original)
+++ trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactBuilder.java Tue Apr 29 00:43:54 2014
@@ -16,6 +16,11 @@
  */
 
 package org.opensaml.saml.saml1.binding.artifact;
+
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
+
+import net.shibboleth.utilities.java.support.annotation.constraint.NotEmpty;
 
 import org.opensaml.messaging.context.MessageContext;
 import org.opensaml.saml.common.SAMLObject;
@@ -36,9 +41,10 @@
      * @param requestContext request context
      * @param assertion assertion to build artifact for
      * 
-     * @return constructed artifcate
+     * @return constructed artifact
      */
-    public ArtifactType buildArtifact(MessageContext<SAMLObject> requestContext, Assertion assertion);
+    @Nullable ArtifactType buildArtifact(@Nonnull final MessageContext<SAMLObject> requestContext,
+            @Nonnull final Assertion assertion);
 
     /**
      * Builds a populated artifact given the artifact's byte-array representation.
@@ -47,6 +53,6 @@
      * 
      * @return populated artifact
      */
-    public ArtifactType buildArtifact(byte[] artifact);
+    @Nullable ArtifactType buildArtifact(@Nonnull @NotEmpty byte[] artifact);
 
-}
+}

Modified: trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0001Builder.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0001Builder.java?rev=3823&r1=3822&r2=3823&view=diff
==============================================================================
--- trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0001Builder.java (original)
+++ trunk/opensaml-saml-api/src/main/java/org/opensaml/saml/saml1/binding/artifact/SAML1ArtifactType0001Builder.java Tue Apr 29 00:43:54 2014
@@ -21,7 +21,8 @@
 import java.security.NoSuchAlgorithmException;
 import java.security.SecureRandom;
 
-import net.shibboleth.utilities.java.support.logic.Constraint;
+import javax.annotation.Nonnull;
+import javax.annotation.Nullable;
 
 import org.opensaml.messaging.context.MessageContext;
 import org.opensaml.saml.common.SAMLObject;
@@ -36,27 +37,40 @@
 public class SAML1ArtifactType0001Builder implements SAML1ArtifactBuilder<SAML1ArtifactType0001> {
 
     /** Class logger. */
-    private final Logger log = LoggerFactory.getLogger(SAML1ArtifactType0001Builder.class);
+    @Nonnull private final Logger log = LoggerFactory.getLogger(SAML1ArtifactType0001Builder.class);
 
     /** {@inheritDoc} */
-    public SAML1ArtifactType0001 buildArtifact(byte[] artifact) {
-        return SAML1ArtifactType0001.parseArtifact(artifact);
+    @Override
+    @Nullable public SAML1ArtifactType0001 buildArtifact(byte[] artifact) {
+        try {
+            return SAML1ArtifactType0001.parseArtifact(artifact);
+        } catch (final IllegalArgumentException e) {
+            log.warn("Error parsing type 1 artifact", e);
+            return null;
+        }
     }
 
     /** {@inheritDoc} */
-    public SAML1ArtifactType0001 buildArtifact(MessageContext<SAMLObject> requestContext, Assertion assertion) {
+    @Override
+    @Nullable public SAML1ArtifactType0001 buildArtifact(@Nonnull final MessageContext<SAMLObject> requestContext,

[... 337 lines stripped ...]


More information about the commits mailing list