From 1a4563f00ad06f3a647c59d63c5d2f7a5e55339e Mon Sep 17 00:00:00 2001
From: Guillaume Rousse <guillaume.rousse@renater.fr>
Date: Fri, 3 Nov 2017 14:15:46 +0100
Subject: [PATCH] simplification: each entity has a single entityID attribute

---
 lib/IdPAccountManager/SAMLMetadata.pm | 14 +++++---------
 1 file changed, 5 insertions(+), 9 deletions(-)

diff --git a/lib/IdPAccountManager/SAMLMetadata.pm b/lib/IdPAccountManager/SAMLMetadata.pm
index 06e16fa..b7238f6 100644
--- a/lib/IdPAccountManager/SAMLMetadata.pm
+++ b/lib/IdPAccountManager/SAMLMetadata.pm
@@ -44,16 +44,12 @@ sub parse {
         @{ $self->{doc}->getElementsByLocalName('EntityDescriptor') })
     {
 
-        my $data = {};
+        my $id = $EntityDescriptor->getAttribute('entityID');
+        next if $args{entity_id} && $args{entity_id} ne $id;
 
-        if ($EntityDescriptor->hasAttributes()) {
-            foreach my $attr ($EntityDescriptor->getAttribute('entityID')) {
-                $data->{entityid} = $attr;
-            }
-        }
-
-        next if ($args{entity_id}
-            && ($args{entity_id} ne $data->{entityid}));
+        my $data = {
+            entityid => $id
+        };
 
         foreach my $child ($EntityDescriptor->childNodes()) {
 
-- 
GitLab