Kris McQueen
2a4ddac41a
Change getResponse() to return a ResponseObject so that the caller can choose how to serialize. This in in preparation for serializing the async commands to the database with class information and deserializing them into the ResponseObject itself when queryAsyncJobResult is called. Once the ResponseObject is deserialized, the proper string can be returned to the caller.
...
The previous behavior had the JSON response from the command embedded into the queryAsyncJobResult response as a string rather than a JSON object which prevented the client from being able to read the response. With this new behavior an actual JSON object should be returned which can then be parsed on the client side.
2010-09-23 17:34:28 -07:00
Kris McQueen
ebd06ae6f3
List clusters was using the name of the command rather than the name of the cluster to search for clusters, which was resulting in no clusters returned. Fixed. CreateStoragePool was returning an array of one pool every time, simplified it to just return the pool and changed the UI to expect one pool rather than an array. Fixed the backend code for creating a storage pool to (a) generate a UUID based on host name, path, and a timestamp and (b) to list only active storage pools when checking for duplicates. This allows a storage pool to be create with the same path as a pool that had previously been deleted.
2010-09-20 19:08:52 -07:00
Kris McQueen
e2e0e76063
More work on serializing responses. Now responses have to have the name set on them, and the name will eventually be serialized to the JSON/XML response the way it used to work for commands themselves [the result of cmd.getName() was written to the response string]. For list respones, we wrap the individual objects in a ListResponse object that has the name of the response, and the individual objects have the object name so that accounts will be something like <listaccountsresponse><account><...></account><account><...></account></listaccountsresponse>.
2010-09-17 17:13:04 -07:00
Kris McQueen
a5f50d236f
Rearranging how response objects work since we need the response name when doing serialization. Now there's a base class that implements the getResponseName method, all responses extend this base class
2010-09-17 15:18:37 -07:00
Kris McQueen
4a73639d67
Fix up setting the response object correctly after dispatching the api method call. Begin working on the serialization of the responses which don't include the command name just yet, that's coming.
2010-09-17 14:56:55 -07:00
Kris McQueen
d7b6ccd056
Comment out code in executors during the transition to the new API framework. The code is being left around for reference during testing/debugging of the new framework and will be removed in the future.
2010-09-17 11:13:29 -07:00
Kris McQueen
3f6a438d92
Refactoring the AsyncJobManager to queue jobs appropriately if there is a need to synchronize execution on an object, e.g. a router. API developers can now call command.synchronizeCommand(String, Long) to force the command to be synchronized on a particular object type [the string arg] with a particular id [the long arg]. When synchronizeCommand() is invoked, an exception maybe thrown by the framework (AsyncCommandQueued exception) to force the business logic to abort. The command will then be queued and invoked at the appropriate time. The synchronizeCommand() is re-entrant and will be a no-op if the command has already been queued and is now ready for execution.
2010-09-16 19:05:06 -07:00
Kris McQueen
a53cb4aab0
Refactoring deleteDomain to new API framework. Cleaning up some compilation errors that resulted from previous refactoring, namely there was a requirement to keep the old manager method around for createDiskOffering and createZone in order for the ConfigurationServer to work.
2010-09-14 15:36:12 -07:00
Kris McQueen
de5e978b7b
Removing listSecurityGroups and listNetworkGroups from the SecurityGroupDao and NetworkGroupDao since they weren't being called by anyone.
2010-09-13 15:59:52 -07:00
Kris McQueen
dfdab6d641
moving event utils from core to server to avoid circular dependencies.
2010-09-13 15:01:43 -07:00
Kris McQueen
2741eedb26
moving console proxy alert event args to server package to avoid circular dependencies
2010-09-13 14:58:58 -07:00
Kris McQueen
bb575d9d4e
moving console proxy manager/listener to server package to avoid circular dependencies
2010-09-13 14:57:51 -07:00
Kris McQueen
449d1f3acf
working through some compilation errors that have arisen due to all the API refactoring...
2010-09-13 14:46:23 -07:00
Kris McQueen
5204349fef
Refactor listSystemVms to new API framework. Add missing licensing info to several API response files. Combine ConsoleProxy and SecondaryStorageVm interfaces into SystemVm interface to have common functions callable from one interface rather than having to cast overly much just to get the same data from the objects. This also includes a partial refactoring of ListStoragePoolsAndHosts command.
2010-09-08 18:56:27 -07:00
abhishek
d1b4034633
Mvoing console proxy manager to server
2010-08-26 10:30:52 -07:00
Kris McQueen
defae59126
Finish refactoring createTemplate to new API framework. The executor and result object from old framework still need to be deleted, but this commit moves all the business logic to the manager with validation in the createPrivateTemplateRecord and creating a snapshot if necessary in createPrivateTemplate. Additionally, added a find method on the template dao to check if the template name is in use for the account (this is part of the validation).
2010-08-25 18:26:38 -07:00
alena
e2950eb5a1
Merge branch '2.1.refactor' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 2.1.refactor
...
Conflicts:
server/src/com/cloud/api/BaseCmd.java
server/src/com/cloud/network/security/NetworkGroupManagerImpl.java
2010-08-18 11:36:05 -07:00
alena
3d85fdf687
API refactor
2010-08-18 11:24:29 -07:00
abhishek
57edd7d2f8
Refactoring the StorageManager interface into server code
2010-08-17 16:43:01 -07:00
abhishek
7e502768ed
Incremental checkin
2010-08-17 16:07:48 -07:00
alena
167433e562
Api refactor:
...
* Moved ManagementServer interface from "core" to "server" package
* Changed AddConfig, UpdateCfg, UpdateAccount commands
2010-08-12 16:32:23 -07:00
alena
a9d48a1b8a
Refactored updateDiskOffering and deleteDiskOffering commands
2010-08-12 11:27:37 -07:00
Kris McQueen
96f76062f9
Moving createDiskOffering to configurationManager, make AssignToLoadBalancer async
2010-08-11 19:32:09 -07:00
Kris McQueen
0c644a5ccb
Add EventUtils to consolidate the creation of events and make it usable from all managers (there were some private methods in ManagementServerImpl). Add some validation logic to AssignToLoadBalancer implementation in NetworkManagerImpl.
2010-08-11 16:53:03 -07:00
Kris McQueen
d2374d3178
Add EventUtils to consolidate the creation of events and make it usable from all managers (there were some private methods in ManagementServerImpl). Add some validation logic to AssignToLoadBalancer implementation in NetworkManagerImpl.
2010-08-11 16:52:15 -07:00
Manuel Amador (Rudd-O)
14ae76781e
Committing Kris' big merge
2010-08-11 16:02:57 -07:00
Manuel Amador (Rudd-O)
ac730ec496
Branch 2.1.refactor committed
2010-08-11 09:13:42 -07:00
Manuel Amador (Rudd-O)
05c020e1f6
Source code committed
2010-08-11 09:13:29 -07:00