[java-opensaml COMMIT] /trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/Signat...

noreply at shibboleth.net noreply at shibboleth.net
Mon Sep 14 16:34:13 EDT 2015


Author: scantor
Date: Mon Sep 14 16:34:13 2015
New Revision: 4338

URL: http://svn.shibboleth.net/view/java-opensaml?rev=4338&view=rev
Log:
Improve logging of unnamed EntitiesDescriptors.

Modified:
    trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java

Modified: trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java
URL: http://svn.shibboleth.net/view/java-opensaml/trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java?rev=4338&r1=4337&r2=4338&view=diff
==============================================================================
--- trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java	(original)
+++ trunk/opensaml-saml-impl/src/main/java/org/opensaml/saml/metadata/resolver/filter/impl/SignatureValidationFilter.java	Mon Sep 14 16:34:13 2015
@@ -291,10 +291,11 @@
      *                          on the root EntitiesDescriptor specified
      */
     protected void processEntityGroup(@Nonnull final EntitiesDescriptor entitiesDescriptor) throws FilterException {
-        log.trace("Processing EntitiesDescriptor group: {}", entitiesDescriptor.getName());
+        final String name = getGroupName(entitiesDescriptor);
+        log.trace("Processing EntitiesDescriptor group: {}", name);
         
         if (entitiesDescriptor.isSigned()) {
-            verifySignature(entitiesDescriptor, entitiesDescriptor.getName(), true);
+            verifySignature(entitiesDescriptor, name, true);
         }
         
         // Can't use IndexedXMLObjectChildrenList sublist iterator remove() to remove members,
@@ -329,12 +330,13 @@
         final Iterator<EntitiesDescriptor> entitiesIter = entitiesDescriptor.getEntitiesDescriptors().iterator();
         while(entitiesIter.hasNext()) {
             final EntitiesDescriptor entitiesChild = entitiesIter.next();
-            log.trace("Processing EntitiesDescriptor member: {}", entitiesChild.getName());
+            final String childName = getGroupName(entitiesChild);
+            log.trace("Processing EntitiesDescriptor member: {}", childName);
             try {
                 processEntityGroup(entitiesChild);
             } catch (final FilterException e) {
                log.error("EntitiesDescriptor '{}' failed signature verification, removing from metadata provider", 
-                       entitiesChild.getName()); 
+                       childName); 
                toRemove.add(entitiesChild);
             }
         }
@@ -343,7 +345,7 @@
             entitiesDescriptor.getEntitiesDescriptors().removeAll(toRemove);
         }
     }
-
+    
     /**
      * Evaluate the signature on the signed metadata instance.
      * 
@@ -464,5 +466,24 @@
         final String roleName = role.getElementQName().getLocalPart();
         return "[Role: " + entityID + "::" + roleName + "]";
     }
+
+    /**
+     * Get the group's name, or a suitable facsimile if not named.
+     * 
+     * @param group the {@link EntitiesDescriptor}
+     * 
+     * @return a suitable name to use for logging
+     */
+    @Nonnull @NotEmpty protected String getGroupName(@Nonnull final EntitiesDescriptor group) {
+        String name = group.getName();
+        if (name != null) {
+            return name;
+        }
+        name = group.getID();
+        if (name != null) {
+            return name;
+        }
+        return "(unnamed)";
+    }
     
 }



More information about the commits mailing list