Nice catch! It's easy to miss the kludge across the entirety of API definition.
As for fixing it, I am 50/50. Personally I wouldn't want to touch the neutron api/extension code with a 10 foot pole :)
On the other hand, the kludge should be discouraged but it generally requires a rethinking of the API. For instance, the l3 and trunk APIs have stayed away from the subresource pattern that came to life with flavor, QoS and bgpvpn.
Nice catch! It's easy to miss the kludge across the entirety of API definition.
As for fixing it, I am 50/50. Personally I wouldn't want to touch the neutron api/extension code with a 10 foot pole :)
On the other hand, the kludge should be discouraged but it generally requires a rethinking of the API. For instance, the l3 and trunk APIs have stayed away from the subresource pattern that came to life with flavor, QoS and bgpvpn.