So, I understand mimicking the Perl version exactly, but I think this _might_ 
be something we don't really need to transfer from the Perl version. Since the 
Perl version is `internal`, we might have some more leeway in dropping this 
behavior because I believe that `internal` distinction means that only 
components within TC should use it. As far as I can tell, TR is the only 
internal consumer of this API, and I'm pretty sure it will reject any 
federations response that contains `{"cdnName": "foo"}` in the list of 
federations. This is because TR requires the "deliveryService" and "mappings" 
keys in each object in the list and throws an exception if any object in the 
list doesn't have those keys.

Being able to get rid of this behavior also removes the heterogeneous response 
problem with this endpoint, and I think if we find a dependency on this weird 
behavior somewhere as we transition components to this new API, we should just 
remove that dependency on getting back that `tc.AllFederationCDN` object as it 
should be totally unnecessary anyways.

I won't hold up the PR for this, since we can still remove this weird behavior 
later, but do you agree that it can be removed?

[ Full content available at: https://github.com/apache/trafficcontrol/pull/2862 
]
This message was relayed via gitbox.apache.org for [email protected]

Reply via email to