Fix JSON array punctuation.
authorScott Cantor <cantor.2@osu.edu>
Tue, 28 Sep 2010 19:08:34 +0000 (19:08 +0000)
committerScott Cantor <cantor.2@osu.edu>
Tue, 28 Sep 2010 19:08:34 +0000 (19:08 +0000)
saml/saml2/metadata/impl/ChainingMetadataProvider.cpp
saml/saml2/metadata/impl/DiscoverableMetadataProvider.cpp

index 3e5f312..ef2a3ec 100644 (file)
@@ -76,13 +76,15 @@ namespace opensaml {
                 os << "[\n";
                 // Lock each provider in turn and suck in its feed.
                 for (vector<MetadataProvider*>::const_iterator m = m_providers.begin(); m != m_providers.end(); ++m) {
                 os << "[\n";
                 // Lock each provider in turn and suck in its feed.
                 for (vector<MetadataProvider*>::const_iterator m = m_providers.begin(); m != m_providers.end(); ++m) {
+                    if (m != m_providers.begin())
+                        os << ",\n";
                     DiscoverableMetadataProvider* d = dynamic_cast<DiscoverableMetadataProvider*>(*m);
                     if (d) {
                         Locker locker(d);
                         d->outputFeed(os);
                     }
                 }
                     DiscoverableMetadataProvider* d = dynamic_cast<DiscoverableMetadataProvider*>(*m);
                     if (d) {
                         Locker locker(d);
                         d->outputFeed(os);
                     }
                 }
-                os << "]\n";
+                os << ']';
                 return os;
             }
 
                 return os;
             }
 
index 5274446..1e3a9bc 100644 (file)
@@ -35,7 +35,7 @@ using namespace xmltooling;
 using namespace std;
 
 namespace {
 using namespace std;
 
 namespace {
-    void disco(string& s, const EntityDescriptor* entity, bool first) {
+    void disco(string& s, const EntityDescriptor* entity, bool& first) {
         if (entity) {
             const vector<IDPSSODescriptor*>& idps = entity->getIDPSSODescriptors();
             if (!idps.empty()) {
         if (entity) {
             const vector<IDPSSODescriptor*>& idps = entity->getIDPSSODescriptors();
             if (!idps.empty()) {
@@ -161,7 +161,7 @@ namespace {
         }
     }
 
         }
     }
 
-    void disco(string& s, const EntitiesDescriptor* group, bool first) {
+    void disco(string& s, const EntitiesDescriptor* group, bool& first) {
         if (group) {
             const vector<EntitiesDescriptor*>& groups = group->getEntitiesDescriptors();
             for (vector<EntitiesDescriptor*>::const_iterator i = groups.begin(); i != groups.end(); ++i)
         if (group) {
             const vector<EntitiesDescriptor*>& groups = group->getEntitiesDescriptors();
             for (vector<EntitiesDescriptor*>::const_iterator i = groups.begin(); i != groups.end(); ++i)
@@ -189,7 +189,7 @@ void DiscoverableMetadataProvider::generateFeed()
     const XMLObject* object = getMetadata();
     disco(m_feed, dynamic_cast<const EntitiesDescriptor*>(object), first);
     disco(m_feed, dynamic_cast<const EntityDescriptor*>(object), first);
     const XMLObject* object = getMetadata();
     disco(m_feed, dynamic_cast<const EntitiesDescriptor*>(object), first);
     disco(m_feed, dynamic_cast<const EntityDescriptor*>(object), first);
-    m_feed += "\n]\n";
+    m_feed += "\n]";
 
     SAMLConfig::getConfig().generateRandomBytes(m_feedTag, 4);
     m_feedTag = SAMLArtifact::toHex(m_feedTag);
 
     SAMLConfig::getConfig().generateRandomBytes(m_feedTag, 4);
     m_feedTag = SAMLArtifact::toHex(m_feedTag);