Kishan,

Annotations support the specification of arrays as annotation values which 
allows the compiler to verify the form of the value (avoiding a potential 
runtime exception due to a typo) and a more expressive value.  Annotation array 
values are treated as a varargs -- therefore, single names do not require 
brackets.  For these reasons, I recommend using a array value for the 
annotation rather than a comma-separated string.

Thanks,
-John


On Apr 8, 2013, at 9:03 AM, Kishan Kavala <kishan.kav...@citrix.com> wrote:

> APICommand annotation in API Cmd object has a name parameter. Currently name 
> parameter takes only one value. I plan to enhance this to support comma 
> separated values. This will allow multiple API names for the same API Cmd 
> object.
> 
> Current:
> @APICommand(name = "apiName1", ..
> 
> Proposed:
> @APICommand(name = "apiName1, apiAlias2, apiAlias3", ..
> 
> Requirement:
> As part of CLOUDSTACK-763, I'll be introducing NetworkACLList (grouping of 
> NetworkACLItems).  Current APIs use *NetworkACL (create 
> NetworkACL/deleteNetworkACL etc..) for NetworkACLItem related APIs. These 
> APIs have to be changed to *NetworkACL Item(create 
> NetworkACLItem/deleteNetworkACLItem etc..) to get the terminology right. We 
> also need to support old API names for backward compatibility. Hence the need 
> for API name alias.
> 
> Terminology:
> NetworkACLItem - Individual ACL Entry (was NetworlACL earlier). 
> NetworkACL - Group of Network ACL Items. API will use the term NetworkACLList 
> to differentiate from the existing NetworkACL APIs.
> 
> 

Reply via email to