[java-opensaml] branch main updated: IDP-2069 - Null Handling Task

Scott Cantor cantor.2 at osu.edu
Tue Apr 4 23:58:04 UTC 2023


This is an automated email from the git hooks/post-receive script.

scantor pushed a commit to branch main
in repository java-opensaml.

View the commit online:
http://git.shibboleth.net/view/?p=java-opensaml.git;a=commit;h=5652e44e28025cb837206dbc3f255de8aedc0222

The following commit(s) were added to refs/heads/main by this push:
     new 5652e44e2 IDP-2069 - Null Handling Task
5652e44e2 is described below

commit 5652e44e28025cb837206dbc3f255de8aedc0222
Author: Scott Cantor <cantor.2 at osu.edu>
AuthorDate: Tue Apr 4 19:57:58 2023 -0400

    IDP-2069 - Null Handling Task
    
    https://shibboleth.atlassian.net/browse/IDP-2069
    
    Clean unmarshallers.
---
 .../idpdisco/impl/DiscoveryResponseBuilder.java    |  1 +
 .../saml2alg/impl/DigestMethodUnmarshaller.java    | 11 ++---
 .../saml2alg/impl/SigningMethodUnmarshaller.java   | 11 ++---
 .../saml2aslo/impl/AsynchronousUnmarshaller.java   |  3 +-
 .../saml2cb/impl/ChannelBindingsUnmarshaller.java  |  4 +-
 .../impl/DelegateUnmarshaller.java                 | 31 ++++++++------
 .../DelegationRestrictionTypeUnmarshaller.java     | 15 ++++---
 .../impl/EntityAttributesUnmarshaller.java         |  8 +++-
 .../AttributeQueryDescriptorTypeUnmarshaller.java  | 16 +++++---
 .../impl/AuthnQueryDescriptorTypeUnmarshaller.java |  4 +-
 ...thzDecisionQueryDescriptorTypeUnmarshaller.java | 15 ++++---
 .../impl/QueryDescriptorTypeUnmarshaller.java      | 20 +++++----
 .../impl/PublicationInfoUnmarshaller.java          | 17 +++++---
 .../impl/PublicationPathUnmarshaller.java          |  9 +++--
 .../saml2mdrpi/impl/PublicationUnmarshaller.java   | 12 ++++--
 .../impl/RegistrationInfoUnmarshaller.java         | 17 +++++---
 .../ext/saml2mdui/impl/DiscoHintsUnmarshaller.java |  9 +++--
 .../ext/saml2mdui/impl/KeywordsUnmarshaller.java   | 14 ++++---
 .../saml/ext/saml2mdui/impl/LogoUnmarshaller.java  | 10 +++--
 .../ext/saml2mdui/impl/UIInfoUnmarshaller.java     | 12 ++++--
 .../ext/samlec/impl/GeneratedKeyUnmarshaller.java  |  7 ++--
 .../ext/samlec/impl/SessionKeyUnmarshaller.java    |  8 ++--
 .../saml/saml1/core/impl/ActionUnmarshaller.java   | 10 +++--
 .../saml/saml1/core/impl/AdviceUnmarshaller.java   | 20 ++++-----
 .../saml1/core/impl/AssertionUnmarshaller.java     | 40 ++++++++++--------
 .../core/impl/AttributeDesignatorUnmarshaller.java | 12 ++++--
 .../core/impl/AttributeQueryUnmarshaller.java      | 23 ++++++-----
 .../core/impl/AttributeStatementUnmarshaller.java  | 15 ++++---
 .../saml1/core/impl/AttributeUnmarshaller.java     | 14 ++++---
 .../AudienceRestrictionConditionUnmarshaller.java  | 16 +++++---
 .../core/impl/AuthenticationQueryUnmarshaller.java | 12 ++++--
 .../impl/AuthenticationStatementUnmarshaller.java  | 30 ++++++++------
 .../core/impl/AuthorityBindingUnmarshaller.java    |  3 +-
 .../AuthorizationDecisionQueryUnmarshaller.java    | 27 ++++++++-----
 ...AuthorizationDecisionStatementUnmarshaller.java | 31 ++++++++------
 .../saml1/core/impl/ConditionsUnmarshaller.java    | 16 +++++---
 .../core/impl/DoNotCacheConditionUnmarshaller.java |  3 +-
 .../saml/saml1/core/impl/EvidenceUnmarshaller.java | 20 +++++----
 .../core/impl/NameIdentifierUnmarshaller.java      | 12 ++++--
 .../core/impl/RequestAbstractTypeUnmarshaller.java | 30 ++++++++------
 .../saml/saml1/core/impl/RequestUnmarshaller.java  | 23 ++++++-----
 .../impl/ResponseAbstractTypeUnmarshaller.java     | 27 +++++++------
 .../saml/saml1/core/impl/ResponseUnmarshaller.java | 17 ++++----
 .../saml1/core/impl/StatusCodeUnmarshaller.java    | 23 ++++++-----
 .../saml1/core/impl/StatusDetailUnmarshaller.java  | 16 ++++----
 .../saml/saml1/core/impl/StatusUnmarshaller.java   | 23 ++++++-----
 .../core/impl/SubjectConfirmationUnmarshaller.java | 20 +++++----
 .../core/impl/SubjectLocalityUnmarshaller.java     | 14 ++++---
 .../saml1/core/impl/SubjectQueryUnmarshaller.java  | 15 ++++---
 .../core/impl/SubjectStatementUnmarshaller.java    | 17 ++++----
 .../saml/saml1/core/impl/SubjectUnmarshaller.java  | 19 +++++----
 .../saml/saml2/core/impl/ActionUnmarshaller.java   | 10 +++--
 .../saml/saml2/core/impl/AdviceUnmarshaller.java   |  7 +++-
 .../core/impl/ArtifactResolveUnmarshaller.java     | 15 ++++---
 .../core/impl/ArtifactResponseUnmarshaller.java    | 27 +++++++------
 .../core/impl/AssertionIDRequestUnmarshaller.java  | 15 ++++---
 .../saml2/core/impl/AssertionUnmarshaller.java     | 17 +++++---
 .../core/impl/AttributeQueryUnmarshaller.java      | 15 ++++---
 .../core/impl/AttributeStatementUnmarshaller.java  |  7 +++-
 .../saml2/core/impl/AttributeUnmarshaller.java     | 24 ++++++-----
 .../core/impl/AudienceRestrictionUnmarshaller.java |  7 +++-
 .../saml2/core/impl/AuthnContextUnmarshaller.java  |  8 +++-
 .../saml2/core/impl/AuthnQueryUnmarshaller.java    | 23 ++++++-----
 .../saml2/core/impl/AuthnRequestUnmarshaller.java  | 41 ++++++++++---------
 .../core/impl/AuthnStatementUnmarshaller.java      | 17 +++++---
 .../core/impl/AuthzDecisionQueryUnmarshaller.java  | 27 ++++++++-----
 .../impl/AuthzDecisionStatementUnmarshaller.java   | 15 ++++---
 .../saml/saml2/core/impl/BaseIDUnmarshaller.java   | 14 ++++---
 .../saml2/core/impl/ConditionsUnmarshaller.java    | 17 +++++---
 .../core/impl/EncryptedAssertionUnmarshaller.java  |  6 ++-
 .../core/impl/EncryptedAttributeUnmarshaller.java  |  6 ++-
 .../impl/EncryptedElementTypeUnmarshaller.java     | 21 +++++-----
 .../saml2/core/impl/EncryptedIDUnmarshaller.java   |  6 ++-
 .../saml/saml2/core/impl/EvidenceUnmarshaller.java |  8 +++-
 .../saml2/core/impl/ExtensionsUnmarshaller.java    | 22 +++++-----
 .../saml/saml2/core/impl/IDPEntryUnmarshaller.java | 14 ++++---
 .../saml/saml2/core/impl/IDPListUnmarshaller.java  | 20 +++++----
 .../saml2/core/impl/LogoutRequestUnmarshaller.java | 37 +++++++++--------
 .../core/impl/LogoutResponseUnmarshaller.java      |  4 +-
 .../core/impl/ManageNameIDRequestUnmarshaller.java | 31 +++++++-------
 .../impl/ManageNameIDResponseUnmarshaller.java     |  4 +-
 .../impl/NameIDMappingRequestUnmarshaller.java     | 28 +++++++------
 .../impl/NameIDMappingResponseUnmarshaller.java    | 19 +++++----
 .../saml2/core/impl/NameIDPolicyUnmarshaller.java  | 14 ++++---
 .../saml2/core/impl/NameIDTypeUnmarshaller.java    | 12 ++++--
 .../core/impl/NewEncryptedIDUnmarshaller.java      |  6 ++-
 .../saml2/core/impl/OneTimeUseUnmarshaller.java    |  3 +-
 .../core/impl/ProxyRestrictionUnmarshaller.java    | 15 ++++---
 .../core/impl/RequestAbstractTypeUnmarshaller.java | 33 ++++++++-------
 .../impl/RequestedAuthnContextUnmarshaller.java    | 27 ++++++++-----
 .../saml/saml2/core/impl/ResponseUnmarshaller.java | 21 +++++-----
 .../saml/saml2/core/impl/ScopingUnmarshaller.java  | 27 ++++++++-----
 .../saml2/core/impl/StatusCodeUnmarshaller.java    | 23 ++++++-----
 .../saml2/core/impl/StatusDetailUnmarshaller.java  | 12 ++++--
 .../core/impl/StatusResponseTypeUnmarshaller.java  | 35 +++++++++-------
 .../saml/saml2/core/impl/StatusUnmarshaller.java   | 24 ++++++-----
 .../impl/SubjectConfirmationDataUnmarshaller.java  | 20 +++++----
 .../core/impl/SubjectConfirmationUnmarshaller.java | 15 ++++---
 .../core/impl/SubjectLocalityUnmarshaller.java     | 12 ++++--
 .../saml2/core/impl/SubjectQueryUnmarshaller.java  | 16 +++++---
 .../saml/saml2/core/impl/SubjectUnmarshaller.java  |  8 +++-
 .../saml2/core/impl/TerminateUnmarshaller.java     |  3 +-
 .../saml2/ecp/impl/RelayStateUnmarshaller.java     |  3 +-
 .../ecp/impl/RequestAuthenticatedUnmarshaller.java |  1 +
 .../saml/saml2/ecp/impl/RequestUnmarshaller.java   | 24 ++++++-----
 .../saml/saml2/ecp/impl/ResponseUnmarshaller.java  |  9 +++--
 .../ecp/impl/SubjectConfirmationUnmarshaller.java  |  8 ++--
 .../AdditionalMetadataLocationUnmarshaller.java    | 10 +++--
 .../impl/AffiliationDescriptorUnmarshaller.java    | 35 +++++++++-------
 .../AttributeAuthorityDescriptorUnmarshaller.java  | 34 +++++++++-------
 .../AttributeConsumingServiceUnmarshaller.java     | 34 +++++++++-------
 .../impl/AuthnAuthorityDescriptorUnmarshaller.java | 24 ++++++-----
 .../metadata/impl/ContactPersonUnmarshaller.java   | 44 +++++++++++---------
 .../saml2/metadata/impl/EndpointUnmarshaller.java  | 20 +++++----
 .../impl/EntitiesDescriptorUnmarshaller.java       | 37 +++++++++--------
 .../impl/EntityDescriptorUnmarshaller.java         | 47 ++++++++++++----------
 .../metadata/impl/ExtensionsUnmarshaller.java      | 26 ++++++------
 .../impl/IDPSSODescriptorUnmarshaller.java         | 15 ++++---
 .../metadata/impl/IndexedEndpointUnmarshaller.java | 14 ++++---
 .../metadata/impl/KeyDescriptorUnmarshaller.java   | 27 ++++++++-----
 .../metadata/impl/LocalizedNameUnmarshaller.java   | 11 +++--
 .../metadata/impl/LocalizedURIUnmarshaller.java    | 11 +++--
 .../metadata/impl/OrganizationUnmarshaller.java    | 35 +++++++++-------
 .../metadata/impl/PDPDescriptorUnmarshaller.java   | 26 +++++++-----
 .../impl/RequestedAttributeUnmarshaller.java       | 12 ++++--
 .../metadata/impl/RoleDescriptorUnmarshaller.java  | 39 ++++++++++--------
 .../metadata/impl/SPSSODescriptorUnmarshaller.java | 29 +++++++------
 .../metadata/impl/SSODescriptorUnmarshaller.java   | 29 +++++++------
 128 files changed, 1362 insertions(+), 902 deletions(-)

diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/idpdisco/impl/DiscoveryResponseBuilder.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/idpdisco/impl/DiscoveryResponseBuilder.java
index 440341c1a..0fdce5ef6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/idpdisco/impl/DiscoveryResponseBuilder.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/idpdisco/impl/DiscoveryResponseBuilder.java
@@ -35,6 +35,7 @@ public class DiscoveryResponseBuilder extends AbstractSAMLObjectBuilder<Discover
     }
 
     /** {@inheritDoc} */
+    @Override
     @Nonnull public DiscoveryResponse buildObject(@Nullable final String namespaceURI, @Nonnull final String localName,
             @Nullable final String namespacePrefix) {
         return new DiscoveryResponseImpl(namespaceURI, localName, namespacePrefix);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/DigestMethodUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/DigestMethodUnmarshaller.java
index 1e33fbd89..591ac6093 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/DigestMethodUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/DigestMethodUnmarshaller.java
@@ -26,19 +26,20 @@ import org.opensaml.saml.ext.saml2alg.DigestMethod;
 import org.w3c.dom.Attr;
 
 /**
- * DigestMethod unmarshaller.
+ * Unmarshaller for {@link DigestMethod}.
  */
 public class DigestMethodUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(@Nonnull final XMLObject parentXMLObject,
-            @Nonnull final XMLObject childXMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final DigestMethod digestMethod = (DigestMethod) parentXMLObject;
-        digestMethod.getUnknownXMLObjects().add(childXMLObject);
+        final DigestMethod digestMethod = (DigestMethod) parentObject;
+        digestMethod.getUnknownXMLObjects().add(childObject);
     }
 
     /** {@inheritDoc} */
+    @Override
     protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute) 
             throws UnmarshallingException {
         final DigestMethod digestMethod = (DigestMethod) xmlObject;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/SigningMethodUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/SigningMethodUnmarshaller.java
index ca5e719a7..ddb9f1b24 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/SigningMethodUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2alg/impl/SigningMethodUnmarshaller.java
@@ -26,19 +26,20 @@ import org.opensaml.saml.ext.saml2alg.SigningMethod;
 import org.w3c.dom.Attr;
 
 /**
- * SigningMethod unmarshaller.
+ * Unmarshaller for {@link SigningMethod}.
  */
 public class SigningMethodUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(@Nonnull final XMLObject parentXMLObject,
-            @Nonnull final XMLObject childXMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SigningMethod signingMethod = (SigningMethod) parentXMLObject;
-        signingMethod.getUnknownXMLObjects().add(childXMLObject);
+        final SigningMethod signingMethod = (SigningMethod) parentObject;
+        signingMethod.getUnknownXMLObjects().add(childObject);
     }
 
     /** {@inheritDoc} */
+    @Override
     protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute) 
             throws UnmarshallingException {
         final SigningMethod signingMethod = (SigningMethod) xmlObject;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2aslo/impl/AsynchronousUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2aslo/impl/AsynchronousUnmarshaller.java
index 7826be44d..08a595e27 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2aslo/impl/AsynchronousUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2aslo/impl/AsynchronousUnmarshaller.java
@@ -22,10 +22,11 @@
 package org.opensaml.saml.ext.saml2aslo.impl;
 
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
+import org.opensaml.saml.ext.saml2aslo.Asynchronous;
 
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.ext.saml2aslo.Asynchronous} objects.
+ * A thread-safe Unmarshaller for {@link Asynchronous} objects.
  */
 public class AsynchronousUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2cb/impl/ChannelBindingsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2cb/impl/ChannelBindingsUnmarshaller.java
index 64385259b..84852deec 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2cb/impl/ChannelBindingsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2cb/impl/ChannelBindingsUnmarshaller.java
@@ -35,7 +35,9 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class ChannelBindingsUnmarshaller extends XSBase64BinaryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute) 
+            throws UnmarshallingException {
         final ChannelBindings cb = (ChannelBindings) xmlObject;
         
         final QName attrName = QNameSupport.getNodeQName(attribute);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegateUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegateUnmarshaller.java
index 404c0f8f4..23aa4c989 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegateUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegateUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2delrestrict.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -34,8 +36,10 @@ import net.shibboleth.shared.xml.DOMTypeSupport;
 public class DelegateUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Delegate delegate = (Delegate) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute) 
+            throws UnmarshallingException {
+        final Delegate delegate = (Delegate) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             final String attrName = attribute.getLocalName();
@@ -44,26 +48,27 @@ public class DelegateUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             } else if (Delegate.DELEGATION_INSTANT_ATTRIB_NAME.equals(attrName)) {
                 delegate.setDelegationInstant(DOMTypeSupport.stringToInstant(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Delegate delegate = (Delegate) parentSAMLObject;
+        final Delegate delegate = (Delegate) parentObject;
         
-        if (childSAMLObject instanceof BaseID) {
-            delegate.setBaseID((BaseID) childSAMLObject);
-        } else if (childSAMLObject instanceof NameID) {
-            delegate.setNameID((NameID) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedID) {
-            delegate.setEncryptedID((EncryptedID) childSAMLObject);
+        if (childObject instanceof BaseID) {
+            delegate.setBaseID((BaseID) childObject);
+        } else if (childObject instanceof NameID) {
+            delegate.setNameID((NameID) childObject);
+        } else if (childObject instanceof EncryptedID) {
+            delegate.setEncryptedID((EncryptedID) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegationRestrictionTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegationRestrictionTypeUnmarshaller.java
index 0ec9cf816..2d9afe917 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegationRestrictionTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2delrestrict/impl/DelegationRestrictionTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2delrestrict.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -29,15 +31,16 @@ import org.opensaml.saml.ext.saml2delrestrict.DelegationRestrictionType;
 public class DelegationRestrictionTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final DelegationRestrictionType drt = (DelegationRestrictionType) parentSAMLObject;
+        final DelegationRestrictionType drt = (DelegationRestrictionType) parentObject;
         
-        if (childSAMLObject instanceof Delegate) {
-            drt.getDelegates().add((Delegate) childSAMLObject);
+        if (childObject instanceof Delegate) {
+            drt.getDelegates().add((Delegate) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdattr/impl/EntityAttributesUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdattr/impl/EntityAttributesUnmarshaller.java
index ff89825dd..ae2e57e92 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdattr/impl/EntityAttributesUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdattr/impl/EntityAttributesUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdattr.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -24,11 +26,12 @@ import org.opensaml.saml.ext.saml2mdattr.EntityAttributes;
 import org.opensaml.saml.saml2.core.Assertion;
 import org.opensaml.saml.saml2.core.Attribute;
 
-/** A thread-safe Unmarshaller for {@link org.opensaml.saml.ext.saml2mdattr.EntityAttributes}. */
+/** A thread-safe Unmarshaller for {@link EntityAttributes}. */
 public class EntityAttributesUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final EntityAttributes entityAttrs = (EntityAttributes) parentObject;
 
@@ -40,4 +43,5 @@ public class EntityAttributesUnmarshaller extends AbstractSAMLObjectUnmarshaller
             super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AttributeQueryDescriptorTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AttributeQueryDescriptorTypeUnmarshaller.java
index e05c9e60f..05ab39292 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AttributeQueryDescriptorTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AttributeQueryDescriptorTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdquery.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.ext.saml2mdquery.AttributeQueryDescriptorType;
@@ -28,14 +30,16 @@ import org.opensaml.saml.saml2.metadata.AttributeConsumingService;
 public class AttributeQueryDescriptorTypeUnmarshaller extends QueryDescriptorTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
-            throws UnmarshallingException {
-        final AttributeQueryDescriptorType descriptor = (AttributeQueryDescriptorType) parentSAMLObject;
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
+        final AttributeQueryDescriptorType descriptor = (AttributeQueryDescriptorType) parentObject;
 
-        if (childSAMLObject instanceof AttributeConsumingService) {
-            descriptor.getAttributeConsumingServices().add((AttributeConsumingService) childSAMLObject);
+        if (childObject instanceof AttributeConsumingService) {
+            descriptor.getAttributeConsumingServices().add((AttributeConsumingService) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthnQueryDescriptorTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthnQueryDescriptorTypeUnmarshaller.java
index ffb2f925f..e0d3496b3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthnQueryDescriptorTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthnQueryDescriptorTypeUnmarshaller.java
@@ -17,8 +17,10 @@
 
 package org.opensaml.saml.ext.saml2mdquery.impl;
 
+import org.opensaml.saml.ext.saml2mdquery.AuthnQueryDescriptorType;
+
 /**
- * Unmarshaller of {@link org.opensaml.saml.ext.saml2mdquery.AuthnQueryDescriptorType} objects.
+ * Unmarshaller of {@link AuthnQueryDescriptorType} objects.
  */
 public class AuthnQueryDescriptorTypeUnmarshaller extends QueryDescriptorTypeUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthzDecisionQueryDescriptorTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthzDecisionQueryDescriptorTypeUnmarshaller.java
index da592df6f..5bfaec848 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthzDecisionQueryDescriptorTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/AuthzDecisionQueryDescriptorTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdquery.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.ext.saml2mdquery.ActionNamespace;
@@ -26,14 +28,15 @@ import org.opensaml.saml.ext.saml2mdquery.AuthzDecisionQueryDescriptorType;
 public class AuthzDecisionQueryDescriptorTypeUnmarshaller extends QueryDescriptorTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
-            throws UnmarshallingException {
-        final AuthzDecisionQueryDescriptorType descriptor = (AuthzDecisionQueryDescriptorType) parentSAMLObject;
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
+        final AuthzDecisionQueryDescriptorType descriptor = (AuthzDecisionQueryDescriptorType) parentObject;
 
-        if (childSAMLObject instanceof ActionNamespace) {
-            descriptor.getActionNamespaces().add((ActionNamespace) childSAMLObject);
+        if (childObject instanceof ActionNamespace) {
+            descriptor.getActionNamespaces().add((ActionNamespace) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/QueryDescriptorTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/QueryDescriptorTypeUnmarshaller.java
index 2a00c514b..6302dbbb5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/QueryDescriptorTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdquery/impl/QueryDescriptorTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdquery.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -29,19 +31,22 @@ import org.w3c.dom.Attr;
 public class QueryDescriptorTypeUnmarshaller extends RoleDescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
-            throws UnmarshallingException {
-        final QueryDescriptorType descriptor = (QueryDescriptorType) parentSAMLObject;
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
+        final QueryDescriptorType descriptor = (QueryDescriptorType) parentObject;
 
-        if (childSAMLObject instanceof NameIDFormat) {
-            descriptor.getNameIDFormat().add((NameIDFormat) childSAMLObject);
+        if (childObject instanceof NameIDFormat) {
+            descriptor.getNameIDFormat().add((NameIDFormat) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
         final QueryDescriptorType descriptor = (QueryDescriptorType) samlObject;
 
         if (attribute.getLocalName().equals(QueryDescriptorType.WANT_ASSERTIONS_SIGNED_ATTRIB_NAME)
@@ -51,4 +56,5 @@ public class QueryDescriptorTypeUnmarshaller extends RoleDescriptorUnmarshaller
             super.processAttribute(samlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationInfoUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationInfoUnmarshaller.java
index 2d07ebbc3..a23c316fd 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationInfoUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationInfoUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdrpi.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -32,8 +34,9 @@ import net.shibboleth.shared.xml.DOMTypeSupport;
 public class PublicationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
-            throws UnmarshallingException {
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
         final PublicationInfo info = (PublicationInfo) parentObject;
 
         if (childObject instanceof UsagePolicy) {
@@ -44,8 +47,10 @@ public class PublicationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final PublicationInfo info = (PublicationInfo) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final PublicationInfo info = (PublicationInfo) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (PublicationInfo.PUBLISHER_ATTRIB_NAME.equals(attribute.getName())) {
@@ -55,10 +60,10 @@ public class PublicationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (PublicationInfo.PUBLICATION_ID_ATTRIB_NAME.equals(attribute.getName())) {
                 info.setPublicationId(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationPathUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationPathUnmarshaller.java
index 9a40c7cc2..27cb22959 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationPathUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationPathUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdrpi.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -30,8 +32,9 @@ import org.opensaml.saml.ext.saml2mdrpi.PublicationPath;
 public class PublicationPathUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
-            throws UnmarshallingException {
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
         final PublicationPath pPath = (PublicationPath) parentObject;
 
         if (childObject instanceof Publication) {
@@ -41,4 +44,4 @@ public class PublicationPathUnmarshaller extends AbstractSAMLObjectUnmarshaller
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationUnmarshaller.java
index a46245c32..87340a30d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/PublicationUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdrpi.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -31,8 +33,10 @@ import net.shibboleth.shared.xml.DOMTypeSupport;
 public class PublicationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Publication info = (Publication) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Publication info = (Publication) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (Publication.PUBLISHER_ATTRIB_NAME.equals(attribute.getName())) {
@@ -42,10 +46,10 @@ public class PublicationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             } else if (Publication.PUBLICATION_ID_ATTRIB_NAME.equals(attribute.getName())) {
                 info.setPublicationId(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/RegistrationInfoUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/RegistrationInfoUnmarshaller.java
index 374ebc6b0..c5b17ff25 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/RegistrationInfoUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdrpi/impl/RegistrationInfoUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdrpi.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -32,8 +34,9 @@ import net.shibboleth.shared.xml.DOMTypeSupport;
 public class RegistrationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
-            throws UnmarshallingException {
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject,
+            @Nonnull final XMLObject childObject) throws UnmarshallingException {
         final RegistrationInfo info = (RegistrationInfo) parentObject;
         
         if (childObject instanceof RegistrationPolicy) {
@@ -44,8 +47,10 @@ public class RegistrationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller
     }
     
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final RegistrationInfo info = (RegistrationInfo) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RegistrationInfo info = (RegistrationInfo) xmlObject;
         
         if (attribute.getNamespaceURI() == null) {
             if (RegistrationInfo.REGISTRATION_AUTHORITY_ATTRIB_NAME.equals(attribute.getName())) {
@@ -53,10 +58,10 @@ public class RegistrationInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (RegistrationInfo.REGISTRATION_INSTANT_ATTRIB_NAME.equals(attribute.getName())) {
                 info.setRegistrationInstant(DOMTypeSupport.stringToInstant(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/DiscoHintsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/DiscoHintsUnmarshaller.java
index 791563dcd..c29513172 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/DiscoHintsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/DiscoHintsUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdui.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,10 +30,11 @@ import org.opensaml.saml.ext.saml2mdui.DiscoHints;
 public class DiscoHintsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final DiscoHints info = (DiscoHints) parentSAMLObject;
-        info.getXMLObjects().add(childSAMLObject);
+        final DiscoHints info = (DiscoHints) parentObject;
+        info.getXMLObjects().add(childObject);
     }
 
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/KeywordsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/KeywordsUnmarshaller.java
index f6803c1a4..d02d32c2a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/KeywordsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/KeywordsUnmarshaller.java
@@ -19,6 +19,8 @@ package org.opensaml.saml.ext.saml2mdui.impl;
 
 import java.util.ArrayList;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.LangBearing;
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
@@ -29,7 +31,7 @@ import org.w3c.dom.Attr;
 import net.shibboleth.shared.xml.XMLConstants;
 
 /**
- * A thread-safe unmarshaller for {@link org.opensaml.saml.ext.saml2mdui.Keywords} objects.
+ * A thread-safe unmarshaller for {@link Keywords} objects.
  */
 public class KeywordsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
@@ -37,10 +39,11 @@ public class KeywordsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
      * {@inheritDoc}
      */
     @Override
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
         if (attribute.getLocalName().equals(LangBearing.XML_LANG_ATTR_LOCAL_NAME)
                 && XMLConstants.XML_NS.equals(attribute.getNamespaceURI())) {
-            final Keywords keywords = (Keywords) samlObject;
+            final Keywords keywords = (Keywords) xmlObject;
 
             keywords.setXMLLang(attribute.getValue());
         }
@@ -48,8 +51,8 @@ public class KeywordsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
     @Override
-    protected void processElementContent(final XMLObject samlObject, final String elementContent) {
-        final Keywords keywords = (Keywords) samlObject;
+    protected void processElementContent(@Nonnull final XMLObject xmlObject, @Nonnull final String elementContent) {
+        final Keywords keywords = (Keywords) xmlObject;
         final String[] words = elementContent.split("\\s+");
         final ArrayList<String> wordlist = new ArrayList<>(words.length);
         
@@ -59,4 +62,5 @@ public class KeywordsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
         keywords.setKeywords(wordlist);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/LogoUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/LogoUnmarshaller.java
index aad8bac7d..aa42398c7 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/LogoUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/LogoUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.ext.saml2mdui.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.ext.saml2mdui.Logo;
@@ -29,15 +31,17 @@ import org.w3c.dom.Attr;
 public class LogoUnmarshaller extends LocalizedURIUnmarshaller {
     
     /**  {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Logo logo = (Logo) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Logo logo = (Logo) xmlObject;
 
         if (attribute.getLocalName().equals(Logo.HEIGHT_ATTR_NAME) && attribute.getNamespaceURI() == null) {
             logo.setHeight(Integer.valueOf(attribute.getValue()));
         } else if (attribute.getLocalName().equals(Logo.WIDTH_ATTR_NAME) && attribute.getNamespaceURI() == null) {
             logo.setWidth(Integer.valueOf(attribute.getValue()));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/UIInfoUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/UIInfoUnmarshaller.java
index 374ad9778..b14e38ab4 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/UIInfoUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/saml2mdui/impl/UIInfoUnmarshaller.java
@@ -17,20 +17,24 @@
 
 package org.opensaml.saml.ext.saml2mdui.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.ext.saml2mdui.UIInfo;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.ext.saml2mdui.UIInfo} objects.
+ * A thread-safe Unmarshaller for {@link UIInfo} objects.
  */
 public class UIInfoUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final UIInfo info = (UIInfo) parentSAMLObject;
-        info.getXMLObjects().add(childSAMLObject);
+        final UIInfo info = (UIInfo) parentObject;
+        info.getXMLObjects().add(childObject);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/GeneratedKeyUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/GeneratedKeyUnmarshaller.java
index 2e222d8a8..a3b3e5da3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/GeneratedKeyUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/GeneratedKeyUnmarshaller.java
@@ -35,9 +35,10 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class GeneratedKeyUnmarshaller extends XSBase64BinaryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
-        final GeneratedKey key = (GeneratedKey) samlObject;
+        final GeneratedKey key = (GeneratedKey) xmlObject;
 
         final QName attrName = QNameSupport.getNodeQName(attribute);
         if (GeneratedKey.SOAP11_MUST_UNDERSTAND_ATTR_NAME.equals(attrName)) {
@@ -45,7 +46,7 @@ public class GeneratedKeyUnmarshaller extends XSBase64BinaryUnmarshaller {
         } else if (GeneratedKey.SOAP11_ACTOR_ATTR_NAME.equals(attrName)) {
             key.setSOAP11Actor(attribute.getValue()); 
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/SessionKeyUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/SessionKeyUnmarshaller.java
index 378a9531b..a9e673b4e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/SessionKeyUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/ext/samlec/impl/SessionKeyUnmarshaller.java
@@ -37,6 +37,7 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class SessionKeyUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
+    @Override
     protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final SessionKey key = (SessionKey) parentObject;
@@ -51,9 +52,10 @@ public class SessionKeyUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
-        final SessionKey key = (SessionKey) samlObject;
+        final SessionKey key = (SessionKey) xmlObject;
 
         final QName attrName = QNameSupport.getNodeQName(attribute);
         if (SessionKey.SOAP11_MUST_UNDERSTAND_ATTR_NAME.equals(attrName)) {
@@ -64,7 +66,7 @@ public class SessionKeyUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                 && attribute.getNamespaceURI() == null) {
             key.setAlgorithm(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ActionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ActionUnmarshaller.java
index caf64790c..392425d3f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ActionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ActionUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.impl.XSStringUnmarshaller;
@@ -29,13 +31,15 @@ import org.w3c.dom.Attr;
 public class ActionUnmarshaller extends XSStringUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
         if (Action.NAMESPACE_ATTRIB_NAME.equals(attribute.getLocalName()) && attribute.getNamespaceURI() == null) {
-            final Action action = (Action) samlObject;
+            final Action action = (Action) xmlObject;
             action.setNamespace(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AdviceUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AdviceUnmarshaller.java
index 608bf0f3c..b7494a7ef 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AdviceUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AdviceUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -25,22 +27,22 @@ import org.opensaml.saml.saml1.core.Assertion;
 import org.opensaml.saml.saml1.core.AssertionIDReference;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Advice} objects.
+ * A thread-safe Unmarshaller for {@link Advice} objects.
  */
 public class AdviceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
+        final Advice advice = (Advice) parentObject;
 
-        final Advice advice = (Advice) parentSAMLObject;
-
-        if (childSAMLObject instanceof Assertion) {
-            advice.getAssertions().add((Assertion) childSAMLObject);
-        } else if (childSAMLObject instanceof AssertionIDReference) {
-            advice.getAssertionIDReferences().add((AssertionIDReference) childSAMLObject);
+        if (childObject instanceof Assertion) {
+            advice.getAssertions().add((Assertion) childObject);
+        } else if (childObject instanceof AssertionIDReference) {
+            advice.getAssertionIDReferences().add((AssertionIDReference) childObject);
         } else {
-            advice.getUnknownXMLObjects().add(childSAMLObject);
+            advice.getUnknownXMLObjects().add(childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AssertionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AssertionUnmarshaller.java
index fecba922d..f8b680152 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AssertionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AssertionUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.util.XMLObjectSupport;
@@ -35,12 +37,13 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Assertion} objects.
+ * A thread-safe Unmarshaller for {@link Assertion} objects.
  */
 public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    public XMLObject unmarshall(final Element domElement) throws UnmarshallingException {
+    @Override
+    @Nonnull public XMLObject unmarshall(@Nonnull final Element domElement) throws UnmarshallingException {
         // After regular unmarshalling, check the minor version and set ID-ness if not SAML 1.0
         final Assertion assertion = (Assertion) super.unmarshall(domElement);
         if (assertion.getMinorVersion() != 0 && !Strings.isNullOrEmpty(assertion.getID())) {
@@ -50,29 +53,32 @@ public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Assertion assertion = (Assertion) parentSAMLObject;
+        final Assertion assertion = (Assertion) parentObject;
 
-        if (childSAMLObject instanceof Signature) {
-            assertion.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof Conditions) {
-            assertion.setConditions((Conditions) childSAMLObject);
-        } else if (childSAMLObject instanceof Advice) {
-            assertion.setAdvice((Advice) childSAMLObject);
-        } else if (childSAMLObject instanceof Statement) {
-            assertion.getStatements().add((Statement) childSAMLObject);
+        if (childObject instanceof Signature) {
+            assertion.setSignature((Signature) childObject);
+        } else if (childObject instanceof Conditions) {
+            assertion.setConditions((Conditions) childObject);
+        } else if (childObject instanceof Advice) {
+            assertion.setAdvice((Advice) childObject);
+        } else if (childObject instanceof Statement) {
+            assertion.getStatements().add((Statement) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
 // Checkstyle: CyclomaticComplexity OFF
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
-        final Assertion assertion = (Assertion) samlObject;
+        final Assertion assertion = (Assertion) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (Assertion.ID_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -105,10 +111,10 @@ public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                     assertion.setVersion(SAMLVersion.VERSION_11);
                 }
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 // Checkstyle: CyclomaticComplexity ON
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeDesignatorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeDesignatorUnmarshaller.java
index c11a0f582..101fd6467 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeDesignatorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeDesignatorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -27,9 +29,11 @@ import org.w3c.dom.Attr;
 public class AttributeDesignatorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
-        final AttributeDesignator designator = (AttributeDesignator) samlObject;
+        final AttributeDesignator designator = (AttributeDesignator) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (AttributeDesignator.ATTRIBUTENAME_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -37,10 +41,10 @@ public class AttributeDesignatorUnmarshaller extends AbstractSAMLObjectUnmarshal
             } else if (AttributeDesignator.ATTRIBUTENAMESPACE_ATTRIB_NAME.equals(attribute.getLocalName())) {
                 designator.setAttributeNamespace(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeQueryUnmarshaller.java
index 596d1bf4e..557e5df4c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeQueryUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.AttributeDesignator;
@@ -24,33 +26,36 @@ import org.opensaml.saml.saml1.core.AttributeQuery;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AttributeQuery} objects.
+ * A thread-safe Unmarshaller for {@link AttributeQuery} objects.
  */
 public class AttributeQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final AttributeQuery attributeQuery = (AttributeQuery) parentSAMLObject;
+        final AttributeQuery attributeQuery = (AttributeQuery) parentObject;
 
-        if (childSAMLObject instanceof AttributeDesignator) {
-            attributeQuery.getAttributeDesignators().add((AttributeDesignator) childSAMLObject);
+        if (childObject instanceof AttributeDesignator) {
+            attributeQuery.getAttributeDesignators().add((AttributeDesignator) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
-        final AttributeQuery attributeQuery = (AttributeQuery) samlObject;
+        final AttributeQuery attributeQuery = (AttributeQuery) xmlObject;
 
         if (attribute.getLocalName().equals(AttributeQuery.RESOURCE_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             attributeQuery.setResource(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeStatementUnmarshaller.java
index 06e395023..16708de9e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeStatementUnmarshaller.java
@@ -17,26 +17,29 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.Attribute;
 import org.opensaml.saml.saml1.core.AttributeStatement;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AttributeStatement} objects.
+ * A thread-safe Unmarshaller for {@link AttributeStatement} objects.
  */
 public class AttributeStatementUnmarshaller extends SubjectStatementUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final AttributeStatement attributeStatement = (AttributeStatement) parentSAMLObject;
+        final AttributeStatement attributeStatement = (AttributeStatement) parentObject;
 
-        if (childSAMLObject instanceof Attribute) {
-            attributeStatement.getAttributes().add((Attribute) childSAMLObject);
+        if (childObject instanceof Attribute) {
+            attributeStatement.getAttributes().add((Attribute) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeUnmarshaller.java
index 349ccec2e..19f64d98d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AttributeUnmarshaller.java
@@ -17,6 +17,7 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
 import javax.xml.namespace.QName;
 
 import org.opensaml.core.xml.XMLObject;
@@ -25,22 +26,23 @@ import org.opensaml.saml.common.xml.SAMLConstants;
 import org.opensaml.saml.saml1.core.Attribute;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.impl.Attribute} objects.
+ * A thread-safe Unmarshaller for {@link Attribute} objects.
  */
 public class AttributeUnmarshaller extends AttributeDesignatorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Attribute attribute = (Attribute) parentSAMLObject;
+        final Attribute attribute = (Attribute) parentObject;
 
-        final QName childQName = childSAMLObject.getElementQName();
+        final QName childQName = childObject.getElementQName();
         if ("AttributeValue".equals(childQName.getLocalPart())
                 && childQName.getNamespaceURI().equals(SAMLConstants.SAML1_NS)) {
-            attribute.getAttributeValues().add(childSAMLObject);
+            attribute.getAttributeValues().add(childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AudienceRestrictionConditionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AudienceRestrictionConditionUnmarshaller.java
index dcd983e97..25880f424 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AudienceRestrictionConditionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AudienceRestrictionConditionUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -24,21 +26,23 @@ import org.opensaml.saml.saml1.core.Audience;
 import org.opensaml.saml.saml1.core.AudienceRestrictionCondition;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AudienceRestrictionCondition} objects.
+ * A thread-safe Unmarshaller for {@link AudienceRestrictionCondition} objects.
  */
 public class AudienceRestrictionConditionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
         final AudienceRestrictionCondition audienceRestrictionCondition =
-                (AudienceRestrictionCondition) parentSAMLObject;
+                (AudienceRestrictionCondition) parentObject;
 
-        if (childSAMLObject instanceof Audience) {
-            audienceRestrictionCondition.getAudiences().add((Audience) childSAMLObject);
+        if (childObject instanceof Audience) {
+            audienceRestrictionCondition.getAudiences().add((Audience) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationQueryUnmarshaller.java
index 3790884d4..6e2990dfe 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationQueryUnmarshaller.java
@@ -17,25 +17,29 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.AuthenticationQuery;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AuthenticationQuery} objects.
+ * A thread-safe Unmarshaller for {@link AuthenticationQuery} objects.
  */
 public class AuthenticationQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthenticationQuery authenticationQuery = (AuthenticationQuery) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthenticationQuery authenticationQuery = (AuthenticationQuery) xmlObject;
 
         if (AuthenticationQuery.AUTHENTICATIONMETHOD_ATTRIB_NAME.equals(attribute.getLocalName())
                 && attribute.getNamespaceURI() == null) {
             authenticationQuery.setAuthenticationMethod(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationStatementUnmarshaller.java
index 6add20c6d..f43ce188e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthenticationStatementUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.AuthenticationStatement;
@@ -29,28 +31,31 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AuthenticationStatement} objects.
+ * A thread-safe Unmarshaller for {@link AuthenticationStatement} objects.
  */
 public class AuthenticationStatementUnmarshaller extends SubjectStatementUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final AuthenticationStatement authenticationStatement = (AuthenticationStatement) parentSAMLObject;
+        final AuthenticationStatement authenticationStatement = (AuthenticationStatement) parentObject;
 
-        if (childSAMLObject instanceof SubjectLocality) {
-            authenticationStatement.setSubjectLocality((SubjectLocality) childSAMLObject);
-        } else if (childSAMLObject instanceof AuthorityBinding) {
-            authenticationStatement.getAuthorityBindings().add((AuthorityBinding) childSAMLObject);
+        if (childObject instanceof SubjectLocality) {
+            authenticationStatement.setSubjectLocality((SubjectLocality) childObject);
+        } else if (childObject instanceof AuthorityBinding) {
+            authenticationStatement.getAuthorityBindings().add((AuthorityBinding) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthenticationStatement authenticationStatement = (AuthenticationStatement) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthenticationStatement authenticationStatement = (AuthenticationStatement) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (AuthenticationStatement.AUTHENTICATIONINSTANT_ATTRIB_NAME.equals(attribute.getLocalName())
@@ -60,10 +65,11 @@ public class AuthenticationStatementUnmarshaller extends SubjectStatementUnmarsh
             } else if (AuthenticationStatement.AUTHENTICATIONMETHOD_ATTRIB_NAME.equals(attribute.getLocalName())) {
                 authenticationStatement.setAuthenticationMethod(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorityBindingUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorityBindingUnmarshaller.java
index f7e521bfa..eaaed3b98 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorityBindingUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorityBindingUnmarshaller.java
@@ -28,8 +28,7 @@ import org.w3c.dom.Attr;
 import net.shibboleth.shared.xml.AttributeSupport;
 
 /**
- * A thread-safe {@link org.opensaml.core.xml.io.Unmarshaller} for {@link org.opensaml.saml.saml1.core.AuthorityBinding}
- * objects.
+ * A thread-safe Unmarshaller for {@link AuthorityBinding} objects.
  */
 public class AuthorityBindingUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionQueryUnmarshaller.java
index f93126efd..d80167c34 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionQueryUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.Action;
@@ -25,35 +27,38 @@ import org.opensaml.saml.saml1.core.Evidence;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.AuthorizationDecisionQuery} objects.
+ * A thread-safe Unmarshaller for {@link AuthorizationDecisionQuery} objects.
  */
 public class AuthorizationDecisionQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final AuthorizationDecisionQuery authorizationDecisionQuery = (AuthorizationDecisionQuery) parentSAMLObject;
+        final AuthorizationDecisionQuery authorizationDecisionQuery = (AuthorizationDecisionQuery) parentObject;
 
-        if (childSAMLObject instanceof Action) {
-            authorizationDecisionQuery.getActions().add((Action) childSAMLObject);
-        } else if (childSAMLObject instanceof Evidence) {
-            authorizationDecisionQuery.setEvidence((Evidence) childSAMLObject);
+        if (childObject instanceof Action) {
+            authorizationDecisionQuery.getActions().add((Action) childObject);
+        } else if (childObject instanceof Evidence) {
+            authorizationDecisionQuery.setEvidence((Evidence) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
-        final AuthorizationDecisionQuery authorizationDecisionQuery = (AuthorizationDecisionQuery) samlObject;
+        final AuthorizationDecisionQuery authorizationDecisionQuery = (AuthorizationDecisionQuery) xmlObject;
 
         if (attribute.getLocalName().equals(AuthorizationDecisionQuery.RESOURCE_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             authorizationDecisionQuery.setResource(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionStatementUnmarshaller.java
index 33cc67e8d..fe163d10e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/AuthorizationDecisionStatementUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.Action;
@@ -26,31 +28,33 @@ import org.opensaml.saml.saml1.core.Evidence;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.impl.AuthorizationDecisionStatement} objects.
+ * A thread-safe Unmarshaller for {@link AuthorizationDecisionStatement} objects.
  */
 public class AuthorizationDecisionStatementUnmarshaller extends SubjectStatementUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
         final AuthorizationDecisionStatement authorizationDecisionStatement =
-                (AuthorizationDecisionStatement) parentSAMLObject;
+                (AuthorizationDecisionStatement) parentObject;
 
-        if (childSAMLObject instanceof Action) {
-            authorizationDecisionStatement.getActions().add((Action) childSAMLObject);
-        } else if (childSAMLObject instanceof Evidence) {
-            authorizationDecisionStatement.setEvidence((Evidence) childSAMLObject);
+        if (childObject instanceof Action) {
+            authorizationDecisionStatement.getActions().add((Action) childObject);
+        } else if (childObject instanceof Evidence) {
+            authorizationDecisionStatement.setEvidence((Evidence) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
         final AuthorizationDecisionStatement authorizationDecisionStatement =
-                (AuthorizationDecisionStatement) samlObject;
+                (AuthorizationDecisionStatement) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (AuthorizationDecisionStatement.DECISION_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -68,10 +72,11 @@ public class AuthorizationDecisionStatementUnmarshaller extends SubjectStatement
             } else if (AuthorizationDecisionStatement.RESOURCE_ATTRIB_NAME.equals(attribute.getLocalName())) {
                 authorizationDecisionStatement.setResource(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ConditionsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ConditionsUnmarshaller.java
index 0aeb7e485..47b7081d0 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ConditionsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ConditionsUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -29,19 +31,20 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Conditions} objects.
+ * A thread-safe Unmarshaller for {@link Conditions} objects.
  */
 public class ConditionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Conditions conditions = (Conditions) parentSAMLObject;
+        final Conditions conditions = (Conditions) parentObject;
 
-        if (childSAMLObject instanceof Condition) {
-            conditions.getConditions().add((Condition) childSAMLObject);
+        if (childObject instanceof Condition) {
+            conditions.getConditions().add((Condition) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
@@ -64,4 +67,5 @@ public class ConditionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             super.processAttribute(samlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/DoNotCacheConditionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/DoNotCacheConditionUnmarshaller.java
index dcb0486bf..fe2244ebe 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/DoNotCacheConditionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/DoNotCacheConditionUnmarshaller.java
@@ -18,9 +18,10 @@
 package org.opensaml.saml.saml1.core.impl;
 
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
+import org.opensaml.saml.saml1.core.DoNotCacheCondition;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.DoNotCacheCondition} objects.
+ * A thread-safe Unmarshaller for {@link DoNotCacheCondition} objects.
  */
 public class DoNotCacheConditionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/EvidenceUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/EvidenceUnmarshaller.java
index 423be065e..ce95f474a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/EvidenceUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/EvidenceUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -25,22 +27,24 @@ import org.opensaml.saml.saml1.core.AssertionIDReference;
 import org.opensaml.saml.saml1.core.Evidence;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Evidence} objects.
+ * A thread safe Unmarshaller for {@link Evidence} objects.
  */
 public class EvidenceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Evidence evidence = (Evidence) parentSAMLObject;
+        final Evidence evidence = (Evidence) parentObject;
 
-        if (childSAMLObject instanceof AssertionIDReference) {
-            evidence.getAssertionIDReferences().add((AssertionIDReference) childSAMLObject);
-        } else if (childSAMLObject instanceof Assertion) {
-            evidence.getAssertions().add((Assertion) childSAMLObject);
+        if (childObject instanceof AssertionIDReference) {
+            evidence.getAssertionIDReferences().add((AssertionIDReference) childObject);
+        } else if (childObject instanceof Assertion) {
+            evidence.getAssertions().add((Assertion) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/NameIdentifierUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/NameIdentifierUnmarshaller.java
index 7f14b1d8a..3fd538792 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/NameIdentifierUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/NameIdentifierUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.impl.XSStringUnmarshaller;
@@ -29,8 +31,10 @@ import org.w3c.dom.Attr;
 public class NameIdentifierUnmarshaller extends XSStringUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final NameIdentifier nameIdentifier = (NameIdentifier) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final NameIdentifier nameIdentifier = (NameIdentifier) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (NameIdentifier.FORMAT_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -38,10 +42,10 @@ public class NameIdentifierUnmarshaller extends XSStringUnmarshaller {
             } else if (NameIdentifier.NAMEQUALIFIER_ATTRIB_NAME.equals(attribute.getLocalName())) {
                 nameIdentifier.setNameQualifier(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestAbstractTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestAbstractTypeUnmarshaller.java
index 01f509036..6585124e3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestAbstractTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestAbstractTypeUnmarshaller.java
@@ -41,7 +41,7 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml1.core.RequestAbstractType} objects.
+ * A thread safe Unmarshaller for {@link RequestAbstractType} objects.
  */
 public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
@@ -49,7 +49,8 @@ public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObject
     @Nonnull private final Logger log = LoggerFactory.getLogger(RequestAbstractType.class);
 
     /** {@inheritDoc} */
-    public XMLObject unmarshall(final Element domElement) throws UnmarshallingException {
+    @Override
+    @Nonnull public XMLObject unmarshall(@Nonnull final Element domElement) throws UnmarshallingException {
         // After regular unmarshalling, check the minor version and set ID-ness if not SAML 1.0
         final RequestAbstractType request = (RequestAbstractType) super.unmarshall(domElement);
         if (request.getVersion() != SAMLVersion.VERSION_10 && !Strings.isNullOrEmpty(request.getID())) {
@@ -59,23 +60,26 @@ public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObject
     }
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final RequestAbstractType request = (RequestAbstractType) parentSAMLObject;
+        final RequestAbstractType request = (RequestAbstractType) parentObject;
 
-        if (childSAMLObject instanceof Signature) {
-            request.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof RespondWith) {
-            request.getRespondWiths().add((RespondWith) childSAMLObject);
+        if (childObject instanceof Signature) {
+            request.setSignature((Signature) childObject);
+        } else if (childObject instanceof RespondWith) {
+            request.getRespondWiths().add((RespondWith) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
 // Checkstyle: CyclomaticComplexity OFF
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlElement, final Attr attribute) throws UnmarshallingException {
-        final RequestAbstractType request = (RequestAbstractType) samlElement;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RequestAbstractType request = (RequestAbstractType) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (RequestAbstractType.ID_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -108,10 +112,10 @@ public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObject
                     request.setVersion(SAMLVersion.VERSION_11);
                 }
             } else {
-                super.processAttribute(samlElement, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlElement, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
         
     }
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestUnmarshaller.java
index 385ff70ce..e0ef9da53 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/RequestUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.AssertionArtifact;
@@ -25,24 +27,25 @@ import org.opensaml.saml.saml1.core.Query;
 import org.opensaml.saml.saml1.core.Request;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Request} objects.
+ * A thread safe Unmarshaller for {@link Request} objects.
  */
 public class RequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentElement, final XMLObject childElement)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Request request = (Request) parentElement;
+        final Request request = (Request) parentObject;
 
         try {
-            if (childElement instanceof Query) {
-                request.setQuery((Query) childElement);
-            } else if (childElement instanceof AssertionIDReference) {
-                request.getAssertionIDReferences().add((AssertionIDReference) childElement);
-            } else if (childElement instanceof AssertionArtifact) {
-                request.getAssertionArtifacts().add((AssertionArtifact) childElement);
+            if (childObject instanceof Query c) {
+                request.setQuery(c);
+            } else if (childObject instanceof AssertionIDReference c) {
+                request.getAssertionIDReferences().add(c);
+            } else if (childObject instanceof AssertionArtifact c) {
+                request.getAssertionArtifacts().add(c);
             } else {
-                super.processChildElement(parentElement, childElement);
+                super.processChildElement(parentObject, childObject);
             }
         } catch (final IllegalArgumentException e) {
             throw new UnmarshallingException(e);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseAbstractTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseAbstractTypeUnmarshaller.java
index e071a8b4b..7eaa2b7a3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseAbstractTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseAbstractTypeUnmarshaller.java
@@ -40,8 +40,7 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe {@link org.opensaml.core.xml.io.Unmarshaller} for
- * {@link org.opensaml.saml.saml1.core.ResponseAbstractType} objects.
+ * A thread-safe Unmarshaller for {@link ResponseAbstractType} objects.
  */
 public abstract class ResponseAbstractTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
@@ -49,7 +48,8 @@ public abstract class ResponseAbstractTypeUnmarshaller extends AbstractSAMLObjec
     @Nonnull private final Logger log = LoggerFactory.getLogger(ResponseUnmarshaller.class);
 
     /** {@inheritDoc} */
-    public XMLObject unmarshall(final Element domElement) throws UnmarshallingException {
+    @Override
+    @Nonnull public XMLObject unmarshall(@Nonnull final Element domElement) throws UnmarshallingException {
         // After regular unmarshalling, check the minor version and set ID-ness if not SAML 1.0
         final ResponseAbstractType response = (ResponseAbstractType) super.unmarshall(domElement);
         if (response.getVersion() != SAMLVersion.VERSION_10 && !Strings.isNullOrEmpty(response.getID())) {
@@ -59,21 +59,24 @@ public abstract class ResponseAbstractTypeUnmarshaller extends AbstractSAMLObjec
     }
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final ResponseAbstractType response = (ResponseAbstractType) parentSAMLObject;
+        final ResponseAbstractType response = (ResponseAbstractType) parentObject;
 
-        if (childSAMLObject instanceof Signature) {
-            response.setSignature((Signature) childSAMLObject);
+        if (childObject instanceof Signature) {
+            response.setSignature((Signature) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
 // Checkstyle: CyclomaticComplexity OFF
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final ResponseAbstractType response = (ResponseAbstractType) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final ResponseAbstractType response = (ResponseAbstractType) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(ResponseAbstractType.ID_ATTRIB_NAME)) {
@@ -110,10 +113,10 @@ public abstract class ResponseAbstractTypeUnmarshaller extends AbstractSAMLObjec
             } else if (attribute.getLocalName().equals(ResponseAbstractType.RECIPIENT_ATTRIB_NAME)) {
                 response.setRecipient(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
         
     }
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseUnmarshaller.java
index 0c9e8a4e6..9a8764184 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/ResponseUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml1.core.Assertion;
@@ -30,17 +32,18 @@ import org.opensaml.saml.saml1.core.Status;
 public class ResponseUnmarshaller extends ResponseAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Response response = (Response) parentSAMLObject;
+        final Response response = (Response) parentObject;
 
-        if (childSAMLObject instanceof Assertion) {
-            response.getAssertions().add((Assertion) childSAMLObject);
-        } else if (childSAMLObject instanceof Status) {
-            response.setStatus((Status) childSAMLObject);
+        if (childObject instanceof Assertion) {
+            response.getAssertions().add((Assertion) childObject);
+        } else if (childObject instanceof Status) {
+            response.setStatus((Status) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusCodeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusCodeUnmarshaller.java
index f07521ca2..e5b0a4192 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusCodeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusCodeUnmarshaller.java
@@ -28,34 +28,37 @@ import org.w3c.dom.Attr;
 import net.shibboleth.shared.xml.AttributeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.StatusCode} objects.
+ * A thread-safe Unmarshaller for {@link StatusCode} objects.
  */
 public class StatusCodeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(@Nonnull final XMLObject parentSAMLObject,
-            @Nonnull final XMLObject childSAMLObject) throws UnmarshallingException {
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
+            throws UnmarshallingException {
 
-        final StatusCode statusCode = (StatusCode) parentSAMLObject;
+        final StatusCode statusCode = (StatusCode) parentObject;
 
-        if (childSAMLObject instanceof StatusCode) {
-            statusCode.setStatusCode((StatusCode) childSAMLObject);
+        if (childObject instanceof StatusCode) {
+            statusCode.setStatusCode((StatusCode) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
 
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
 
-        final StatusCode statusCode = (StatusCode) samlObject;
+        final StatusCode statusCode = (StatusCode) xmlObject;
 
         if (attribute.getName().equals(StatusCode.VALUE_ATTRIB_NAME) && attribute.getNamespaceURI() == null) {
             statusCode.setValue(AttributeSupport.getAttributeValueAsQName(attribute));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusDetailUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusDetailUnmarshaller.java
index 27d75b1bc..3c3cfdc8f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusDetailUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusDetailUnmarshaller.java
@@ -17,23 +17,25 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.saml1.core.StatusDetail;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.StatusDetail} objects.
+ * A thread-safe Unmarshaller for {@link StatusDetail} objects.
  */
 public class StatusDetailUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
-    /**
-     * {@inheritDoc}
-     */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    /** {@inheritDoc} */
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final StatusDetail statusDetail = (StatusDetail) parentSAMLObject;
+        final StatusDetail statusDetail = (StatusDetail) parentObject;
 
-        statusDetail.getUnknownXMLObjects().add(childSAMLObject);
+        statusDetail.getUnknownXMLObjects().add(childObject);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusUnmarshaller.java
index e33322e5e..cf346a97b 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/StatusUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -26,26 +28,27 @@ import org.opensaml.saml.saml1.core.StatusDetail;
 import org.opensaml.saml.saml1.core.StatusMessage;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Status} objects.
+ * A thread-safe Unmarshaller for {@link Status} objects.
  */
 public class StatusUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Status status = (Status) parentSAMLObject;
+        final Status status = (Status) parentObject;
 
-        if (childSAMLObject instanceof StatusCode) {
-            status.setStatusCode((StatusCode) childSAMLObject);
-        } else if (childSAMLObject instanceof StatusMessage) {
-            status.setStatusMessage((StatusMessage) childSAMLObject);
-        } else if (childSAMLObject instanceof StatusDetail) {
+        if (childObject instanceof StatusCode) {
+            status.setStatusCode((StatusCode) childObject);
+        } else if (childObject instanceof StatusMessage) {
+            status.setStatusMessage((StatusMessage) childObject);
+        } else if (childObject instanceof StatusDetail) {
 
-            status.setStatusDetail((StatusDetail) childSAMLObject);
+            status.setStatusDetail((StatusDetail) childObject);
 
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectConfirmationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectConfirmationUnmarshaller.java
index bce9654ec..a726e36b8 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectConfirmationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectConfirmationUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -25,22 +27,24 @@ import org.opensaml.saml.saml1.core.SubjectConfirmation;
 import org.opensaml.xmlsec.signature.KeyInfo;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.SubjectConfirmation} objects.
+ * A thread-safe Unmarshaller for {@link SubjectConfirmation} objects.
  */
 public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final SubjectConfirmation subjectConfirmation = (SubjectConfirmation) parentSAMLObject;
+        final SubjectConfirmation subjectConfirmation = (SubjectConfirmation) parentObject;
 
-        if (childSAMLObject instanceof ConfirmationMethod) {
-            subjectConfirmation.getConfirmationMethods().add((ConfirmationMethod) childSAMLObject);
-        } else if (childSAMLObject instanceof KeyInfo) {
-            subjectConfirmation.setKeyInfo((KeyInfo)childSAMLObject);
+        if (childObject instanceof ConfirmationMethod) {
+            subjectConfirmation.getConfirmationMethods().add((ConfirmationMethod) childObject);
+        } else if (childObject instanceof KeyInfo) {
+            subjectConfirmation.setKeyInfo((KeyInfo)childObject);
         } else {
-            subjectConfirmation.setSubjectConfirmationData(childSAMLObject);
+            subjectConfirmation.setSubjectConfirmationData(childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectLocalityUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectLocalityUnmarshaller.java
index 5b52c1051..65bee2a1a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectLocalityUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectLocalityUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -24,14 +26,16 @@ import org.opensaml.saml.saml1.core.SubjectLocality;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.SubjectLocality} objects.
+ * A thread-safe Unmarshaller for {@link SubjectLocality} objects.
  */
 public class SubjectLocalityUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
-        final SubjectLocality subjectLocality = (SubjectLocality) samlObject;
+        final SubjectLocality subjectLocality = (SubjectLocality) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (SubjectLocality.DNSADDRESS_ATTRIB_NAME.equals(attribute.getLocalName())) {
@@ -39,10 +43,10 @@ public class SubjectLocalityUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (SubjectLocality.IPADDRESS_ATTRIB_NAME.equals(attribute.getLocalName())) {
                 subjectLocality.setIPAddress(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectQueryUnmarshaller.java
index 7be5cdd8b..92d8b9765 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectQueryUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,19 +30,20 @@ import org.opensaml.saml.saml1.core.Subject;
 import org.opensaml.saml.saml1.core.SubjectQuery;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml1.core.SubjectQuery} objects.
+ * A thread safe Unmarshaller for {@link SubjectQuery} objects.
  */
 public abstract class SubjectQueryUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SubjectQuery query = (SubjectQuery) parentSAMLObject;
+        final SubjectQuery query = (SubjectQuery) parentObject;
 
-        if (childSAMLObject instanceof Subject) {
-            query.setSubject((Subject) childSAMLObject);
+        if (childObject instanceof Subject) {
+            query.setSubject((Subject) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectStatementUnmarshaller.java
index 77af0d7bd..17149d2d7 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectStatementUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,20 +30,21 @@ import org.opensaml.saml.saml1.core.Subject;
 import org.opensaml.saml.saml1.core.SubjectStatement;
 
 /**
- * Unamershaller for {@link SubjectStatement}s.
+ * Unamershaller for {@link SubjectStatement}.
  */
 public abstract class SubjectStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SubjectStatement statement = (SubjectStatement) parentSAMLObject;
+        final SubjectStatement statement = (SubjectStatement) parentObject;
 
-        if (childSAMLObject instanceof Subject) {
-            statement.setSubject((Subject) childSAMLObject);
+        if (childObject instanceof Subject) {
+            statement.setSubject((Subject) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectUnmarshaller.java
index 41744a8bd..5d8261914 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml1/core/impl/SubjectUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml1.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -25,22 +27,23 @@ import org.opensaml.saml.saml1.core.Subject;
 import org.opensaml.saml.saml1.core.SubjectConfirmation;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml1.core.Subject} objects.
+ * A thread-safe Unmarshaller for {@link Subject} objects.
  */
 public class SubjectUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
 
-        final Subject subject = (Subject) parentSAMLObject;
+        final Subject subject = (Subject) parentObject;
 
-        if (childSAMLObject instanceof NameIdentifier) {
-            subject.setNameIdentifier((NameIdentifier) childSAMLObject);
-        } else if (childSAMLObject instanceof SubjectConfirmation) {
-            subject.setSubjectConfirmation((SubjectConfirmation) childSAMLObject);
+        if (childObject instanceof NameIdentifier) {
+            subject.setNameIdentifier((NameIdentifier) childObject);
+        } else if (childObject instanceof SubjectConfirmation) {
+            subject.setSubjectConfirmation((SubjectConfirmation) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ActionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ActionUnmarshaller.java
index 0d1c348a1..20011ecf8 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ActionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ActionUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.impl.XSStringUnmarshaller;
@@ -33,13 +35,15 @@ import org.w3c.dom.Attr;
 public class ActionUnmarshaller extends XSStringUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Action action = (Action) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Action action = (Action) xmlObject;
 
         if (attribute.getLocalName().equals(Action.NAMEPSACE_ATTRIB_NAME) && attribute.getNamespaceURI() == null) {
             action.setNamespace(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AdviceUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AdviceUnmarshaller.java
index 0af40c14f..b382689d9 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AdviceUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AdviceUnmarshaller.java
@@ -21,18 +21,21 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.saml2.core.Advice;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Advice}.
+ * A thread-safe Unmarshaller for {@link Advice}.
  */
 public class AdviceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final Advice advice = (Advice) parentObject;
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResolveUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResolveUnmarshaller.java
index 42d33a451..5bcefffcb 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResolveUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResolveUnmarshaller.java
@@ -21,25 +21,28 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Artifact;
 import org.opensaml.saml.saml2.core.ArtifactResolve;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.ArtifactResolve}.
+ * A thread-safe Unmarshaller for {@link ArtifactResolve}.
  */
 public class ArtifactResolveUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final ArtifactResolve ar = (ArtifactResolve) parentSAMLObject;
+        final ArtifactResolve ar = (ArtifactResolve) parentObject;
 
-        if (childSAMLObject instanceof Artifact) {
-            ar.setArtifact((Artifact) childSAMLObject);
+        if (childObject instanceof Artifact) {
+            ar.setArtifact((Artifact) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResponseUnmarshaller.java
index 160fbbe9e..828f31937 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ArtifactResponseUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.SAMLObject;
@@ -31,25 +33,26 @@ import org.opensaml.saml.saml2.core.Status;
 import org.opensaml.xmlsec.signature.Signature;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.ArtifactResponse}.
+ * A thread-safe Unmarshaller for {@link ArtifactResponse}.
  */
 public class ArtifactResponseUnmarshaller extends StatusResponseTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final ArtifactResponse artifactResponse = (ArtifactResponse) parentSAMLObject;
+        final ArtifactResponse artifactResponse = (ArtifactResponse) parentObject;
 
-        if (childSAMLObject instanceof Issuer) {
-            artifactResponse.setIssuer((Issuer) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            artifactResponse.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof Extensions) {
-            artifactResponse.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Status) {
-            artifactResponse.setStatus((Status) childSAMLObject);
+        if (childObject instanceof Issuer) {
+            artifactResponse.setIssuer((Issuer) childObject);
+        } else if (childObject instanceof Signature) {
+            artifactResponse.setSignature((Signature) childObject);
+        } else if (childObject instanceof Extensions) {
+            artifactResponse.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Status) {
+            artifactResponse.setStatus((Status) childObject);
         } else {
-            artifactResponse.setMessage((SAMLObject) childSAMLObject);
+            artifactResponse.setMessage((SAMLObject) childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionIDRequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionIDRequestUnmarshaller.java
index df23f6ff7..62d2acdd4 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionIDRequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionIDRequestUnmarshaller.java
@@ -21,25 +21,28 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.AssertionIDRef;
 import org.opensaml.saml.saml2.core.AssertionIDRequest;
 
 /**
- * A thead-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AssertionIDRequest}.
+ * A thead-safe Unmarshaller for {@link AssertionIDRequest}.
  */
 public class AssertionIDRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AssertionIDRequest idRequest = (AssertionIDRequest) parentSAMLObject;
+        final AssertionIDRequest idRequest = (AssertionIDRequest) parentObject;
 
-        if (childSAMLObject instanceof AssertionIDRef) {
-            idRequest.getAssertionIDRefs().add((AssertionIDRef) childSAMLObject);
+        if (childObject instanceof AssertionIDRef) {
+            idRequest.getAssertionIDRefs().add((AssertionIDRef) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionUnmarshaller.java
index ef9cdb0c2..29e58c4a9 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AssertionUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -38,12 +40,13 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Assertion}.
+ * A thread-safe Unmarshaller for {@link Assertion}.
  */
 public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final Assertion assertion = (Assertion) parentObject;
 
@@ -65,8 +68,10 @@ public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Assertion assertion = (Assertion) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Assertion assertion = (Assertion) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(Assertion.VERSION_ATTRIB_NAME)) {
@@ -78,10 +83,10 @@ public class AssertionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                 assertion.setID(attribute.getValue());
                 attribute.getOwnerElement().setIdAttributeNode(attribute, true);
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeQueryUnmarshaller.java
index fd48d2296..36df03492 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeQueryUnmarshaller.java
@@ -21,25 +21,28 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Attribute;
 import org.opensaml.saml.saml2.core.AttributeQuery;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AttributeQuery}.
+ * A thread-safe Unmarshaller for {@link AttributeQuery}.
  */
 public class AttributeQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AttributeQuery query = (AttributeQuery) parentSAMLObject;
+        final AttributeQuery query = (AttributeQuery) parentObject;
 
-        if (childSAMLObject instanceof Attribute) {
-            query.getAttributes().add((Attribute) childSAMLObject);
+        if (childObject instanceof Attribute) {
+            query.getAttributes().add((Attribute) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeStatementUnmarshaller.java
index 67c96a9a3..7563a54eb 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeStatementUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -29,12 +31,13 @@ import org.opensaml.saml.saml2.core.AttributeStatement;
 import org.opensaml.saml.saml2.core.EncryptedAttribute;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AttributeStatement}.
+ * A thread-safe Unmarshaller for {@link AttributeStatement}.
  */
 public class AttributeStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final AttributeStatement attributeStatement = (AttributeStatement) parentObject;
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeUnmarshaller.java
index bd91734a2..cc18dc4d4 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AttributeUnmarshaller.java
@@ -17,6 +17,7 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
 import javax.xml.namespace.QName;
 
 import org.opensaml.core.xml.XMLObject;
@@ -27,29 +28,30 @@ import org.opensaml.saml.saml2.core.Attribute;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Attribute} objects.
+ * A thread-safe Unmarshaller for {@link Attribute} objects.
  */
 public class AttributeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
+        final Attribute attribute = (Attribute) parentObject;
 
-        final Attribute attribute = (Attribute) parentSAMLObject;
-
-        final QName childQName = childSAMLObject.getElementQName();
+        final QName childQName = childObject.getElementQName();
         if ("AttributeValue".equals(childQName.getLocalPart())
                 && childQName.getNamespaceURI().equals(SAMLConstants.SAML20_NS)) {
-            attribute.getAttributeValues().add(childSAMLObject);
+            attribute.getAttributeValues().add(childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-
-        final Attribute attrib = (Attribute) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Attribute attrib = (Attribute) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(Attribute.NAME_ATTTRIB_NAME)) {
@@ -59,7 +61,7 @@ public class AttributeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             } else if (attribute.getLocalName().equals(Attribute.FRIENDLY_NAME_ATTRIB_NAME)) {
                 attrib.setFriendlyName(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
            }
         } else {
             processUnknownAttribute(attrib, attribute);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AudienceRestrictionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AudienceRestrictionUnmarshaller.java
index 0c2a5c7b6..95c074454 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AudienceRestrictionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AudienceRestrictionUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,12 +30,13 @@ import org.opensaml.saml.saml2.core.Audience;
 import org.opensaml.saml.saml2.core.AudienceRestriction;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AudienceRestriction} objects.
+ * A thread-safe Unmarshaller for {@link AudienceRestriction} objects.
  */
 public class AudienceRestrictionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final AudienceRestriction audienceRestriction = (AudienceRestriction) parentObject;
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnContextUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnContextUnmarshaller.java
index 4a13e8360..96fa543dc 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnContextUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnContextUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -31,12 +33,13 @@ import org.opensaml.saml.saml2.core.AuthnContextDecl;
 import org.opensaml.saml.saml2.core.AuthnContextDeclRef;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AuthnContext}.
+ * A thread-safe Unmarshaller for {@link AuthnContext}.
  */
 public class AuthnContextUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final AuthnContext authnContext = (AuthnContext) parentObject;
         if (childObject instanceof AuthnContextClassRef) {
@@ -51,4 +54,5 @@ public class AuthnContextUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnQueryUnmarshaller.java
index 777ff21d6..5784c505d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnQueryUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.AuthnQuery;
@@ -28,31 +30,34 @@ import org.opensaml.saml.saml2.core.RequestedAuthnContext;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AuthnQuery} objects.
+ * A thread-safe Unmarshaller for {@link AuthnQuery} objects.
  */
 public class AuthnQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AuthnQuery query = (AuthnQuery) parentSAMLObject;
+        final AuthnQuery query = (AuthnQuery) parentObject;
     
-        if (childSAMLObject instanceof RequestedAuthnContext) {
-            query.setRequestedAuthnContext((RequestedAuthnContext) childSAMLObject);
+        if (childObject instanceof RequestedAuthnContext) {
+            query.setRequestedAuthnContext((RequestedAuthnContext) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthnQuery query = (AuthnQuery) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthnQuery query = (AuthnQuery) xmlObject;
 
         if (attribute.getLocalName().equals(AuthnQuery.SESSION_INDEX_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             query.setSessionIndex(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnRequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnRequestUnmarshaller.java
index 8a8e428aa..f67461f93 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnRequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnRequestUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -33,33 +35,36 @@ import org.opensaml.saml.saml2.core.Subject;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AuthnRequest} objects.
+ * A thread-safe Unmarshaller for {@link AuthnRequest} objects.
  */
 public class AuthnRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AuthnRequest req = (AuthnRequest) parentSAMLObject;
+        final AuthnRequest req = (AuthnRequest) parentObject;
     
-        if (childSAMLObject instanceof Subject) {
-            req.setSubject((Subject) childSAMLObject);
-        } else if (childSAMLObject instanceof NameIDPolicy) {
-            req.setNameIDPolicy((NameIDPolicy) childSAMLObject);
-        } else if (childSAMLObject instanceof Conditions) {
-            req.setConditions((Conditions) childSAMLObject);
-        } else if (childSAMLObject instanceof RequestedAuthnContext) {
-            req.setRequestedAuthnContext((RequestedAuthnContext) childSAMLObject);
-        } else if (childSAMLObject instanceof Scoping) {
-            req.setScoping((Scoping) childSAMLObject);
+        if (childObject instanceof Subject) {
+            req.setSubject((Subject) childObject);
+        } else if (childObject instanceof NameIDPolicy) {
+            req.setNameIDPolicy((NameIDPolicy) childObject);
+        } else if (childObject instanceof Conditions) {
+            req.setConditions((Conditions) childObject);
+        } else if (childObject instanceof RequestedAuthnContext) {
+            req.setRequestedAuthnContext((RequestedAuthnContext) childObject);
+        } else if (childObject instanceof Scoping) {
+            req.setScoping((Scoping) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthnRequest req = (AuthnRequest) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthnRequest req = (AuthnRequest) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(AuthnRequest.FORCE_AUTHN_ATTRIB_NAME)) {
@@ -77,10 +82,10 @@ public class AuthnRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
             } else if (attribute.getLocalName().equals(AuthnRequest.PROVIDER_NAME_ATTRIB_NAME)) {
                 req.setProviderName(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnStatementUnmarshaller.java
index 7ba2c0df0..26523e09e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthnStatementUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -34,12 +36,13 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AuthnStatement}.
+ * A thread-safe Unmarshaller for {@link AuthnStatement}.
  */
 public class AuthnStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final AuthnStatement authnStatement = (AuthnStatement) parentObject;
         if (childObject instanceof SubjectLocality) {
@@ -52,8 +55,10 @@ public class AuthnStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthnStatement authnStatement = (AuthnStatement) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthnStatement authnStatement = (AuthnStatement) xmlObject;
         
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(AuthnStatement.AUTHN_INSTANT_ATTRIB_NAME)
@@ -65,10 +70,10 @@ public class AuthnStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                     && !Strings.isNullOrEmpty(attribute.getValue())) {
                 authnStatement.setSessionNotOnOrAfter(DOMTypeSupport.stringToInstant(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionQueryUnmarshaller.java
index 3a93c554a..f3c3dc7e5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionQueryUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Action;
@@ -29,33 +31,36 @@ import org.opensaml.saml.saml2.core.Evidence;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.AuthzDecisionQuery} objects.
+ * A thread-safe Unmarshaller for {@link AuthzDecisionQuery} objects.
  */
 public class AuthzDecisionQueryUnmarshaller extends SubjectQueryUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AuthzDecisionQuery query = (AuthzDecisionQuery) parentSAMLObject;
+        final AuthzDecisionQuery query = (AuthzDecisionQuery) parentObject;
     
-        if (childSAMLObject instanceof Action) {
-            query.getActions().add((Action) childSAMLObject);
-        } else if (childSAMLObject instanceof Evidence) {
-            query.setEvidence((Evidence) childSAMLObject);
+        if (childObject instanceof Action) {
+            query.getActions().add((Action) childObject);
+        } else if (childObject instanceof Evidence) {
+            query.setEvidence((Evidence) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthzDecisionQuery query = (AuthzDecisionQuery) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthzDecisionQuery query = (AuthzDecisionQuery) xmlObject;
 
         if (attribute.getLocalName().equals(AuthzDecisionQuery.RESOURCE_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             query.setResource(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionStatementUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionStatementUnmarshaller.java
index 90fcc6687..9593ead19 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionStatementUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/AuthzDecisionStatementUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -36,7 +38,8 @@ import org.w3c.dom.Attr;
 public class AuthzDecisionStatementUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final AuthzDecisionStatement authzDS = (AuthzDecisionStatement) parentObject;
 
@@ -50,8 +53,10 @@ public class AuthzDecisionStatementUnmarshaller extends AbstractSAMLObjectUnmars
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AuthzDecisionStatement authzDS = (AuthzDecisionStatement) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AuthzDecisionStatement authzDS = (AuthzDecisionStatement) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(AuthzDecisionStatement.RESOURCE_ATTRIB_NAME)) {
@@ -68,10 +73,10 @@ public class AuthzDecisionStatementUnmarshaller extends AbstractSAMLObjectUnmars
                             + attribute.getValue());
                 }
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/BaseIDUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/BaseIDUnmarshaller.java
index 63fd12a05..58f5d1ba7 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/BaseIDUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/BaseIDUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,13 +30,15 @@ import org.opensaml.saml.saml2.core.BaseID;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.BaseID} objects.
+ * A thread-safe Unmarshaller for {@link BaseID} objects.
  */
 public abstract class BaseIDUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final BaseID baseID = (BaseID) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final BaseID baseID = (BaseID) xmlObject;
         
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(BaseID.NAME_QUALIFIER_ATTRIB_NAME)) {
@@ -42,10 +46,10 @@ public abstract class BaseIDUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (attribute.getLocalName().equals(BaseID.SP_NAME_QUALIFIER_ATTRIB_NAME)) {
                 baseID.setSPNameQualifier(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ConditionsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ConditionsUnmarshaller.java
index 82a3d2fdc..87eb2e526 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ConditionsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ConditionsUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -33,12 +35,13 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Conditions} objects.
+ * A thread-safe Unmarshaller for {@link Conditions} objects.
  */
 public class ConditionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final Conditions conditions = (Conditions) parentObject;
 
@@ -50,8 +53,10 @@ public class ConditionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Conditions conditions = (Conditions) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Conditions conditions = (Conditions) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(Conditions.NOT_BEFORE_ATTRIB_NAME)
@@ -61,10 +66,10 @@ public class ConditionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                     && !Strings.isNullOrEmpty(attribute.getValue())) {
                 conditions.setNotOnOrAfter(DOMTypeSupport.stringToInstant(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAssertionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAssertionUnmarshaller.java
index f04b1749f..09d9cbef1 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAssertionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAssertionUnmarshaller.java
@@ -17,9 +17,11 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.EncryptedAssertion;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.EncryptedAssertion}.
+ * A thread-safe Unmarshaller for {@link EncryptedAssertion}.
  */
 public class EncryptedAssertionUnmarshaller extends EncryptedElementTypeUnmarshaller {
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAttributeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAttributeUnmarshaller.java
index 44db18067..033e727ed 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAttributeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedAttributeUnmarshaller.java
@@ -17,9 +17,11 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.EncryptedAttribute;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.EncryptedAttribute}.
+ * A thread-safe Unmarshaller for {@link EncryptedAttribute}.
  */
 public class EncryptedAttributeUnmarshaller extends EncryptedElementTypeUnmarshaller {
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedElementTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedElementTypeUnmarshaller.java
index c58fba583..225f2ac78 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedElementTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedElementTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -25,22 +27,23 @@ import org.opensaml.xmlsec.encryption.EncryptedData;
 import org.opensaml.xmlsec.encryption.EncryptedKey;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.EncryptedElementType}.
+ * A thread-safe Unmarshaller for {@link EncryptedElementType}.
  */
 public class EncryptedElementTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final EncryptedElementType eet = (EncryptedElementType) parentSAMLObject;
+        final EncryptedElementType eet = (EncryptedElementType) parentObject;
 
-        if (childSAMLObject instanceof EncryptedData) {
-            eet.setEncryptedData((EncryptedData) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedKey) {
-            eet.getEncryptedKeys().add((EncryptedKey) childSAMLObject);
+        if (childObject instanceof EncryptedData) {
+            eet.setEncryptedData((EncryptedData) childObject);
+        } else if (childObject instanceof EncryptedKey) {
+            eet.getEncryptedKeys().add((EncryptedKey) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedIDUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedIDUnmarshaller.java
index bffda46c2..e8ce2e33c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedIDUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EncryptedIDUnmarshaller.java
@@ -17,9 +17,11 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.EncryptedID;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.EncryptedID}.
+ * A thread-safe Unmarshaller for {@link EncryptedID}.
  */
 public class EncryptedIDUnmarshaller extends EncryptedElementTypeUnmarshaller {
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EvidenceUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EvidenceUnmarshaller.java
index b0b04f628..4f77e7773 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EvidenceUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/EvidenceUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -31,12 +33,13 @@ import org.opensaml.saml.saml2.core.EncryptedAssertion;
 import org.opensaml.saml.saml2.core.Evidence;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Evidence}.
+ * A thread-safe Unmarshaller for {@link Evidence}.
  */
 public class EvidenceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final Evidence evidence = (Evidence) parentObject;
 
@@ -52,4 +55,5 @@ public class EvidenceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ExtensionsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ExtensionsUnmarshaller.java
index c28b06373..312864626 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ExtensionsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ExtensionsUnmarshaller.java
@@ -17,36 +17,35 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.saml2.core.Extensions;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.w3c.dom.Attr;
 
+import net.shibboleth.shared.primitive.LoggerFactory;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Extensions} objects.
+ * A thread-safe Unmarshaller for {@link Extensions} objects.
  */
 public class ExtensionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** Logger. */
-    private final Logger log = LoggerFactory.getLogger(AbstractSAMLObjectUnmarshaller.class);
-
-    /** Constructor. */
-    public ExtensionsUnmarshaller() {
-        super();
-    }
+    @Nonnull private final Logger log = LoggerFactory.getLogger(AbstractSAMLObjectUnmarshaller.class);
 
     /**
      * {@inheritDoc}
      */
-    protected void processChildElement(final XMLObject parentXMLObject, final XMLObject childXMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Extensions extensions = (Extensions) parentXMLObject;
+        final Extensions extensions = (Extensions) parentObject;
 
-        extensions.getUnknownXMLObjects().add(childXMLObject);
+        extensions.getUnknownXMLObjects().add(childObject);
     }
 
     /**
@@ -62,4 +61,5 @@ public class ExtensionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     protected void processElementContent(final XMLObject xmlObject, final String elementContent) {
         log.debug("Ignoring element content {}", elementContent);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPEntryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPEntryUnmarshaller.java
index 8de0aeca2..290365cee 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPEntryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPEntryUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,13 +30,15 @@ import org.opensaml.saml.saml2.core.IDPEntry;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.IDPEntry} objects.
+ * A thread-safe Unmarshaller for {@link IDPEntry} objects.
  */
 public class IDPEntryUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final IDPEntry entry = (IDPEntry) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final IDPEntry entry = (IDPEntry) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(IDPEntry.PROVIDER_ID_ATTRIB_NAME)) {
@@ -44,10 +48,10 @@ public class IDPEntryUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             } else if (attribute.getLocalName().equals(IDPEntry.LOC_ATTRIB_NAME)) {
                 entry.setLoc(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPListUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPListUnmarshaller.java
index 7ea5a1fb6..f8acca178 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPListUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/IDPListUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -29,21 +31,23 @@ import org.opensaml.saml.saml2.core.IDPEntry;
 import org.opensaml.saml.saml2.core.IDPList;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.IDPList} objects.
+ * A thread-safe Unmarshaller for {@link IDPList} objects.
  */
 public class IDPListUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final IDPList list = (IDPList) parentSAMLObject;
+        final IDPList list = (IDPList) parentObject;
 
-        if (childSAMLObject instanceof IDPEntry) {
-            list.getIDPEntrys().add((IDPEntry) childSAMLObject);
-        } else if (childSAMLObject instanceof GetComplete) {
-            list.setGetComplete((GetComplete) childSAMLObject);
+        if (childObject instanceof IDPEntry) {
+            list.getIDPEntrys().add((IDPEntry) childObject);
+        } else if (childObject instanceof GetComplete) {
+            list.setGetComplete((GetComplete) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutRequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutRequestUnmarshaller.java
index 1411ea024..bdcddb6c7 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutRequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutRequestUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.BaseID;
@@ -31,31 +33,34 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.LogoutRequest} objects.
+ * A thread-safe Unmarshaller for {@link LogoutRequest} objects.
  */
 public class LogoutRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final LogoutRequest req = (LogoutRequest) parentSAMLObject;
+        final LogoutRequest req = (LogoutRequest) parentObject;
     
-        if (childSAMLObject instanceof BaseID) {
-            req.setBaseID((BaseID) childSAMLObject);
-        } else if (childSAMLObject instanceof NameID) {
-            req.setNameID((NameID) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedID) {
-            req.setEncryptedID((EncryptedID) childSAMLObject);
-        } else if (childSAMLObject instanceof SessionIndex) {
-            req.getSessionIndexes().add((SessionIndex) childSAMLObject);
+        if (childObject instanceof BaseID) {
+            req.setBaseID((BaseID) childObject);
+        } else if (childObject instanceof NameID) {
+            req.setNameID((NameID) childObject);
+        } else if (childObject instanceof EncryptedID) {
+            req.setEncryptedID((EncryptedID) childObject);
+        } else if (childObject instanceof SessionIndex) {
+            req.getSessionIndexes().add((SessionIndex) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final LogoutRequest req = (LogoutRequest) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final LogoutRequest req = (LogoutRequest) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(LogoutRequest.REASON_ATTRIB_NAME)) {
@@ -64,10 +69,10 @@ public class LogoutRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
                     && !Strings.isNullOrEmpty(attribute.getValue())) {
                 req.setNotOnOrAfter(DOMTypeSupport.stringToInstant(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutResponseUnmarshaller.java
index 93b3ce67d..7045b6dc9 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/LogoutResponseUnmarshaller.java
@@ -21,8 +21,10 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.LogoutResponse;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.LogoutResponse} objects.
+ * A thread-safe Unmarshaller for {@link LogoutResponse} objects.
  */
 public class LogoutResponseUnmarshaller extends StatusResponseTypeUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDRequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDRequestUnmarshaller.java
index 4440c89a1..ba880294f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDRequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDRequestUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.EncryptedID;
@@ -31,27 +33,28 @@ import org.opensaml.saml.saml2.core.NewID;
 import org.opensaml.saml.saml2.core.Terminate;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.ManageNameIDRequest} objects.
+ * A thread-safe Unmarshaller for {@link ManageNameIDRequest} objects.
  */
 public class ManageNameIDRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final ManageNameIDRequest req = (ManageNameIDRequest) parentSAMLObject;
+        final ManageNameIDRequest req = (ManageNameIDRequest) parentObject;
 
-        if (childSAMLObject instanceof NameID) {
-            req.setNameID((NameID) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedID) {
-            req.setEncryptedID((EncryptedID) childSAMLObject);
-        } else if (childSAMLObject instanceof NewID) {
-            req.setNewID((NewID) childSAMLObject);
-        } else if (childSAMLObject instanceof NewEncryptedID) {
-            req.setNewEncryptedID((NewEncryptedID) childSAMLObject);
-        } else if (childSAMLObject instanceof Terminate) {
-            req.setTerminate((Terminate) childSAMLObject);
+        if (childObject instanceof NameID) {
+            req.setNameID((NameID) childObject);
+        } else if (childObject instanceof EncryptedID) {
+            req.setEncryptedID((EncryptedID) childObject);
+        } else if (childObject instanceof NewID) {
+            req.setNewID((NewID) childObject);
+        } else if (childObject instanceof NewEncryptedID) {
+            req.setNewEncryptedID((NewEncryptedID) childObject);
+        } else if (childObject instanceof Terminate) {
+            req.setTerminate((Terminate) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDResponseUnmarshaller.java
index 9f6860820..4b9a5238a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ManageNameIDResponseUnmarshaller.java
@@ -21,8 +21,10 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.ManageNameIDResponse;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.ManageNameIDResponse} objects.
+ * A thread-safe Unmarshaller for {@link ManageNameIDResponse} objects.
  */
 public class ManageNameIDResponseUnmarshaller extends StatusResponseTypeUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingRequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingRequestUnmarshaller.java
index c0674bb4f..02fc9cfe0 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingRequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingRequestUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.BaseID;
@@ -26,25 +28,27 @@ import org.opensaml.saml.saml2.core.NameIDMappingRequest;
 import org.opensaml.saml.saml2.core.NameIDPolicy;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.NameIDMappingRequest} objects.
+ * A thread-safe Unmarshaller for {@link NameIDMappingRequest} objects.
  */
 public class NameIDMappingRequestUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final NameIDMappingRequest req = (NameIDMappingRequest) parentSAMLObject;
+        final NameIDMappingRequest req = (NameIDMappingRequest) parentObject;
 
-        if (childSAMLObject instanceof BaseID) {
-            req.setBaseID((BaseID) childSAMLObject);
-        } else if (childSAMLObject instanceof NameID) {
-            req.setNameID((NameID) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedID) {
-            req.setEncryptedID((EncryptedID) childSAMLObject);
-        } else if (childSAMLObject instanceof NameIDPolicy) {
-            req.setNameIDPolicy((NameIDPolicy) childSAMLObject);
+        if (childObject instanceof BaseID) {
+            req.setBaseID((BaseID) childObject);
+        } else if (childObject instanceof NameID) {
+            req.setNameID((NameID) childObject);
+        } else if (childObject instanceof EncryptedID) {
+            req.setEncryptedID((EncryptedID) childObject);
+        } else if (childObject instanceof NameIDPolicy) {
+            req.setNameIDPolicy((NameIDPolicy) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingResponseUnmarshaller.java
index a05d46de2..74b1249ea 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDMappingResponseUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.EncryptedID;
@@ -24,21 +26,22 @@ import org.opensaml.saml.saml2.core.NameID;
 import org.opensaml.saml.saml2.core.NameIDMappingResponse;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.core.NameIDMappingResponse} objects.
+ * A thread safe Unmarshaller for {@link NameIDMappingResponse} objects.
  */
 public class NameIDMappingResponseUnmarshaller extends StatusResponseTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final NameIDMappingResponse resp = (NameIDMappingResponse) parentSAMLObject;
+        final NameIDMappingResponse resp = (NameIDMappingResponse) parentObject;
 
-        if (childSAMLObject instanceof NameID) {
-            resp.setNameID((NameID) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedID) {
-            resp.setEncryptedID((EncryptedID) childSAMLObject);
+        if (childObject instanceof NameID) {
+            resp.setNameID((NameID) childObject);
+        } else if (childObject instanceof EncryptedID) {
+            resp.setEncryptedID((EncryptedID) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDPolicyUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDPolicyUnmarshaller.java
index a39da2651..e91f62685 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDPolicyUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDPolicyUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -29,13 +31,15 @@ import org.opensaml.saml.saml2.core.NameIDPolicy;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.NameIDPolicy} objects.
+ * A thread-safe Unmarshaller for {@link NameIDPolicy} objects.
  */
 public class NameIDPolicyUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final NameIDPolicy policy = (NameIDPolicy) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final NameIDPolicy policy = (NameIDPolicy) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(NameIDPolicy.FORMAT_ATTRIB_NAME)) {
@@ -47,10 +51,10 @@ public class NameIDPolicyUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             if (attribute.getLocalName().equals(NameIDPolicy.ALLOW_CREATE_ATTRIB_NAME)) {
                 policy.setAllowCreate(XSBooleanValue.valueOf(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDTypeUnmarshaller.java
index ed28c3f4d..057959c82 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NameIDTypeUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.impl.XSStringUnmarshaller;
@@ -29,8 +31,10 @@ import org.w3c.dom.Attr;
 public class NameIDTypeUnmarshaller extends XSStringUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final NameIDType nameID = (NameIDType) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final NameIDType nameID = (NameIDType) xmlObject;
         
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(NameIDType.NAME_QUALIFIER_ATTRIB_NAME)) {
@@ -42,10 +46,10 @@ public class NameIDTypeUnmarshaller extends XSStringUnmarshaller {
             } else if (attribute.getLocalName().equals(NameIDType.SPPROVIDED_ID_ATTRIB_NAME)) {
                 nameID.setSPProvidedID(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NewEncryptedIDUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NewEncryptedIDUnmarshaller.java
index 421dc0a8b..07d441758 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NewEncryptedIDUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/NewEncryptedIDUnmarshaller.java
@@ -17,9 +17,11 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import org.opensaml.saml.saml2.core.NewEncryptedID;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.NewEncryptedID}.
+ * A thread-safe Unmarshaller for {@link NewEncryptedID}.
  */
 public class NewEncryptedIDUnmarshaller extends EncryptedElementTypeUnmarshaller {
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/OneTimeUseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/OneTimeUseUnmarshaller.java
index 9166123eb..f466c3162 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/OneTimeUseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/OneTimeUseUnmarshaller.java
@@ -22,9 +22,10 @@
 package org.opensaml.saml.saml2.core.impl;
 
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
+import org.opensaml.saml.saml2.core.OneTimeUse;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.OneTimeUse} objects.
+ * A thread-safe Unmarshaller for {@link OneTimeUse} objects.
  */
 public class OneTimeUseUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ProxyRestrictionUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ProxyRestrictionUnmarshaller.java
index 5de50f59e..37149b96f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ProxyRestrictionUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ProxyRestrictionUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -29,12 +31,13 @@ import org.opensaml.saml.saml2.core.ProxyRestriction;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.ProxyRestriction} objects.
+ * A thread-safe Unmarshaller for {@link ProxyRestriction} objects.
  */
 public class ProxyRestrictionUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final ProxyRestriction proxyRestriction = (ProxyRestriction) parentObject;
 
@@ -46,14 +49,16 @@ public class ProxyRestrictionUnmarshaller extends AbstractSAMLObjectUnmarshaller
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final ProxyRestriction proxyRestriction = (ProxyRestriction) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final ProxyRestriction proxyRestriction = (ProxyRestriction) xmlObject;
 
         if (attribute.getLocalName().equals(ProxyRestriction.COUNT_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             proxyRestriction.setProxyCount(Integer.valueOf(attribute.getValue()));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestAbstractTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestAbstractTypeUnmarshaller.java
index db05b975e..d3ff8a784 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestAbstractTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestAbstractTypeUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -35,29 +37,32 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.RequestAbstractType} objects.
+ * A thread-safe Unmarshaller for {@link RequestAbstractType} objects.
  */
 public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final RequestAbstractType req = (RequestAbstractType) parentSAMLObject;
+        final RequestAbstractType req = (RequestAbstractType) parentObject;
     
-        if (childSAMLObject instanceof Issuer) {
-            req.setIssuer((Issuer) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            req.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof Extensions) {
-            req.setExtensions((Extensions) childSAMLObject);
+        if (childObject instanceof Issuer) {
+            req.setIssuer((Issuer) childObject);
+        } else if (childObject instanceof Signature) {
+            req.setSignature((Signature) childObject);
+        } else if (childObject instanceof Extensions) {
+            req.setExtensions((Extensions) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final RequestAbstractType req = (RequestAbstractType) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RequestAbstractType req = (RequestAbstractType) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(RequestAbstractType.VERSION_ATTRIB_NAME)) {
@@ -73,10 +78,10 @@ public abstract class RequestAbstractTypeUnmarshaller extends AbstractSAMLObject
             } else if (attribute.getLocalName().equals(RequestAbstractType.CONSENT_ATTRIB_NAME)) {
                 req.setConsent(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestedAuthnContextUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestedAuthnContextUnmarshaller.java
index 038746ce4..69574b881 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestedAuthnContextUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/RequestedAuthnContextUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -31,27 +33,30 @@ import org.opensaml.saml.saml2.core.RequestedAuthnContext;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.RequestedAuthnContext} objects.
+ * A thread-safe Unmarshaller for {@link RequestedAuthnContext} objects.
  */
 public class RequestedAuthnContextUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final RequestedAuthnContext rac = (RequestedAuthnContext) parentSAMLObject;
+        final RequestedAuthnContext rac = (RequestedAuthnContext) parentObject;
         
-        if (childSAMLObject instanceof AuthnContextClassRef) {
-            rac.getAuthnContextClassRefs().add((AuthnContextClassRef) childSAMLObject);
-        } else if (childSAMLObject instanceof AuthnContextDeclRef) {
-            rac.getAuthnContextDeclRefs().add((AuthnContextDeclRef) childSAMLObject);
+        if (childObject instanceof AuthnContextClassRef) {
+            rac.getAuthnContextClassRefs().add((AuthnContextClassRef) childObject);
+        } else if (childObject instanceof AuthnContextDeclRef) {
+            rac.getAuthnContextDeclRefs().add((AuthnContextDeclRef) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final RequestedAuthnContext rac = (RequestedAuthnContext) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RequestedAuthnContext rac = (RequestedAuthnContext) xmlObject;
 
         if (attribute.getLocalName().equals(RequestedAuthnContext.COMPARISON_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
@@ -67,7 +72,7 @@ public class RequestedAuthnContextUnmarshaller extends AbstractSAMLObjectUnmarsh
                         + attribute.getValue());
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ResponseUnmarshaller.java
index 0d5660cc8..b8199080f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ResponseUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Assertion;
@@ -28,22 +30,23 @@ import org.opensaml.saml.saml2.core.EncryptedAssertion;
 import org.opensaml.saml.saml2.core.Response;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Response} objects.
+ * A thread-safe Unmarshaller for {@link Response} objects.
  */
 public class ResponseUnmarshaller extends StatusResponseTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Response resp = (Response) parentSAMLObject;
+        final Response resp = (Response) parentObject;
 
-        if (childSAMLObject instanceof Assertion) {
-            resp.getAssertions().add((Assertion) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptedAssertion) {
-            resp.getEncryptedAssertions().add((EncryptedAssertion) childSAMLObject);
+        if (childObject instanceof Assertion) {
+            resp.getAssertions().add((Assertion) childObject);
+        } else if (childObject instanceof EncryptedAssertion) {
+            resp.getEncryptedAssertions().add((EncryptedAssertion) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ScopingUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ScopingUnmarshaller.java
index e65467355..085ceeffa 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ScopingUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/ScopingUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -30,32 +32,35 @@ import org.opensaml.saml.saml2.core.Scoping;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Scoping} objects.
+ * A thread-safe Unmarshaller for {@link Scoping} objects.
  */
 public class ScopingUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Scoping scoping = (Scoping) parentSAMLObject;
+        final Scoping scoping = (Scoping) parentObject;
         
-        if (childSAMLObject instanceof IDPList) {
-            scoping.setIDPList((IDPList) childSAMLObject);
-        } else if (childSAMLObject instanceof RequesterID) {
-            scoping.getRequesterIDs().add((RequesterID) childSAMLObject);
+        if (childObject instanceof IDPList) {
+            scoping.setIDPList((IDPList) childObject);
+        } else if (childObject instanceof RequesterID) {
+            scoping.getRequesterIDs().add((RequesterID) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Scoping scoping = (Scoping) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Scoping scoping = (Scoping) xmlObject;
 
         if (attribute.getLocalName().equals(Scoping.PROXY_COUNT_ATTRIB_NAME) && attribute.getNamespaceURI() == null) {
             scoping.setProxyCount(Integer.valueOf(attribute.getValue()));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusCodeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusCodeUnmarshaller.java
index ad47d349a..2b514a2d9 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusCodeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusCodeUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,30 +30,33 @@ import org.opensaml.saml.saml2.core.StatusCode;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.StatusCode} objects.
+ * A thread-safe Unmarshaller for {@link StatusCode} objects.
  */
 public class StatusCodeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final StatusCode statusCode = (StatusCode) parentSAMLObject;
+        final StatusCode statusCode = (StatusCode) parentObject;
     
-        if (childSAMLObject instanceof StatusCode) {
-            statusCode.setStatusCode((StatusCode) childSAMLObject);
+        if (childObject instanceof StatusCode) {
+            statusCode.setStatusCode((StatusCode) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final StatusCode statusCode = (StatusCode) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final StatusCode statusCode = (StatusCode) xmlObject;
 
         if (attribute.getLocalName().equals(StatusCode.VALUE_ATTRIB_NAME) && attribute.getNamespaceURI() == null) {
             statusCode.setValue(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusDetailUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusDetailUnmarshaller.java
index 7e731ae03..53b9cbc55 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusDetailUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusDetailUnmarshaller.java
@@ -17,23 +17,27 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.saml2.core.StatusDetail;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.StatusDetail} objects.
+ * A thread-safe Unmarshaller for {@link StatusDetail} objects.
  */
 public class StatusDetailUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /**
      * {@inheritDoc}
      */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final StatusDetail statusDetail = (StatusDetail) parentSAMLObject;
+        final StatusDetail statusDetail = (StatusDetail) parentObject;
 
-        statusDetail.getUnknownXMLObjects().add(childSAMLObject);
+        statusDetail.getUnknownXMLObjects().add(childObject);
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusResponseTypeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusResponseTypeUnmarshaller.java
index dbbfaa10d..8b02934c2 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusResponseTypeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusResponseTypeUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -41,26 +43,29 @@ import net.shibboleth.shared.xml.DOMTypeSupport;
 public abstract class StatusResponseTypeUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final StatusResponseType sr = (StatusResponseType) parentSAMLObject;
+        final StatusResponseType sr = (StatusResponseType) parentObject;
     
-        if (childSAMLObject instanceof Issuer) {
-            sr.setIssuer((Issuer) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            sr.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof Extensions) {
-            sr.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Status) {
-            sr.setStatus((Status) childSAMLObject);
+        if (childObject instanceof Issuer) {
+            sr.setIssuer((Issuer) childObject);
+        } else if (childObject instanceof Signature) {
+            sr.setSignature((Signature) childObject);
+        } else if (childObject instanceof Extensions) {
+            sr.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Status) {
+            sr.setStatus((Status) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final StatusResponseType sr = (StatusResponseType) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final StatusResponseType sr = (StatusResponseType) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(StatusResponseType.VERSION_ATTRIB_NAME)) {
@@ -78,10 +83,10 @@ public abstract class StatusResponseTypeUnmarshaller extends AbstractSAMLObjectU
             } else if (attribute.getLocalName().equals(StatusResponseType.CONSENT_ATTRIB_NAME)) {
                 sr.setConsent(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusUnmarshaller.java
index 4a7288688..703676af5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/StatusUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -30,23 +32,25 @@ import org.opensaml.saml.saml2.core.StatusDetail;
 import org.opensaml.saml.saml2.core.StatusMessage;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Status} objects.
+ * A thread-safe Unmarshaller for {@link Status} objects.
  */
 public class StatusUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Status status = (Status) parentSAMLObject;
+        final Status status = (Status) parentObject;
 
-        if (childSAMLObject instanceof StatusCode) {
-            status.setStatusCode((StatusCode) childSAMLObject);
-        } else if (childSAMLObject instanceof StatusMessage) {
-            status.setStatusMessage((StatusMessage) childSAMLObject);
-        } else if (childSAMLObject instanceof StatusDetail) {
-            status.setStatusDetail((StatusDetail) childSAMLObject);
+        if (childObject instanceof StatusCode) {
+            status.setStatusCode((StatusCode) childObject);
+        } else if (childObject instanceof StatusMessage) {
+            status.setStatusMessage((StatusMessage) childObject);
+        } else if (childObject instanceof StatusDetail) {
+            status.setStatusDetail((StatusDetail) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationDataUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationDataUnmarshaller.java
index 808091ff1..f40a2d36a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationDataUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationDataUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -32,23 +34,26 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.SubjectConfirmationData} objects.
+ * A thread-safe Unmarshaller for {@link SubjectConfirmationData} objects.
  */
 public class SubjectConfirmationDataUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /**
      * {@inheritDoc}
      */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SubjectConfirmationData subjectCD = (SubjectConfirmationData) parentSAMLObject;
+        final SubjectConfirmationData subjectCD = (SubjectConfirmationData) parentObject;
 
-        subjectCD.getUnknownXMLObjects().add(childSAMLObject);
+        subjectCD.getUnknownXMLObjects().add(childObject);
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final SubjectConfirmationData subjectCD = (SubjectConfirmationData) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final SubjectConfirmationData subjectCD = (SubjectConfirmationData) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(SubjectConfirmationData.NOT_BEFORE_ATTRIB_NAME)
@@ -64,10 +69,11 @@ public class SubjectConfirmationDataUnmarshaller extends AbstractSAMLObjectUnmar
             } else if (attribute.getLocalName().equals(SubjectConfirmationData.ADDRESS_ATTRIB_NAME)) {
                 subjectCD.setAddress(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(subjectCD, attribute);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationUnmarshaller.java
index cdefe6782..05e3c110a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectConfirmationUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -28,12 +30,13 @@ import org.opensaml.saml.saml2.core.SubjectConfirmationData;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.SubjectConfirmation} objects.
+ * A thread-safe Unmarshaller for {@link SubjectConfirmation} objects.
  */
 public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final SubjectConfirmation subjectConfirmation = (SubjectConfirmation) parentObject;
 
@@ -51,14 +54,16 @@ public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshal
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final SubjectConfirmation subjectConfirmation = (SubjectConfirmation) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final SubjectConfirmation subjectConfirmation = (SubjectConfirmation) xmlObject;
 
         if (attribute.getLocalName().equals(SubjectConfirmation.METHOD_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             subjectConfirmation.setMethod(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectLocalityUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectLocalityUnmarshaller.java
index 7376344fb..67e69c385 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectLocalityUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectLocalityUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -33,8 +35,10 @@ import org.w3c.dom.Attr;
 public class SubjectLocalityUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final SubjectLocality subjectLocality = (SubjectLocality) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final SubjectLocality subjectLocality = (SubjectLocality) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(SubjectLocality.ADDRESS_ATTRIB_NAME)) {
@@ -42,10 +46,10 @@ public class SubjectLocalityUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (attribute.getLocalName().equals(SubjectLocality.DNS_NAME_ATTRIB_NAME)) {
                 subjectLocality.setDNSName(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectQueryUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectQueryUnmarshaller.java
index a231bc643..aad7be9e1 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectQueryUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectQueryUnmarshaller.java
@@ -21,25 +21,29 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Subject;
 import org.opensaml.saml.saml2.core.SubjectQuery;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.SubjectQuery}.
+ * A thread-safe Unmarshaller for {@link SubjectQuery}.
  */
 public abstract class SubjectQueryUnmarshaller extends RequestAbstractTypeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SubjectQuery sq = (SubjectQuery) parentSAMLObject;
+        final SubjectQuery sq = (SubjectQuery) parentObject;
 
-        if (childSAMLObject instanceof Subject) {
-            sq.setSubject((Subject) childSAMLObject);
+        if (childObject instanceof Subject) {
+            sq.setSubject((Subject) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectUnmarshaller.java
index a201232fa..3c616b993 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/SubjectUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.core.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -27,12 +29,13 @@ import org.opensaml.saml.saml2.core.Subject;
 import org.opensaml.saml.saml2.core.SubjectConfirmation;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Subject} objects.
+ * A thread-safe Unmarshaller for {@link Subject} objects.
  */
 public class SubjectUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final Subject subject = (Subject) parentObject;
 
@@ -48,4 +51,5 @@ public class SubjectUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             super.processChildElement(parentObject, childObject);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/TerminateUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/TerminateUnmarshaller.java
index cf1585a18..29d8941a6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/TerminateUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/core/impl/TerminateUnmarshaller.java
@@ -22,9 +22,10 @@
 package org.opensaml.saml.saml2.core.impl;
 
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
+import org.opensaml.saml.saml2.core.Terminate;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.core.Terminate} objects.
+ * A thread-safe Unmarshaller for {@link Terminate} objects.
  */
 public class TerminateUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RelayStateUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RelayStateUnmarshaller.java
index 16dd9b478..c0cfdbb5d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RelayStateUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RelayStateUnmarshaller.java
@@ -35,6 +35,7 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class RelayStateUnmarshaller extends XSStringUnmarshaller {
 
     /** {@inheritDoc} */
+    @Override
     protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
         final RelayState relayState = (RelayState) xmlObject;
@@ -50,4 +51,4 @@ public class RelayStateUnmarshaller extends XSStringUnmarshaller {
         
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestAuthenticatedUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestAuthenticatedUnmarshaller.java
index 2f1825093..5cd3a5df7 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestAuthenticatedUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestAuthenticatedUnmarshaller.java
@@ -35,6 +35,7 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class RequestAuthenticatedUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
+    @Override
     protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
         final RequestAuthenticated ra = (RequestAuthenticated) xmlObject;
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestUnmarshaller.java
index 1e726d265..ee912164c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/RequestUnmarshaller.java
@@ -37,9 +37,10 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class RequestUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
-        final Request request = (Request) samlObject;
+        final Request request = (Request) xmlObject;
         
         final QName attrName = QNameSupport.getNodeQName(attribute);
         if (Request.SOAP11_MUST_UNDERSTAND_ATTR_NAME.equals(attrName)) {
@@ -51,21 +52,22 @@ public class RequestUnmarshaller extends AbstractSAMLObjectUnmarshaller {
         } else if (Request.PROVIDER_NAME_ATTRIB_NAME.equals(attribute.getLocalName())) {
             request.setProviderName(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processChildElement(@Nonnull final XMLObject parentSAMLObject,
-            @Nonnull final XMLObject childSAMLObject) throws UnmarshallingException {
-        final Request request = (Request) parentSAMLObject;
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
+            throws UnmarshallingException {
+        final Request request = (Request) parentObject;
         
-        if (childSAMLObject instanceof Issuer) {
-            request.setIssuer((Issuer) childSAMLObject);
-        } else if (childSAMLObject instanceof IDPList) {
-            request.setIDPList((IDPList) childSAMLObject);
+        if (childObject instanceof Issuer) {
+            request.setIssuer((Issuer) childObject);
+        } else if (childObject instanceof IDPList) {
+            request.setIDPList((IDPList) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/ResponseUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/ResponseUnmarshaller.java
index 16f4a5920..2becff94d 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/ResponseUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/ResponseUnmarshaller.java
@@ -35,9 +35,10 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class ResponseUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
-        final Response response = (Response) samlObject;
+        final Response response = (Response) xmlObject;
         
         final QName attrName = QNameSupport.getNodeQName(attribute);
         if (Response.SOAP11_MUST_UNDERSTAND_ATTR_NAME.equals(attrName)) {
@@ -47,9 +48,9 @@ public class ResponseUnmarshaller extends AbstractSAMLObjectUnmarshaller {
         } else if (Response.ASSERTION_CONSUMER_SERVICE_URL_ATTRIB_NAME.equals(attribute.getLocalName())) {
             response.setAssertionConsumerServiceURL(attribute.getValue());
         } else { 
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
             
     }
 
-}
+}
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/SubjectConfirmationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/SubjectConfirmationUnmarshaller.java
index 29c01bf75..fe262a37f 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/SubjectConfirmationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/ecp/impl/SubjectConfirmationUnmarshaller.java
@@ -36,6 +36,7 @@ import net.shibboleth.shared.xml.QNameSupport;
 public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
+    @Override
     protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final SubjectConfirmation sc = (SubjectConfirmation) parentObject;
@@ -48,9 +49,10 @@ public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshal
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(@Nonnull final XMLObject samlObject, @Nonnull final Attr attribute)
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
             throws UnmarshallingException {
-        final SubjectConfirmation sc = (SubjectConfirmation) samlObject;
+        final SubjectConfirmation sc = (SubjectConfirmation) xmlObject;
 
         final QName attrName = QNameSupport.getNodeQName(attribute);
         if (SubjectConfirmation.SOAP11_MUST_UNDERSTAND_ATTR_NAME.equals(attrName)) {
@@ -60,7 +62,7 @@ public class SubjectConfirmationUnmarshaller extends AbstractSAMLObjectUnmarshal
         } else if (attribute.getLocalName().equals(SubjectConfirmation.METHOD_ATTRIB_NAME)) {
             sc.setMethod(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AdditionalMetadataLocationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AdditionalMetadataLocationUnmarshaller.java
index 8ca027f01..702a20dd8 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AdditionalMetadataLocationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AdditionalMetadataLocationUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.impl.XSURIUnmarshaller;
@@ -29,14 +31,16 @@ import org.w3c.dom.Attr;
 public class AdditionalMetadataLocationUnmarshaller extends XSURIUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AdditionalMetadataLocation aml = (AdditionalMetadataLocation) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AdditionalMetadataLocation aml = (AdditionalMetadataLocation) xmlObject;
         
         if (attribute.getLocalName().equals(AdditionalMetadataLocation.NAMESPACE_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             aml.setNamespaceURI(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AffiliationDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AffiliationDescriptorUnmarshaller.java
index 0c11cce6b..ae6f695e6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AffiliationDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AffiliationDescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -34,31 +36,34 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.AffiliationDescriptor}s.
+ * A thread safe Unmarshaller for {@link AffiliationDescriptor}s.
  */
 public class AffiliationDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AffiliationDescriptor descriptor = (AffiliationDescriptor) parentSAMLObject;
+        final AffiliationDescriptor descriptor = (AffiliationDescriptor) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            descriptor.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            descriptor.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof AffiliateMember) {
-            descriptor.getMembers().add((AffiliateMember) childSAMLObject);
-        } else if (childSAMLObject instanceof KeyDescriptor) {
-            descriptor.getKeyDescriptors().add((KeyDescriptor) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            descriptor.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Signature) {
+            descriptor.setSignature((Signature) childObject);
+        } else if (childObject instanceof AffiliateMember) {
+            descriptor.getMembers().add((AffiliateMember) childObject);
+        } else if (childObject instanceof KeyDescriptor) {
+            descriptor.getKeyDescriptors().add((KeyDescriptor) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AffiliationDescriptor descriptor = (AffiliationDescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AffiliationDescriptor descriptor = (AffiliationDescriptor) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(AffiliationDescriptor.OWNER_ID_ATTRIB_NAME)) {
@@ -72,7 +77,7 @@ public class AffiliationDescriptorUnmarshaller extends AbstractSAMLObjectUnmarsh
             } else if (attribute.getLocalName().equals(CacheableSAMLObject.CACHE_DURATION_ATTRIB_NAME)) {
                 descriptor.setCacheDuration(DOMTypeSupport.stringToDuration(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(descriptor, attribute);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeAuthorityDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeAuthorityDescriptorUnmarshaller.java
index bce860998..2674c0a18 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeAuthorityDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeAuthorityDescriptorUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.core.Attribute;
@@ -31,27 +33,29 @@ import org.opensaml.saml.saml2.metadata.AttributeService;
 import org.opensaml.saml.saml2.metadata.NameIDFormat;
 
 /**
- * A thread safe unmarshaller for {@link org.opensaml.saml.saml2.metadata.AttributeAuthorityDescriptor}s.
+ * A thread safe unmarshaller for {@link AttributeAuthorityDescriptor}.
  */
 public class AttributeAuthorityDescriptorUnmarshaller extends RoleDescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentElement, final XMLObject childElement)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AttributeAuthorityDescriptor descriptor = (AttributeAuthorityDescriptor) parentElement;
-
-        if (childElement instanceof AttributeService) {
-            descriptor.getAttributeServices().add((AttributeService) childElement);
-        } else if (childElement instanceof AssertionIDRequestService) {
-            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childElement);
-        } else if (childElement instanceof NameIDFormat) {
-            descriptor.getNameIDFormats().add((NameIDFormat) childElement);
-        } else if (childElement instanceof AttributeProfile) {
-            descriptor.getAttributeProfiles().add((AttributeProfile) childElement);
-        } else if (childElement instanceof Attribute) {
-            descriptor.getAttributes().add((Attribute) childElement);
+        final AttributeAuthorityDescriptor descriptor = (AttributeAuthorityDescriptor) parentObject;
+
+        if (childObject instanceof AttributeService) {
+            descriptor.getAttributeServices().add((AttributeService) childObject);
+        } else if (childObject instanceof AssertionIDRequestService) {
+            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childObject);
+        } else if (childObject instanceof NameIDFormat) {
+            descriptor.getNameIDFormats().add((NameIDFormat) childObject);
+        } else if (childObject instanceof AttributeProfile) {
+            descriptor.getAttributeProfiles().add((AttributeProfile) childObject);
+        } else if (childObject instanceof Attribute) {
+            descriptor.getAttributes().add((Attribute) childObject);
         } else {
-            super.processChildElement(parentElement, childElement);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeConsumingServiceUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeConsumingServiceUnmarshaller.java
index d084a05fe..56fdc79e2 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeConsumingServiceUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AttributeConsumingServiceUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -32,29 +34,32 @@ import org.opensaml.saml.saml2.metadata.ServiceName;
 import org.w3c.dom.Attr;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.AttributeConsumingService} objects.
+ * A thread safe Unmarshaller for {@link AttributeConsumingService} objects.
  */
 public class AttributeConsumingServiceUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AttributeConsumingService service = (AttributeConsumingService) parentSAMLObject;
+        final AttributeConsumingService service = (AttributeConsumingService) parentObject;
 
-        if (childSAMLObject instanceof ServiceName) {
-            service.getNames().add((ServiceName) childSAMLObject);
-        } else if (childSAMLObject instanceof ServiceDescription) {
-            service.getDescriptions().add((ServiceDescription) childSAMLObject);
-        } else if (childSAMLObject instanceof RequestedAttribute) {
-            service.getRequestedAttributes().add((RequestedAttribute) childSAMLObject);
+        if (childObject instanceof ServiceName) {
+            service.getNames().add((ServiceName) childObject);
+        } else if (childObject instanceof ServiceDescription) {
+            service.getDescriptions().add((ServiceDescription) childObject);
+        } else if (childObject instanceof RequestedAttribute) {
+            service.getRequestedAttributes().add((RequestedAttribute) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final AttributeConsumingService service = (AttributeConsumingService) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final AttributeConsumingService service = (AttributeConsumingService) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(AttributeConsumingService.INDEX_ATTRIB_NAME)) {
@@ -62,10 +67,11 @@ public class AttributeConsumingServiceUnmarshaller extends AbstractSAMLObjectUnm
             } else if (attribute.getLocalName().equals(AttributeConsumingService.IS_DEFAULT_ATTRIB_NAME)) {
                 service.setIsDefault(XSBooleanValue.valueOf(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AuthnAuthorityDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AuthnAuthorityDescriptorUnmarshaller.java
index cf8c34647..4691bf88e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AuthnAuthorityDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/AuthnAuthorityDescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.metadata.AssertionIDRequestService;
@@ -25,23 +27,25 @@ import org.opensaml.saml.saml2.metadata.AuthnQueryService;
 import org.opensaml.saml.saml2.metadata.NameIDFormat;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.AuthnAuthorityDescriptor} objects.
+ * A thread-safe Unmarshaller for {@link AuthnAuthorityDescriptor} objects.
  */
 public class AuthnAuthorityDescriptorUnmarshaller extends RoleDescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentElement, final XMLObject childElement)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final AuthnAuthorityDescriptor descriptor = (AuthnAuthorityDescriptor) parentElement;
+        final AuthnAuthorityDescriptor descriptor = (AuthnAuthorityDescriptor) parentObject;
 
-        if (childElement instanceof AuthnQueryService) {
-            descriptor.getAuthnQueryServices().add((AuthnQueryService) childElement);
-        } else if (childElement instanceof AssertionIDRequestService) {
-            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childElement);
-        } else if (childElement instanceof NameIDFormat) {
-            descriptor.getNameIDFormats().add((NameIDFormat) childElement);
+        if (childObject instanceof AuthnQueryService) {
+            descriptor.getAuthnQueryServices().add((AuthnQueryService) childObject);
+        } else if (childObject instanceof AssertionIDRequestService) {
+            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childObject);
+        } else if (childObject instanceof NameIDFormat) {
+            descriptor.getNameIDFormats().add((NameIDFormat) childObject);
         } else {
-            super.processChildElement(parentElement, childElement);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ContactPersonUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ContactPersonUnmarshaller.java
index 4a93b1bdf..7c1f44c0c 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ContactPersonUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ContactPersonUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -35,35 +37,38 @@ import org.opensaml.saml.saml2.metadata.TelephoneNumber;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.ContactPerson} objects.
+ * A thread-safe Unmarshaller for {@link ContactPerson} objects.
  */
 public class ContactPersonUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final ContactPerson person = (ContactPerson) parentSAMLObject;
+        final ContactPerson person = (ContactPerson) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            person.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Company) {
-            person.setCompany((Company) childSAMLObject);
-        } else if (childSAMLObject instanceof GivenName) {
-            person.setGivenName((GivenName) childSAMLObject);
-        } else if (childSAMLObject instanceof SurName) {
-            person.setSurName((SurName) childSAMLObject);
-        } else if (childSAMLObject instanceof EmailAddress) {
-            person.getEmailAddresses().add((EmailAddress) childSAMLObject);
-        } else if (childSAMLObject instanceof TelephoneNumber) {
-            person.getTelephoneNumbers().add((TelephoneNumber) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            person.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Company) {
+            person.setCompany((Company) childObject);
+        } else if (childObject instanceof GivenName) {
+            person.setGivenName((GivenName) childObject);
+        } else if (childObject instanceof SurName) {
+            person.setSurName((SurName) childObject);
+        } else if (childObject instanceof EmailAddress) {
+            person.getEmailAddresses().add((EmailAddress) childObject);
+        } else if (childObject instanceof TelephoneNumber) {
+            person.getTelephoneNumbers().add((TelephoneNumber) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final ContactPerson person = (ContactPerson) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final ContactPerson person = (ContactPerson) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(ContactPerson.CONTACT_TYPE_ATTRIB_NAME)) {
@@ -78,10 +83,11 @@ public class ContactPersonUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                             + attribute.getValue());
                 }
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(person, attribute);
         }
     }
+    
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EndpointUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EndpointUnmarshaller.java
index 7d8160830..150c229e6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EndpointUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EndpointUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -24,13 +26,15 @@ import org.opensaml.saml.saml2.metadata.Endpoint;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe unmarshaller for {@link org.opensaml.saml.saml2.metadata.Endpoint} objects.
+ * A thread-safe unmarshaller for {@link Endpoint} objects.
  */
 public class EndpointUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final Endpoint endpoint = (Endpoint) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final Endpoint endpoint = (Endpoint) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(Endpoint.BINDING_ATTRIB_NAME)) {
@@ -40,7 +44,7 @@ public class EndpointUnmarshaller extends AbstractSAMLObjectUnmarshaller {
             } else if (attribute.getLocalName().equals(Endpoint.RESPONSE_LOCATION_ATTRIB_NAME)) {
                 endpoint.setResponseLocation(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(endpoint, attribute);
@@ -50,10 +54,12 @@ public class EndpointUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     /**
      * {@inheritDoc}
      */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Endpoint endpoint = (Endpoint) parentSAMLObject;
+        final Endpoint endpoint = (Endpoint) parentObject;
 
-        endpoint.getUnknownXMLObjects().add(childSAMLObject);
+        endpoint.getUnknownXMLObjects().add(childObject);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntitiesDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntitiesDescriptorUnmarshaller.java
index 93c80a6dd..8385e3085 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntitiesDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntitiesDescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -33,31 +35,34 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.EntitiesDescriptor} objects.
+ * A thread safe Unmarshaller for {@link EntitiesDescriptor} objects.
  */
 public class EntitiesDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final EntitiesDescriptor entitiesDescriptor = (EntitiesDescriptor) parentSAMLObject;
+        final EntitiesDescriptor entitiesDescriptor = (EntitiesDescriptor) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            entitiesDescriptor.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof EntitiesDescriptor) {
-            entitiesDescriptor.getEntitiesDescriptors().add((EntitiesDescriptor) childSAMLObject);
-        } else if (childSAMLObject instanceof EntityDescriptor) {
-            entitiesDescriptor.getEntityDescriptors().add((EntityDescriptor) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            entitiesDescriptor.setSignature((Signature) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            entitiesDescriptor.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof EntitiesDescriptor) {
+            entitiesDescriptor.getEntitiesDescriptors().add((EntitiesDescriptor) childObject);
+        } else if (childObject instanceof EntityDescriptor) {
+            entitiesDescriptor.getEntityDescriptors().add((EntityDescriptor) childObject);
+        } else if (childObject instanceof Signature) {
+            entitiesDescriptor.setSignature((Signature) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final EntitiesDescriptor entitiesDescriptor = (EntitiesDescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final EntitiesDescriptor entitiesDescriptor = (EntitiesDescriptor) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(EntitiesDescriptor.ID_ATTRIB_NAME)) {
@@ -71,10 +76,10 @@ public class EntitiesDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshall
             } else if (attribute.getLocalName().equals(EntitiesDescriptor.NAME_ATTRIB_NAME)) {
                 entitiesDescriptor.setName(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
 
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntityDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntityDescriptorUnmarshaller.java
index afa9c9692..988e52b91 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntityDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/EntityDescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -37,37 +39,40 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.EntityDescriptor}s.
+ * A thread safe Unmarshaller for {@link EntityDescriptor}s.
  */
 public class EntityDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final EntityDescriptor entityDescriptor = (EntityDescriptor) parentSAMLObject;
+        final EntityDescriptor entityDescriptor = (EntityDescriptor) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            entityDescriptor.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            entityDescriptor.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof RoleDescriptor) {
-            entityDescriptor.getRoleDescriptors().add((RoleDescriptor) childSAMLObject);
-        } else if (childSAMLObject instanceof AffiliationDescriptor) {
-            entityDescriptor.setAffiliationDescriptor((AffiliationDescriptor) childSAMLObject);
-        } else if (childSAMLObject instanceof Organization) {
-            entityDescriptor.setOrganization((Organization) childSAMLObject);
-        } else if (childSAMLObject instanceof ContactPerson) {
-            entityDescriptor.getContactPersons().add((ContactPerson) childSAMLObject);
-        } else if (childSAMLObject instanceof AdditionalMetadataLocation) {
-            entityDescriptor.getAdditionalMetadataLocations().add((AdditionalMetadataLocation) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            entityDescriptor.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Signature) {
+            entityDescriptor.setSignature((Signature) childObject);
+        } else if (childObject instanceof RoleDescriptor) {
+            entityDescriptor.getRoleDescriptors().add((RoleDescriptor) childObject);
+        } else if (childObject instanceof AffiliationDescriptor) {
+            entityDescriptor.setAffiliationDescriptor((AffiliationDescriptor) childObject);
+        } else if (childObject instanceof Organization) {
+            entityDescriptor.setOrganization((Organization) childObject);
+        } else if (childObject instanceof ContactPerson) {
+            entityDescriptor.getContactPersons().add((ContactPerson) childObject);
+        } else if (childObject instanceof AdditionalMetadataLocation) {
+            entityDescriptor.getAdditionalMetadataLocations().add((AdditionalMetadataLocation) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final EntityDescriptor entityDescriptor = (EntityDescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final EntityDescriptor entityDescriptor = (EntityDescriptor) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(EntityDescriptor.ENTITY_ID_ATTRIB_NAME)) {
@@ -81,7 +86,7 @@ public class EntityDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller
             } else if (attribute.getLocalName().equals(CacheableSAMLObject.CACHE_DURATION_ATTRIB_NAME)) {
                 entityDescriptor.setCacheDuration(DOMTypeSupport.stringToDuration(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(entityDescriptor, attribute);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ExtensionsUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ExtensionsUnmarshaller.java
index 6d71ffbed..4f6d9efd2 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ExtensionsUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/ExtensionsUnmarshaller.java
@@ -17,41 +17,42 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
 import org.opensaml.saml.saml2.metadata.Extensions;
 import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
 import org.w3c.dom.Attr;
 
+import net.shibboleth.shared.primitive.LoggerFactory;
+
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.Extensions} objects.
+ * A thread-safe Unmarshaller for {@link Extensions} objects.
  */
 public class ExtensionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** Logger. */
-    private final Logger log = LoggerFactory.getLogger(AbstractSAMLObjectUnmarshaller.class);
-
-    /** Constructor. */
-    public ExtensionsUnmarshaller() {
-        super();
-    }
+    @Nonnull private final Logger log = LoggerFactory.getLogger(AbstractSAMLObjectUnmarshaller.class);
 
     /**
      * {@inheritDoc}
      */
-    protected void processChildElement(final XMLObject parentXMLObject, final XMLObject childXMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Extensions extensions = (Extensions) parentXMLObject;
+        final Extensions extensions = (Extensions) parentObject;
 
-        extensions.getUnknownXMLObjects().add(childXMLObject);
+        extensions.getUnknownXMLObjects().add(childObject);
     }
 
     /**
      * {@inheritDoc}
      */
-    protected void processAttribute(final XMLObject xmlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
         log.debug("Ignorning unknown attribute {}", attribute.getLocalName());
     }
 
@@ -61,4 +62,5 @@ public class ExtensionsUnmarshaller extends AbstractSAMLObjectUnmarshaller {
     protected void processElementContent(final XMLObject xmlObject, final String elementContent) {
         log.debug("Ignoring element content {}", elementContent);
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IDPSSODescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IDPSSODescriptorUnmarshaller.java
index 956dafc94..75d8f95d5 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IDPSSODescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IDPSSODescriptorUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -33,12 +35,13 @@ import org.opensaml.saml.saml2.metadata.SingleSignOnService;
 import org.w3c.dom.Attr;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.SSODescriptor} objects.
+ * A thread safe Unmarshaller for {@link IDPSSODescriptor} objects.
  */
 public class IDPSSODescriptorUnmarshaller extends SSODescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentObject, final XMLObject childObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
         final IDPSSODescriptor descriptor = (IDPSSODescriptor) parentObject;
 
@@ -58,14 +61,16 @@ public class IDPSSODescriptorUnmarshaller extends SSODescriptorUnmarshaller {
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final IDPSSODescriptor descriptor = (IDPSSODescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final IDPSSODescriptor descriptor = (IDPSSODescriptor) xmlObject;
 
         if (attribute.getLocalName().equals(IDPSSODescriptor.WANT_AUTHN_REQ_SIGNED_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             descriptor.setWantAuthnRequestsSigned(XSBooleanValue.valueOf(attribute.getValue()));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IndexedEndpointUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IndexedEndpointUnmarshaller.java
index 632f53b8f..aefd81cb6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IndexedEndpointUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/IndexedEndpointUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -28,13 +30,15 @@ import org.opensaml.saml.saml2.metadata.IndexedEndpoint;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe unmarshaller for {@link org.opensaml.saml.saml2.metadata.IndexedEndpoint} objects.
+ * A thread-safe unmarshaller for {@link IndexedEndpoint} objects.
  */
 public class IndexedEndpointUnmarshaller extends EndpointUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final IndexedEndpoint iEndpoint = (IndexedEndpoint) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final IndexedEndpoint iEndpoint = (IndexedEndpoint) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(IndexedEndpoint.INDEX_ATTRIB_NAME)) {
@@ -42,10 +46,10 @@ public class IndexedEndpointUnmarshaller extends EndpointUnmarshaller {
             } else if (attribute.getLocalName().equals(IndexedEndpoint.IS_DEFAULT_ATTRIB_NAME)) {
                 iEndpoint.setIsDefault(XSBooleanValue.valueOf(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/KeyDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/KeyDescriptorUnmarshaller.java
index 99a64651b..478a5e40a 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/KeyDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/KeyDescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -27,27 +29,30 @@ import org.opensaml.xmlsec.signature.KeyInfo;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe unmarshaller for {@link org.opensaml.saml.saml2.metadata.KeyDescriptor}s.
+ * A thread-safe unmarshaller for {@link KeyDescriptor}.
  */
 public class KeyDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final KeyDescriptor keyDescriptor = (KeyDescriptor) parentSAMLObject;
+        final KeyDescriptor keyDescriptor = (KeyDescriptor) parentObject;
 
-        if (childSAMLObject instanceof KeyInfo) {
-            keyDescriptor.setKeyInfo((KeyInfo) childSAMLObject);
-        } else if (childSAMLObject instanceof EncryptionMethod) {
-            keyDescriptor.getEncryptionMethods().add((EncryptionMethod) childSAMLObject);
+        if (childObject instanceof KeyInfo) {
+            keyDescriptor.setKeyInfo((KeyInfo) childObject);
+        } else if (childObject instanceof EncryptionMethod) {
+            keyDescriptor.getEncryptionMethods().add((EncryptionMethod) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final KeyDescriptor keyDescriptor = (KeyDescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final KeyDescriptor keyDescriptor = (KeyDescriptor) xmlObject;
 
         if (attribute.getName().equals(KeyDescriptor.USE_ATTRIB_NAME) && attribute.getNamespaceURI() == null) {
             if (UsageType.SIGNING.getValue().equals(attribute.getValue())) {
@@ -58,7 +63,7 @@ public class KeyDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
                 throw new UnmarshallingException("Invalid key usage type: " + attribute.getValue());
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedNameUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedNameUnmarshaller.java
index dea4acc63..841fac6b3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedNameUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedNameUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.LangBearing;
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
@@ -34,14 +36,17 @@ public class LocalizedNameUnmarshaller extends XSStringUnmarshaller {
     /**
      * {@inheritDoc}
      */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        
         if (attribute.getLocalName().equals(LangBearing.XML_LANG_ATTR_LOCAL_NAME)
                 && XMLConstants.XML_NS.equals(attribute.getNamespaceURI())) {
-            final LocalizedName name = (LocalizedName) samlObject;
+            final LocalizedName name = (LocalizedName) xmlObject;
 
             name.setXMLLang(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedURIUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedURIUnmarshaller.java
index cf64bec31..25679e50e 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedURIUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/LocalizedURIUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.LangBearing;
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
@@ -34,14 +36,17 @@ public class LocalizedURIUnmarshaller extends XSURIUnmarshaller {
     /**
      * {@inheritDoc}
      */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        
         if (attribute.getLocalName().equals(LangBearing.XML_LANG_ATTR_LOCAL_NAME)
                 && XMLConstants.XML_NS.equals(attribute.getNamespaceURI())) {
-            final LocalizedURI name = (LocalizedURI) samlObject;
+            final LocalizedURI name = (LocalizedURI) xmlObject;
 
             name.setXMLLang(attribute.getValue());
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/OrganizationUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/OrganizationUnmarshaller.java
index 0bc32c447..9f53e1448 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/OrganizationUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/OrganizationUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -32,37 +34,40 @@ import org.opensaml.saml.saml2.metadata.OrganizationURL;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.Organization} objects.
+ * A thread-safe Unmarshaller for {@link Organization} objects.
  */
 public class OrganizationUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final Organization org = (Organization) parentSAMLObject;
+        final Organization org = (Organization) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            org.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof OrganizationName) {
-            org.getOrganizationNames().add((OrganizationName) childSAMLObject);
-        } else if (childSAMLObject instanceof OrganizationDisplayName) {
-            org.getDisplayNames().add((OrganizationDisplayName) childSAMLObject);
-        } else if (childSAMLObject instanceof OrganizationURL) {
-            org.getURLs().add((OrganizationURL) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            org.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof OrganizationName) {
+            org.getOrganizationNames().add((OrganizationName) childObject);
+        } else if (childObject instanceof OrganizationDisplayName) {
+            org.getDisplayNames().add((OrganizationDisplayName) childObject);
+        } else if (childObject instanceof OrganizationURL) {
+            org.getURLs().add((OrganizationURL) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /**
      * {@inheritDoc}
      */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
 
         if (attribute.getNamespaceURI() == null) {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         } else {
-            processUnknownAttribute((Organization) samlObject, attribute);
+            processUnknownAttribute((Organization) xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/PDPDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/PDPDescriptorUnmarshaller.java
index 7b377558d..c27488b70 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/PDPDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/PDPDescriptorUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.metadata.AssertionIDRequestService;
@@ -29,23 +31,25 @@ import org.opensaml.saml.saml2.metadata.NameIDFormat;
 import org.opensaml.saml.saml2.metadata.PDPDescriptor;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.PDPDescriptor} objects.
+ * A thread safe Unmarshaller for {@link PDPDescriptor} objects.
  */
 public class PDPDescriptorUnmarshaller extends RoleDescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final PDPDescriptor descriptor = (PDPDescriptor) parentSAMLObject;
-
-        if (childSAMLObject instanceof AuthzService) {
-            descriptor.getAuthzServices().add((AuthzService) childSAMLObject);
-        } else if (childSAMLObject instanceof AssertionIDRequestService) {
-            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childSAMLObject);
-        } else if (childSAMLObject instanceof NameIDFormat) {
-            descriptor.getNameIDFormats().add((NameIDFormat) childSAMLObject);
+        final PDPDescriptor descriptor = (PDPDescriptor) parentObject;
+
+        if (childObject instanceof AuthzService) {
+            descriptor.getAuthzServices().add((AuthzService) childObject);
+        } else if (childObject instanceof AssertionIDRequestService) {
+            descriptor.getAssertionIDRequestServices().add((AssertionIDRequestService) childObject);
+        } else if (childObject instanceof NameIDFormat) {
+            descriptor.getNameIDFormats().add((NameIDFormat) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RequestedAttributeUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RequestedAttributeUnmarshaller.java
index 411c0fb3f..6bea05eb3 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RequestedAttributeUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RequestedAttributeUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -29,19 +31,21 @@ import org.opensaml.saml.saml2.metadata.RequestedAttribute;
 import org.w3c.dom.Attr;
 
 /**
- * A thread-safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.RequestedAttribute} objects.
+ * A thread-safe Unmarshaller for {@link RequestedAttribute} objects.
  */
 public class RequestedAttributeUnmarshaller extends AttributeUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final RequestedAttribute requestedAttribute = (RequestedAttribute) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RequestedAttribute requestedAttribute = (RequestedAttribute) xmlObject;
         
         if (attribute.getLocalName().equals(RequestedAttribute.IS_REQUIRED_ATTRIB_NAME)
                 && attribute.getNamespaceURI() == null) {
             requestedAttribute.setIsRequired(XSBooleanValue.valueOf(attribute.getValue()));
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RoleDescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RoleDescriptorUnmarshaller.java
index 2286f4671..7642d80f6 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RoleDescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/RoleDescriptorUnmarshaller.java
@@ -19,6 +19,8 @@ package org.opensaml.saml.saml2.metadata.impl;
 
 import java.util.StringTokenizer;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.common.AbstractSAMLObjectUnmarshaller;
@@ -37,33 +39,36 @@ import com.google.common.base.Strings;
 import net.shibboleth.shared.xml.DOMTypeSupport;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.RoleDescriptor} objects.
+ * A thread safe Unmarshaller for {@link RoleDescriptor} objects.
  */
 public abstract class RoleDescriptorUnmarshaller extends AbstractSAMLObjectUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final RoleDescriptor roleDescriptor = (RoleDescriptor) parentSAMLObject;
+        final RoleDescriptor roleDescriptor = (RoleDescriptor) parentObject;
 
-        if (childSAMLObject instanceof Extensions) {
-            roleDescriptor.setExtensions((Extensions) childSAMLObject);
-        } else if (childSAMLObject instanceof Signature) {
-            roleDescriptor.setSignature((Signature) childSAMLObject);
-        } else if (childSAMLObject instanceof KeyDescriptor) {
-            roleDescriptor.getKeyDescriptors().add((KeyDescriptor) childSAMLObject);
-        } else if (childSAMLObject instanceof Organization) {
-            roleDescriptor.setOrganization((Organization) childSAMLObject);
-        } else if (childSAMLObject instanceof ContactPerson) {
-            roleDescriptor.getContactPersons().add((ContactPerson) childSAMLObject);
+        if (childObject instanceof Extensions) {
+            roleDescriptor.setExtensions((Extensions) childObject);
+        } else if (childObject instanceof Signature) {
+            roleDescriptor.setSignature((Signature) childObject);
+        } else if (childObject instanceof KeyDescriptor) {
+            roleDescriptor.getKeyDescriptors().add((KeyDescriptor) childObject);
+        } else if (childObject instanceof Organization) {
+            roleDescriptor.setOrganization((Organization) childObject);
+        } else if (childObject instanceof ContactPerson) {
+            roleDescriptor.getContactPersons().add((ContactPerson) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final RoleDescriptor roleDescriptor = (RoleDescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final RoleDescriptor roleDescriptor = (RoleDescriptor) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(RoleDescriptor.ID_ATTRIB_NAME)) {
@@ -82,7 +87,7 @@ public abstract class RoleDescriptorUnmarshaller extends AbstractSAMLObjectUnmar
             } else if (attribute.getLocalName().equals(RoleDescriptor.ERROR_URL_ATTRIB_NAME)) {
                 roleDescriptor.setErrorURL(attribute.getValue());
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
             processUnknownAttribute(roleDescriptor, attribute);
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SPSSODescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SPSSODescriptorUnmarshaller.java
index a32bc3523..9c4400d74 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SPSSODescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SPSSODescriptorUnmarshaller.java
@@ -21,6 +21,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.core.xml.schema.XSBooleanValue;
@@ -30,27 +32,30 @@ import org.opensaml.saml.saml2.metadata.SPSSODescriptor;
 import org.w3c.dom.Attr;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.SPSSODescriptor} objects.
+ * A thread safe Unmarshaller for {@link SPSSODescriptor} objects.
  */
 public class SPSSODescriptorUnmarshaller extends SSODescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentSAMLObject, final XMLObject childSAMLObject)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SPSSODescriptor descriptor = (SPSSODescriptor) parentSAMLObject;
+        final SPSSODescriptor descriptor = (SPSSODescriptor) parentObject;
 
-        if (childSAMLObject instanceof AssertionConsumerService) {
-            descriptor.getAssertionConsumerServices().add((AssertionConsumerService) childSAMLObject);
-        } else if (childSAMLObject instanceof AttributeConsumingService) {
-            descriptor.getAttributeConsumingServices().add((AttributeConsumingService) childSAMLObject);
+        if (childObject instanceof AssertionConsumerService) {
+            descriptor.getAssertionConsumerServices().add((AssertionConsumerService) childObject);
+        } else if (childObject instanceof AttributeConsumingService) {
+            descriptor.getAttributeConsumingServices().add((AttributeConsumingService) childObject);
         } else {
-            super.processChildElement(parentSAMLObject, childSAMLObject);
+            super.processChildElement(parentObject, childObject);
         }
     }
 
     /** {@inheritDoc} */
-    protected void processAttribute(final XMLObject samlObject, final Attr attribute) throws UnmarshallingException {
-        final SPSSODescriptor descriptor = (SPSSODescriptor) samlObject;
+    @Override
+    protected void processAttribute(@Nonnull final XMLObject xmlObject, @Nonnull final Attr attribute)
+            throws UnmarshallingException {
+        final SPSSODescriptor descriptor = (SPSSODescriptor) xmlObject;
 
         if (attribute.getNamespaceURI() == null) {
             if (attribute.getLocalName().equals(SPSSODescriptor.AUTH_REQUESTS_SIGNED_ATTRIB_NAME)) {
@@ -58,10 +63,10 @@ public class SPSSODescriptorUnmarshaller extends SSODescriptorUnmarshaller {
             } else if (attribute.getLocalName().equals(SPSSODescriptor.WANT_ASSERTIONS_SIGNED_ATTRIB_NAME)) {
                 descriptor.setWantAssertionsSigned(XSBooleanValue.valueOf(attribute.getValue()));
             } else {
-                super.processAttribute(samlObject, attribute);
+                super.processAttribute(xmlObject, attribute);
             }
         } else {
-            super.processAttribute(samlObject, attribute);
+            super.processAttribute(xmlObject, attribute);
         }
     }
     
diff --git a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SSODescriptorUnmarshaller.java b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SSODescriptorUnmarshaller.java
index 174121f68..c51d955ee 100644
--- a/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SSODescriptorUnmarshaller.java
+++ b/opensaml-saml-impl/src/main/java/org/opensaml/saml/saml2/metadata/impl/SSODescriptorUnmarshaller.java
@@ -17,6 +17,8 @@
 
 package org.opensaml.saml.saml2.metadata.impl;
 
+import javax.annotation.Nonnull;
+
 import org.opensaml.core.xml.XMLObject;
 import org.opensaml.core.xml.io.UnmarshallingException;
 import org.opensaml.saml.saml2.metadata.ArtifactResolutionService;
@@ -26,24 +28,27 @@ import org.opensaml.saml.saml2.metadata.SSODescriptor;
 import org.opensaml.saml.saml2.metadata.SingleLogoutService;
 
 /**
- * A thread safe Unmarshaller for {@link org.opensaml.saml.saml2.metadata.SSODescriptor} objects.
+ * A thread safe Unmarshaller for {@link SSODescriptor} objects.
  */
 public abstract class SSODescriptorUnmarshaller extends RoleDescriptorUnmarshaller {
 
     /** {@inheritDoc} */
-    protected void processChildElement(final XMLObject parentElement, final XMLObject childElement)
+    @Override
+    protected void processChildElement(@Nonnull final XMLObject parentObject, @Nonnull final XMLObject childObject)
             throws UnmarshallingException {
-        final SSODescriptor descriptor = (SSODescriptor) parentElement;
-        if (childElement instanceof ArtifactResolutionService) {
-            descriptor.getArtifactResolutionServices().add((ArtifactResolutionService) childElement);
-        } else if (childElement instanceof SingleLogoutService) {
-            descriptor.getSingleLogoutServices().add((SingleLogoutService) childElement);
-        } else if (childElement instanceof ManageNameIDService) {
-            descriptor.getManageNameIDServices().add((ManageNameIDService) childElement);
-        } else if (childElement instanceof NameIDFormat) {
-            descriptor.getNameIDFormats().add((NameIDFormat) childElement);
+        final SSODescriptor descriptor = (SSODescriptor) parentObject;
+        
+        if (childObject instanceof ArtifactResolutionService) {
+            descriptor.getArtifactResolutionServices().add((ArtifactResolutionService) childObject);
+        } else if (childObject instanceof SingleLogoutService) {
+            descriptor.getSingleLogoutServices().add((SingleLogoutService) childObject);
+        } else if (childObject instanceof ManageNameIDService) {
+            descriptor.getManageNameIDServices().add((ManageNameIDService) childObject);
+        } else if (childObject instanceof NameIDFormat) {
+            descriptor.getNameIDFormats().add((NameIDFormat) childObject);
         } else {
-            super.processChildElement(parentElement, childElement);
+            super.processChildElement(parentObject, childObject);
         }
     }
+
 }
\ No newline at end of file

-- 
To stop receiving notification emails like this one, please contact
the administrator of this repository.


More information about the commits mailing list