[openstack-dev] XML Support for Nova v3 API

Dolph Mathews dolph.mathews at gmail.com
Thu Jun 20 18:48:29 UTC 2013


On Thu, Jun 20, 2013 at 10:51 AM, Russell Bryant <rbryant at redhat.com> wrote:

> On 06/20/2013 11:20 AM, Brian Elliott wrote:
> > On Jun 19, 2013, at 7:34 PM, Christopher Yeoh <cbkyeoh at gmail.com> wrote:
> >
> >> Hi,
> >>
> >> Just wondering what people thought about how necessary it is to keep
> XML support for the Nova v3 API, given that if we want to drop it doing so
> during the v2->v3 transition is pretty much the ideal time to do so.
> >>
> >> The current plan is to keep it and is what we have been doing so far
> when porting extensions, but there are pretty obvious long term development
> and test savings if we only have one API format to support.
> >>
> >> Regards,
> >>
> >> Chris
> >>
> >
> > Can we support CORBA?
> >
> > No really, it'd be great to drop support for it while we can.
>
> I agree personally ... but this has come up before, and when polling the
> larger audience (and not just the dev list), there is still a large
> amount of demand for XML support (or at least that was my
> interpretation).  So, I think it should stay.
>
> I'm all for anything that makes supporting both easier.  It doesn't have
> to be the ideal XML representation.  If we wanted to adopt different
> formatting to make supporting it easier (automatic conversion from json
> in the code I guess), I'd be fine with that.
>

Sounds like keystone's xml_body middleware, which rewrites JSON <--> XML on
demand, so keystone itself only has to speak JSON. The v3 API is designed
with a few accommodations to make serialization to/from XML a bit easier
(i.e. always including a everything in a container), and the serializer
contains a few hardcoded exceptions to support the v2 API's inconsistent
XML definition. Otherwise, it generally just applies conventions to convert
from one format to the other.

Middleware:
https://github.com/openstack/keystone/blob/7ccfac73fb204e65f6cdcb8aa2ed6a053846967c/keystone/middleware/core.py#L144

The de/serializer:
https://github.com/openstack/keystone/blob/7ccfac73fb204e65f6cdcb8aa2ed6a053846967c/keystone/common/serializer.py


>
> --
> Russell Bryant
>
> _______________________________________________
> OpenStack-dev mailing list
> OpenStack-dev at lists.openstack.org
> http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20130620/8a01c9a4/attachment.html>


More information about the OpenStack-dev mailing list