It looks like the service interfaces all expect to be invoked directly from an 
API handler (they only have Cmds for parameters). For example, 
QueryService/QueryManagerImpl.searchForServers() takes a ListHostsCmd. This 
ListsHostsCmd can only be created by invoking the listHosts API. If it had 
public setters, then the command could be instantiated and execute() could be 
called directly, but that wouldn't be working at the service interface level.

Am I missing something here or is this not the service interface you meant?

-Chris

On Jul 15, 2013, at 12:29 AM, Chiradeep Vittal <chiradeep.vit...@citrix.com> 
wrote:

> APIs should call the service interface directly and not call other APIs.
> 
> On 7/12/13 1:40 AM, "SuichII, Christopher" <chris.su...@netapp.com> wrote:
> 
>> Er, I should have mentioned that it is not as easy as simply invoking one
>> API command from another since all the CS API commands have private
>> @paramenter members. Because of this, I cannot simply instantiate a
>> command, populate it with the parameters and call execute() on it.
>> 
>> -Chris
>> 
>> On Jul 11, 2013, at 4:09 PM, Chris Suich <chris.su...@netapp.com>
>> wrote:
>> 
>>> I'm writing an API plugin that needs to consume an API that already
>>> exists in CS. The only way I can find to do this would be to send the
>>> REST/HTTP request from my plugin, but I'm hoping there is an easier way.
>>> Since both plugins are on the same Java classpath they have the ability
>>> to invoke each other.
>>> 
>>> Is there a simple way to do this that I'm missing?
>>> 
>>> -Chris
>> 
> 

Reply via email to