openstack team mailing list archive
-
openstack team
-
Mailing list archive
-
Message #02978
Re: Feedback on HTTP APIs
>> On Fri, Jun 3, 2011 at 11:34 AM, Thorsten von Eicken <tve@xxxxxxxxxxxxxx> wrote:
>>>> Really? The way I understand it, when I retrieve resource X I will get a
>>>> bookmark link for X. But when I retrieve resource Y that happens to have a
>>>> reference to X this references will not include the bookmark link for X, it
>>>> will just include X's URL. I'd then have to retrieve that URL, which would
>>>> get me that resource's bookmark link and then realize that this is actually
>>>> X which I already have. Or perhaps I'm not understanding the docs correctly?
You are understanding things correctly and it does seem a bit overly complex. Worst yet it has implications when you have version changes. Say you retrieve Y but don't follow the reference to X right away -- say you store the reference for later. The reference has a URI with a version number in it -- it's possible that the version is changed by the time you want to retrieve it -- which means you lose access to the resource. We try to fix the problem in the latest spec essentially we supply a self and a bookmark link when you retrieve a resource. Bookmark links you can use for long term storage -- self links you can follow right away -- we also supply the resource ID.
See the get server details example:
http://docs.openstack.org/cactus/openstack-compute/developer/openstack-compute-api-1.1/content/Get_Server_Details-d1e2623.html
This has implications in how you create new resources. See Links and References:
http://docs.openstack.org/cactus/openstack-compute/developer/openstack-compute-api-1.1/content/LinksReferences.html
Thoughts?
-jOrGe W.
References