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);
}
}
- os << "]\n";
+ os << ']';
return os;
}
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()) {
}
}
- 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)
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);