Use what we have been using so far:

API := <lowercase action>:<CamelCaseSubjects>

lowecase action := <add| remove | list | etc....>
CamelCaseSubjects := <Users|Zones|VirtualMachines|...|*subjects*...>

So, based on such rule; the following makes sense:
- configLdap

About subjects, think what the API is trying to do. For example;

addToLoadBalancerRule does not make sense, what are we adding to
LoadBalancerRule, probably a rule right? So, in that
case addLoadBalancerRule makes sense.

Cheers.

On Tue, Apr 16, 2013 at 4:33 PM, Prasanna Santhanam <t...@apache.org> wrote:

> Oh that's more than I intend to chew :)
>
> I only want the APIs to have some defined pattern - naming and
> semantics. This if from a integration perspective than from the
> perspective of a developer of cloudstack.
>
> There is currently no documentation on what I should name my API and
> how I choose b/w overloading an API vs creating a new API:
>
> 1. ldapConfig or configLdap?
> 2. addToLoadBalancerRule/removeFromLoadBalancerRule or simply
> addLoadBalancerRule and removeLoadBalancerRule with overloaded
> arguments for specifying the rule itself.
>
> --
> Prasanna.,
>
> On Tue, Apr 16, 2013 at 10:40:44AM +0000, Nitin Mehta wrote:
> > +1 to this, but I guess this should be a subsection of a wiki called
> > "Adding a new api in Cloudstack - What all should I do ?"
> >
> > Some of the subsections in it should be like (each with an example) :-
> >
> > API naming conventions
> > Should the api be sync, async or asynccreate and what class should it
> > extend
> >
> > API annotations and what they mean. Discuss ACL and parameters. Events to
> > write.
> > What to put in the API layer, manager layer, hypervisor layer
> > API Response - should I create a view (in case its a list command)
> > Testing expectations - Adding marvin tests
> >
> > I guess this would be very useful to the devs, guys trying to understand
> > the flow. So lets create one consolidated wiki and add these subsections.
> >
> > Thanks,
> > -Nitin
> >
> > On 16/04/13 1:31 PM, "Prasanna Santhanam" <t...@apache.org> wrote:
> >
> > >Is there a formal document somewhere describing the naming conventions
> > >for our APIs? If not is it worthwhile starting one?
> > >
> > >The document should describe:
> > >1. valid action (verbs) to operate on an entity
> > >2. entity being the desired resource, physical device, cloudstack
> > >account etc.
> > >3. what semantics an update API can take and what a configure API can
> > >take etc.
> > >
> > >Thanks,
> > >
> > >--
> > >Prasanna.,
>
>

Reply via email to