Thanks Alena. Yes, that answers my question!

Regards,
Gaurav


On Fri, Aug 8, 2014 at 9:45 PM, Alena Prokharchyk <
alena.prokharc...@citrix.com> wrote:

> Gaurav,
>
> "Ideally, when we search by Id, then exception should be thrown and when
> We expect by passing account/domainid/projectid/networkid etc, then
> Noneshould be returned. Do all List APIs follow a similar guideline?²
>
> Yes, all of CS APIs follow this behavior. If non-existing Id is passed in,
> then the error is thrown by the DB Id validator. In case of public ip
> address its different, and let me explain why.
>
> When the ip gets disassociated, it doesn¹t get deleted. It¹s just marked
> as non-allocated, and left in the DB so next associateIpAddress can pick
> it up. Therefore you don¹t see any exception when requesting the ip by id.
> Why empty list is returned then? Because by default, listPublicIpAddresses
> returns allocated ips only. If you want to see free ips as well, you have
> to pass ³allocatedOnly=false² to the call.
>
> Hope it answers your question.
>
> -Alena.
>
>
>
> On 8/8/14, 2:05 AM, "Gaurav Aradhye" <gaurav.arad...@clogeny.com> wrote:
>
> >Thanks Daan. I will update the page.
> >
> >Regards,
> >Gaurav
> >
> >
> >On Fri, Aug 8, 2014 at 2:20 PM, Daan Hoogland <daan.hoogl...@gmail.com>
> >wrote:
> >
> >> Gaurav,
> >>
> >> I think you are now pointing at one of the qualities of our API that
> >> need to be addressed in 5.0 [1]. I may be wrong but I don't think a
> >> standard behavior in these cases is defined and every list api has a
> >> choice of several conventions to folow. Feel free to define what the
> >> behavior should be in a future version by editing [1] :)
> >>
> >> [1] https://cwiki.apache.org/confluence/display/CLOUDSTACK/API+changes
> >>
> >> On Fri, Aug 8, 2014 at 10:44 AM, Gaurav Aradhye
> >> <gaurav.arad...@clogeny.com> wrote:
> >> > Hello,
> >> >
> >> > Can somebody please address this query?
> >> >
> >> > Regards,
> >> > Gaurav
> >> >
> >> >
> >> > On Thu, Aug 7, 2014 at 10:23 PM, Gaurav Aradhye <
> >> gaurav.arad...@clogeny.com>
> >> > wrote:
> >> >
> >> >> I want to understand the output of the list APIs when the entity is
> >>not
> >> >> present / deleted. Suppose I create an account, create a network
> >>within
> >> it
> >> >> and acquire a public IP address in the network.
> >> >>
> >> >> 1) ListPublicIpAddresses  - public ip id passed, returns public IP
> >> >> 2) ListPublicIpAddresses - account, domainid passed, returns public
> >>IP
> >> >>
> >> >> Now I delete the public IP (Disassociate).
> >> >>
> >> >> After this operation, I expect following results:
> >> >> 1) ListPublicIpAddreses - account,domain id passed, result: None
> >> (assuming
> >> >> there was only one)
> >> >> 2) ListPublicIpAddresses - public ip id passed, I expect exception
> >>here
> >> >> because the id must have been removed from DB. But I get "None" as
> >> result
> >> >> here.
> >> >>
> >> >> If I get None, then can I assume that id is still present in DB but
> >>it
> >> is
> >> >> marked as obsolete?
> >> >>
> >> >> When can I expect an exception in return? And when can I expect None?
> >> >> Ideally, when we search by Id, then exception should be thrown and
> >>when
> >> we
> >> >> expect by passing account/domainid/projectid/networkid etc, then None
> >> >> should be returned. Do all List APIs follow a similar guideline?
> >> >>
> >> >> Regards,
> >> >> Gaurav
> >> >>
> >>
> >>
> >>
> >> --
> >> Daan
>
>

Reply via email to