Commit Graph

525 Commits

Author SHA1 Message Date
root bee976b5f5 bug 6779: returning the deviceId wherever possible, in the xxxVolume() calls
status 6779: resolved fixed
2010-11-01 11:12:03 -07:00
Chiradeep Vittal 1e0eb04442 Add VPN apis, some systemvm changes for vpn 2010-11-01 10:27:49 -07:00
abhishek c74fd77730 putting in final comments, so that the code to be checked in is better readable for others trying to understand it 2010-11-01 09:06:32 -07:00
abhishek 362e67d724 adding failover protection case for when the mgmt svr crashes in the middle of executing something; along with custom response for cert 2010-11-01 09:04:51 -07:00
root 3752a4eb31 making the logic more robust, testing more corner cases, improving efficiency and changing the schema 2010-11-01 09:04:51 -07:00
kishan 3a0f30a049 bug 6408: remove security groups/port forwarding service in virtual network case
status 6408: resolved fixed
2010-11-01 14:28:03 +05:30
Kris McQueen 24551eea3a Add constants for API command parameter names and for API response parameter names. Update the commands with the new constants rather than custom strings. Update several of the responses with the constants. Not all the responses have been updated, this is still work in progress... 2010-10-29 17:20:40 -07:00
Kris McQueen a9349cb815 bug 6857: if the dispatcher recieves an IllegalArgumentException, bubble that up to the response so the caller gets a useful message 2010-10-29 14:07:23 -07:00
Kris McQueen 88dac13bb0 use the API response date format when serializing response objects 2010-10-29 13:23:29 -07:00
will 9cc5aaa978 Fixed listTemplates to use the template type. 2010-10-29 13:17:32 -07:00
Kris McQueen ebac4539d0 it's possible createSnapshotDB will return null, handle that case. However, if createSnapshotDB returns null because there was no work to do (empty snapshot) we should probably throw an exception that reports that fact instead of returning null and throwing an internal error 2010-10-28 17:52:37 -07:00
Kris McQueen 642b8a56f4 If the create command returns null for whatever reason, throw an exception so it aborts scheduling the async job to act on the created object 2010-10-28 17:52:37 -07:00
Kris McQueen 2f9e91a9ae bug 6738: honor groupid when listing vms (restrict the list to just that group)
status 6738: resolved fixed
2010-10-28 16:27:07 -07:00
Kris McQueen 7531525252 Add commented code out for the old style (2.1.x) JSON async job responses. The XML responses are still a TODO. In order to get this to fully revert back to 2.1.x style responses, some commands will need to be modified to set the responseName to be something like getResultObjectName(), and there's an example of this in StopVMCmd. 2010-10-28 14:32:13 -07:00
Kris McQueen 9eb851db60 bug 6809, 6712: standardize the domain router response to use guestmacaddress instead of macaddress
status 6809, 6712: resolved fixed
2010-10-28 14:32:13 -07:00
will c5fef26f11 ListTemplates will no longer return any SystemVM templates. I am using a startsWith() string match for now since we used to make this comparision by ID with a single hypervisor. 2010-10-28 13:28:33 -07:00
will f0a4449ec3 ListTemplates now return the hypervisor type. 2010-10-27 19:50:36 -07:00
Kris McQueen 50c175d6c1 bug 6799: forgot to add the exception response in my commit for this bug... 2010-10-27 18:23:23 -07:00
Kris McQueen 9056653e17 Change the API Implementation annotation to use the manager's class rather than an enum. This allows methods for new managers to be added trivially rather than having to modify the dispatcher to load a new manager class. 2010-10-27 12:23:31 -07:00
Kris McQueen ae9b6d4fe1 bug 6776: for some reason, we checked for zoneId = -1 in registerTemplate and applied it to all zones, but this wasn't done for registerIso. Oh well, make the change for registerIso and things seem happy again
status 6776: resolved fixed
2010-10-26 17:55:00 -07:00
Kris McQueen a788d2cb2e bug 6736: rebootSystemVm should return the vm properties, not success true/false.
status 6736: resolved fixed
2010-10-26 17:19:55 -07:00
Kris McQueen 95da86ef1a bug 6733: re-throw ServerApiExceptions when dispatching API commands rather than logging them and throwing a generic INTERNAL_ERROR exception
status 6733: resolved fixed
2010-10-26 16:54:42 -07:00
abhishek c6588c0e25 adding some error return handling to api dispatcher, and cleaning up some of the code paths to return the right error messages 2010-10-26 14:27:26 -07:00
alena afd79a9b1b Code cleanup 2010-10-26 13:59:11 -07:00
Alex Huang f58063911e deploy vm completed 2010-10-26 09:35:24 -07:00
nit 497c60d63d Extending extract functionlity for volumes to allow download. The
extraction can have two modes FTP_UPLOAD and HTTP_DOWNLOAD. In the former one
the user would provide the ftp url where the entity needs to be uploaded and in
the later the user would be provided a HTTP URL where from he/she can download
the entity. This url would be exposed for a specific time limit and would not
function after the time limit
2010-10-26 18:49:43 +05:30
Kris McQueen b3c7821b44 bug 6752: fix updating resource limits for a domain by looking at the given accountName/domainId parameters rather than looking at the caller's account. If updating limits for an account, e.g. account 'foo' in domain 4, then execute updateResourceLimit&account=foo&domainid=4&..., but if updating the limit for a domain, don't specify the account parameter. When processing the command, if accountName is null, the limit for the domain will be properly updated.
status 6752: resolved fixed
2010-10-25 17:32:28 -07:00
Kris McQueen ef131bbc18 bug 6724: set useVirtualNetwork in the createServiceResponse
status 6724: resolved fixed
2010-10-25 17:08:47 -07:00
Kris McQueen f9c1f12778 bug 6725: use serviceOfferingName rather than the API command name when updating the service offering; set memory in the response for UpdateServiceOffering
status 6725: resolved fixed
2010-10-25 17:08:47 -07:00
Kris McQueen 27cafb2957 bug 6727: ostypename was being set from guest_os.name which seems to be null most of the time. Instead, use guest_os.display_name.
status 6727: resolved fixed
2010-10-25 17:08:47 -07:00
Kris McQueen fcb0ff83ac bug 6712: for router responses, change guestmacaddress -> macaddress to preserve behavior from 2.1.x and before.
status 6712: resolved fixed
2010-10-25 16:37:42 -07:00
Kris McQueen 869f3587c3 bug 6714: add displaytext to SuccessResponse so commands that return success true/false can also return a brief description of what took place.
status 6714: resolved fixed
2010-10-25 16:37:42 -07:00
Kris McQueen 3660d6a3d1 bug 6717: updateDiskOffering is supposed to return success true/false rather than the updated disk offering
status 6717: resolved fixed
2010-10-25 16:37:42 -07:00
Kris McQueen c8e9531842 bug 6720: add 'created' to the ListHosts response
status 6720: resolved fixed
2010-10-25 16:37:42 -07:00
Kris McQueen 83e4922b94 bug 6703, 6704: use the correct method signatures for invoking updateTemplate/updateIso and updateTemplatePermissions/updateIsoPermissions APIs. It's possible that the reflection should just use 'isAssignableFrom' when getting methods since the manager methods were using a base class as the parameter rather than UpdateTemplateCmd/UpdateIsoCmd and UpdateTemplatePermissions/UpdateIsoPermissions, but for now the explicit methods are added for simplicity.
status 6703, 6704: resolved fixed
2010-10-25 15:01:50 -07:00
Kris McQueen d229877cd8 bug 6710: rebootRouter was supposed to return the rebooted router, not success/failure
status 6710: resolved fixed
2010-10-25 15:01:50 -07:00
Kris McQueen 18f6d67121 bug 6705, 6708: use the UserVmResponse for changeServiceForVirtualMachine API (UpgradeVMCmd) since the response is a vm. There was no need for a specific UpgradeVmResponse which had scalars instead of objects and the serializer skips null, but will serialize scalars with their default values, in this case 0 for id and host id.
status 6750, 6708: resolved fixed
2010-10-25 15:01:49 -07:00
nit 511a095c26 bug 6487: AttachISO API would return an embedded object on success.
status 6487: resolved fixed
2010-10-25 18:26:39 +05:30
nit 5774fd163d bug 6480: detachVolume API would start returning an embedded object, like attachVolume API does.
status 6480: resolved fixed
2010-10-25 17:19:22 +05:30
nit 554e360d21 Fixing a typo in the HostResponse of the word custer.
Fixing the names of the ISO and templates.
2010-10-25 14:54:49 +05:30
nit 035810d60a bug 6481: embedded object returned by attachVolume API would have the "type" property indicating the volume type of the disk volume (ROOT or DATADISK)
status 6481: resolved fixed
2010-10-25 14:14:40 +05:30
kishan 3530daf3ff bug 6697: make resourcetype optional
status 6697: resolved fixed
2010-10-25 12:22:06 +05:30
Jessica Wang 958aaaaf87 new UI - instance page - refactor submenu. 2010-10-22 20:23:05 -07:00
Kris McQueen e6f7a480ae bug 6674: Fix VM responses
- ostypeid -> guestosid
 - findRootVolume is now in ApiDBUtils (from mgmt server) since it's for API responses only
 - add rootdeviceid and rootdevicetype to various VM respones (listVirtualMachines, deployVirtualMachine, start/stopVirtualMachine)

status 6674: resolved fixed
2010-10-22 13:57:03 -07:00
Kris McQueen 4a96e1f633 bug 6662: handle a null ip forwarding rule in the API response as 'the rule already exists' since other errors will result in thrown exceptions. Also, fix up detection of network conflicts and duplicate rules by adding a list of used protocols to the port mappings
status 6662: resolved fixed
2010-10-22 11:47:52 -07:00
Alex Huang f1a431714c checkin to fix windows 2010-10-22 09:19:53 -07:00
anthony 18ffd7e7a8 fixed build 2010-10-21 19:25:52 -07:00
NIKITA 2f70032972 conflict 2010-10-21 17:57:56 -07:00
Alex Huang 25e4ed6997 more changes in the api 2010-10-21 16:53:42 -07:00
abhishek a957a679ed bug 5190: modifying a few minor details in the upload cert part, to conform with the new api refactor design 2010-10-21 15:51:46 -07:00
Kris McQueen 365ac7501f bug 6672: Fix up volume commands. For createVolume, the command is supposed to create a database object, but not assign it to a storage pool until the user first attaches it to a vm instance. That allows the volume to start off hypervisor agnostic. For attachVolume, detachVolume, and listVolumes, the responses had minor issues (sourceType could be null, for example) in either the response generation, or the response handling by the UI.
status 6672: resolved fixed
2010-10-21 15:15:01 -07:00
Alex Huang d5d8f27cad Added more changes to the api 2010-10-21 15:11:49 -07:00
abhishek 9a9146c07b whilst testing my enh, found that this call was using the wrong method name. Checking in the fix for the same. 2010-10-21 11:43:06 -07:00
abhishek 2b9ab00cc2 bug 3386: first part of the checkin, wherein we have an optional param domainId for create and modify zones. If this domain exists in the system, then the zone is tagged with this domain id, so that subsequent calls are checked for sanity against this domain. 2010-10-21 11:43:06 -07:00
kishan bec09a4323 bug 6486: added VirtualMachine to stopVm response
status 6486: resolved fixed
2010-10-21 14:52:27 +05:30
nit b7d430cf86 bug 6399: deployVirtualMachine API should return an embedded object (named "virtualmachine").
status 6399: resolved fixed
2010-10-21 13:48:29 +05:30
kishan fa4a16cb68 bug 5592: Added configurable domain for hosts.
status 5592: resolved fixed
2010-10-21 11:51:09 +05:30
nit 6723549fc7 bug 6399: extending extract functionlity for templates and ISO's to allow download. The extraction can have two modes FTP_UPLOAD and HTTP_DOWNLOAD. In the former one the user would provide the ftp url where the entity needs to be uploaded and in the later the user would be provided a HTTP URL where from he/she can download the entity. This url would be exposed for a specific time limit and would not function after the time limit. 2010-10-20 11:40:03 +05:30
Kris McQueen 2bd5b6a29e bug 6654: virtualmachinename should be serialized as vmname, fix handling of the createPortForwardingRule response
status 6654: resolved fixed
2010-10-19 15:59:37 -07:00
abhishek 7c11c04427 reverting the change for bug 6361; this was an accidental push instead of commit 2010-10-19 15:21:01 -07:00
abhishek 7cc8087fa6 bug 6361: more name changes from network group to security group 2010-10-19 15:21:01 -07:00
abhishek 523862f571 bug 6361: further name changes from network to security group 2010-10-19 14:35:17 -07:00
abhishek 6bd7caa9c2 bug 6361: first part of incremental checkin to rename network group to security grou[ 2010-10-19 14:35:17 -07:00
Kris McQueen 0267a306c8 bug 6649: when listing domains, accept -1 as 'list all.' Fix listDomainChildren response to return haschild, handle haschild as a boolean rather than a string.
status 6649: resolved fixed
2010-10-19 13:49:00 -07:00
abhishek 04c8c0f91c bug 6041: returning the complete embedded reponse for a destroyvm async call
status 6041: resolved fixed
2010-10-19 11:46:42 -07:00
Kris McQueen f4f00cbe2d bug 6655: when verifying request signature for API requests that use keys, pass the userId of the requester as a Long to avoid NPEs when converting it to a string. Also set up the UserContext for both normal users and admins.
status 6655: resolved fixed
2010-10-19 11:41:09 -07:00
abhishek 408822e358 bug 6037: last part of the checkin for this bug
status 6037: resolved fixed
2010-10-19 11:36:54 -07:00
abhishek 89e9a85902 bug 6037: adding response obj of type uservmmanager to recovervm response 2010-10-19 11:00:23 -07:00
Chiradeep Vittal 947c2ca16d fix problems in api post-refactor 2010-10-19 09:53:51 -07:00
alena bb5399c2bc Fixed PodResponse: endip is all lowercase now. 2010-10-18 14:11:21 -07:00
Kris McQueen 603874605d The serialized names for the old VIRTUAL_MACHINE_* constants weren't quite right. Fix these up. This is a good example for why there needs to be a pass through the API commands and responses and constants should be used in the annotations rather than the current strings that are in place. 2010-10-18 14:10:07 -07:00
Kris McQueen 3be625ca6e The stopVirtualMachine API should return the vm instance rather than a boolean indicating success. The response for async jobs is now under the jobresult property of the JSON response, handle the start/stop virtual machine responses using data from the jobresult rather than expecting some embedded object. 2010-10-18 11:15:07 -07:00
edison e41729cc43 fix rpm build 2010-10-16 01:03:31 -07:00
Kris McQueen 88814d95f0 A zoneId of -1 means all zones, so if zoneId is passed in as -1 just list all zones for registering the template 2010-10-14 19:11:21 -07:00
Kris McQueen d928a6f3d9 If storage pool is null after adding a pool, throw an exception so the user sees a problem adding the pool. This is better than the NPE that was happening... 2010-10-13 16:08:49 -07:00
Kris McQueen 5960911511 Fix processing of session parameters in logout case 2010-10-12 19:42:53 -07:00
Kris McQueen 8e086d7a21 resolving merge conflicts between 2.1.refactor and master 2010-10-12 16:28:16 -07:00
Kris McQueen 0f4a245f0a resolving merge conflicts before pushing to the remote repository 2010-10-12 15:37:50 -07:00
Kris McQueen 2740ba6c40 final merge of master->2.1.refactor preparing for merge back into master 2010-10-12 14:46:24 -07:00
alena fb50fe624c * Added descriptions for Api command's request and response parameters.
* Changed response type for DeleteDomain and DeletePreallocatedLun commands to SuccessResponse
* Implemented small tool (ApiXmlDocReader) for comparing api commands of different product versions.
2010-10-11 09:21:42 -07:00
anthony 2861895a84 bug 6450: list all snapshot for admin
status 6450: resolved fixed
2010-10-07 15:35:58 -07:00
Kris McQueen 7c4a06a764 fix the method name for listIsos command 2010-10-07 15:10:02 -07:00
Kris McQueen e18895f15b account and domainid are required parameters when disabling an account 2010-10-07 15:09:28 -07:00
Kris McQueen bef7998bbf resolving merge conflicts between the documentation changes and other API refactoring work 2010-10-07 15:07:49 -07:00
Kris McQueen 335613a8a9 Add the mirrored property to the disk offering response 2010-10-07 15:03:47 -07:00
alena e7b478f43d Added descriptions for Api commands and corresponding requrest parameters 2010-10-07 14:46:29 -07:00
Kris McQueen fbb5a109cc Fix return types for resetVmPassword and upgradeVirtualMachine commands. Fix response for resetVmPassword to be a vm rather than success/failure. Make sure the password is a transient variable for the resetVmPassword command so that the new password is returned to the user. 2010-10-06 18:29:27 -07:00
Kris McQueen 9c593352d0 Fixing events for async jobs so that there's a scheduled event recorded with appropriate type/description whenever the API framework schedules the async command to run. A few miscellaneous fixes as well uncovered during regression testing (router response was not parsed correctly by UI, etc.) 2010-10-05 20:26:18 -07:00
edison 1cd370fc36 hypervisor type for deployvmCmd is optional, only deploying blankvm
needs it.
2010-10-05 09:52:06 -07:00
nit f7f2b5666a bug 5871: removing the NDC since there is no nested context involved in the audit trail and since its leaking into the management server logs. 2010-10-05 19:51:12 +05:30
edison 8db5a1a1e2 add Copyright for new file 2010-10-04 17:05:41 -07:00
edison aaaa5dc3ad bug 6379: add ListHypervisors cmd to list all the supported hypervisors.
status 6379: resolved fixed

The supported hypervisors are controlled by hypervisor.list in configuration table
2010-10-04 16:55:25 -07:00
edison 1877200575 missing to add the new file 2010-10-04 14:57:14 -07:00
Kris McQueen 24bd6a39e6 Fix the type of the id attribute in BaseAsyncCmd (it should be Long), deleteNetworkRuleConfig is async command again (this was a regression), misc event and account verification fixes 2010-10-04 10:36:44 -07:00
alena 136060e5cf 1) Finished XmlApiDoc writer. The program gets api classes from commands.properties.in file, and build Command objects with "name"/"description"/"request"/"response" fields. Request and response are represented by the list of arguments, each argument contains "name"/"description"/"isrequired" fields. The commands are being serialized to commands.xml using imported xstream library, and can be desiarialized later - it will help to compare commands from differemt product versions.
2) Added description() methods to Implementation and Param annotations.
2010-10-04 09:50:14 -07:00
alena 46a433d750 Incremental checkin for ApiXmlDocBuilder 2010-10-04 09:50:14 -07:00
nit 38fd80e522 bug 5871: Introducing audit trail for all the interactions with the cloud stack - User 'X' initiated an action 'Y' on resource 'Z'. The audit will contain http api request along with the contextual parameters (userId, accountId, sessionId). For the response part only log success/failure for all sync api's with the exception of queryAsyncJob where reason code and reason will also be logged. For async api's I will also log the async job id. 2010-10-04 14:27:40 +05:30
edison 3aa34687f5 set hypervisor type to be manadatory for deployvm and registertmplt API 2010-10-01 15:15:01 -07:00
Kris McQueen 41a16a478a Fixes required for regressions found running automated tests. (1) method signatures that weren't properly refactored to new API framework (2) API request parameter types should always be specified lest they default to String which may or may not be desired (3) better exception handling with regard to Queued commands and generic exceptions (4) fix eventing to pass the proper accountId where neccessary 2010-10-01 14:11:18 -07:00
Kris McQueen 5f2acc8cdd Fixing API responses for user VMs (we need to return ipaddress rather than privateip) and domain routers (guestMacAddress != guestmacaddress for case sensitive string comparison) 2010-09-30 14:22:10 -07:00
edison 26807bc701 bug 6362: Need to call guestos.getDisplayName to the guest os name now.
status 6362: resolved fixed
2010-09-30 12:26:37 -07:00
Kris McQueen bc2449a69a If the session in invalidated due to a bad session key, just return to avoid the situation where the session is invalidated twice (which causes IllegalStateException) 2010-09-30 11:39:36 -07:00
edison 58c430f7d7 add xenserver specific configruation back 2010-09-29 18:48:26 -07:00
edison ad1ef80459 Now we have multiple routing template and buitin templates now, refactor template download code, that can handle it.
Basically, change the meaning of type field in template table: SYSTEM means sytem vm template, BUILIIN means buildin templates.
2010-09-29 18:41:55 -07:00
edison 6fc7528809 create data volume is splitted into two stage:
1. create a volume entry in the database,
2. when user attaching the volume to a VM, then actually create the volume on storage pool.
2010-09-29 18:41:54 -07:00
edison 964f8f1fe3 fix boot from iso 2010-09-29 18:41:54 -07:00
edison d98d6cbb9f fix template download, listguestos type 2010-09-29 18:41:53 -07:00
edison baeb1af265 fix register template hypervisor type 2010-09-29 18:41:53 -07:00
edison b8c1d2ea17 set external ipallocator as true by default 2010-09-29 18:40:52 -07:00
edison 9e0f57bc0e change code for new UI 2010-09-29 18:40:52 -07:00
edison 8943cc6745 create volume
Conflicts:

	api/src/com/cloud/vm/VmCharacteristics.java
	core/src/com/cloud/dc/ClusterVO.java
	core/src/com/cloud/server/ManagementServer.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/storage/allocator/AbstractStoragePoolAllocator.java
2010-09-29 18:40:51 -07:00
Kris McQueen 0105aec338 Always set the response type on the command object so that the correct output is generated. Add both Strings and Longs to the login response (domainId and userId will be the Longs). Use the correct method name for ListSystemVMsCmd. 2010-09-29 17:32:19 -07:00
anthony be5fa82229 remove snapshotpolicyRef 2010-09-29 16:24:57 -07:00
Kris McQueen da660f2575 Change session parameters to be their actual type (domainId and userId are saved to the session as Longs and not Strings) 2010-09-29 15:18:43 -07:00
Kris McQueen 9e2d1f5e70 Refactoring disableUser and disableAccount to new API framework (they are both async commands). 2010-09-29 13:57:26 -07:00
abhishek cd42fcc1bf some code refactoring 2010-09-29 11:17:42 -07:00
kishan 9e87534e42 bug 6216: Added Id to listAlerts response 2010-09-29 15:52:13 +05:30
Kris McQueen 95a7f20a0a Adding in XML response serializing. Now the new API framework supports both XML and JSON responses the way the old framework did. 2010-09-28 17:36:27 -07:00
Kris McQueen 848ce60097 Merging master into 2.1.refactor, resolve the merge conflicts as best I can. New commands related to extracting template/iso/volume and related to instance groups were refactored to the new API framework. 2010-09-28 15:47:14 -07:00
nit 122b15071d bug 6334: Correcting the syntax of json data when the response is empty.
status 6334: resolved fixed
2010-09-28 14:46:44 +05:30
alena 9b10074c2a Added missing license info to the bunch of files 2010-09-27 19:08:03 -07:00
abhishek ad4ea90207 bug 5190: enhancing some of the error messages returned to be more intuitive 2010-09-27 17:01:01 -07:00
abhishek 677d8894ea bug 5190: modifying the api calls 2010-09-27 16:49:34 -07:00
abhishek 1356f5f33a bug 5190: incremental checkin, code cleanup 2010-09-27 16:46:14 -07:00
abhishek 060dfc2cf9 bug 5190: incremental checkin 2010-09-27 16:39:32 -07:00
alena 49143dbe4a Remove user vm from instance_group when empty string is passed as value for "group" parameter in updateVirtualMachine API. 2010-09-27 14:24:08 -07:00
nit b857a9b4c8 bug 4177: registerTemplate/registerIso commands would start accepting account/domainId params.
status 4177: resolved fixed
2010-09-27 17:24:23 +05:30
nit 26fc22160c bug 5871: Correcting the ostypeid and ostypename returned by the listIsos 2010-09-27 12:10:49 +05:30
Kris McQueen 62257d4021 Fix serializing async job responses by writing a custom adapter for ResponseObjects. Improve exception handling when calling async commands (the job still needs to complete, but with FAILED status). 2010-09-24 13:52:35 -07:00
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
abhishek 320df380c9 bug 6217: incremental fix for the vm api
bug 6217: resolved fixed
2010-09-23 14:56:25 -07:00
abhishek e0dcb95511 bug 6217: incremental checkin 2010-09-23 14:55:13 -07:00
abhishek 703c182f8f bug 6222: removing non needed attribs
status 6222: resolved fixed
2010-09-23 10:32:42 -07:00
abhishek 32884572b9 bug 6241: incremental checkin 2010-09-22 15:32:42 -07:00
nit fd86e976b6 bug 6249, 6250: listDiskOfferings API - adding createed date tag and removing ismirrored tag.
status 6249, 6250: resolved fixed
2010-09-22 15:08:14 +05:30
Kris McQueen c26426c7c7 Throw an exception when the dispatcher can't find the implementation for an API command. 2010-09-21 18:26:57 -07:00
Kris McQueen e31f89e6a9 Set up accountId in the AsyncJob since it's needed for proper validation when querying the job status. 2010-09-21 18:26:34 -07:00
Kris McQueen 8161078803 QueryAsyncJobResult was missing an implementation and had 'id' as the parameter when it should have been 'jobid'. 2010-09-21 18:25:35 -07:00
Kris McQueen c32d6e7524 Template id is not a required parameter when listing templates. The proper serialized name for the async job id is jobid, not id. Sadly, ctxAccoutId != ctxAccountId, ugh, no wonder the UserContext wasn't getting set up correctly. Clean up some miscellaneous unnecessary casts. 2010-09-21 17:00:50 -07:00
Kris McQueen 5a3f4af638 AddHost and AddSecondaryStorage have different required parameters, so avoid subclassing these commands and just call a common method in the agent manager. Fix the response name for listAccounts. CreateUser returns one user, so don't always get response.user[0] since that's pointless. A secondary storage host does not have a pod id (NfsSecondaryStorageResource) so make sure not to dereference variables that will be null. 2010-09-21 16:28:31 -07:00
abhishek 122b0d1aeb bug 6243: adding a check to return an error in case we have a null domain id for a non null account
status 6243: resolved fixed
2010-09-21 15:50:49 -07:00
abhishek d07cac932a bug 6165: there is a possiblility of the root volume being null when we search for it, which may be causing a npe in this bug. enhancing the logic around this
status 6165: resolved fixed
2010-09-21 15:17:21 -07:00
abhishek 37870da95f bug 3120: incremental fix 2010-09-21 14:47:51 -07:00
nit 87f1a96c29 bug 6214: UpdateIso API - Adding account and domain tags. 2010-09-21 16:17:48 +05:30
nit 0669c2c1d4 Merge branch 'master' of ssh://git.cloud.com/var/lib/git/cloudstack-oss 2010-09-21 13:37:47 +05:30
nit 7ff551bd5c bug 4286: Extract functionality - code cleanup 2010-09-21 13:36:57 +05:30
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 1a54c52d5e Change the annontations for response objects to use the GSON annotations for the property name written to the response 2010-09-20 17:47:56 -07:00
Kris McQueen 12ef5106b6 Fixing serialization of JSON responses to handle both regular objects and list-style responses. Add missing managers to API dispatcher. Fix a typo in listAlerts command implementation method. Add signatures for various add host/storage APIs. 2010-09-20 15:20:32 -07:00
abhishek a9c96b4da0 bug 3120: incremental checkin 2010-09-20 14:54:06 -07:00
abhishek 437f717633 bug 3120: incremental checkin 2010-09-20 14:54:06 -07:00
kishan 9393ad410e Merge branch 'master' of ssh://kishan@git.cloud.com/var/lib/git/cloudstack-oss 2010-09-20 15:12:55 +05:30
kishan b606d14396 Bug 5904: Included version in API header 2010-09-20 15:00:57 +05:30
nit a39fad5da4 bug 3384: listVolumes: allowing regular user to make a search by "type".
status 3384: resolved fixed
2010-09-20 13:09:33 +05:30
nit 33e683e2c7 bug 4286: Making ExtractVolumeCommand async and some code cleanup 2010-09-19 18:34:12 +05:30
nit 1a30ffbdc0 bug 6055: createDiskOffering API - removed isMirrored and domainId parameters.
status 6055: resolved fixed
2010-09-19 16:13:13 +05:30
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
abhishek 1a37b661c7 code cleanup 2010-09-17 17:06:19 -07:00
abhishek 573885c615 bug 6203: changed the functionality for custom volume and disk offering creation
status 6203: resolved fixed
2010-09-17 16:59:40 -07:00
abhishek a016aa27cd bug 6203: incremental fix 2010-09-17 16:59:40 -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 1f4b2cfb06 Async commands need to have a start event id for event tracking. 2010-09-17 12:07:16 -07:00
nit 48cd102ab9 Merge branch 'master' of ssh://git.cloud.com/var/lib/git/cloudstack-oss 2010-09-17 17:04:35 +05:30
nit 636dc041c7 bug 4286: Making extractIsoCmd and extractTemplateCmd async 2010-09-17 17:04:07 +05:30
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
alena 091b28a6b3 Modified addSecondaryStorage/addHost/updateHost/associateIpAddress/attachIso/copyIso/copyTemplate/deletePortForwardingService/startRouter/stopRouter/rebootRouter commands to new API framework. 2010-09-16 18:54:15 -07:00
abhishek f1cab0525c bug 6021: blocking the deletion of private disk offering from the back end api 2010-09-16 16:47:35 -07:00
abhishek 3abe056736 bug 6141: fixed the error of not providing the right error for an incorrect diskoffering
status 6141: resolved fixed
2010-09-16 15:01:13 -07:00
abhishek 6731dc66f1 bug 3120: incremental checkin 2010-09-16 12:02:54 -07:00
alena 6fef440732 Updated DeleteHost/DeleteIso/deletePool/UpdateDiskOffering/updateIso/updateTemplate/updateDomain to new api framework 2010-09-15 20:07:01 -07:00
alena ec47f83a4a Merge branch '2.1.refactor' of ssh://git.cloud.com/var/lib/git/cloudstack-oss into 2.1.refactor 2010-09-15 16:45:59 -07:00
alena b49f63c28e Refactoring addConfig/deleteDiskOffering/deletePod/getCloudIdentifier/enableAccount/enableUser/enableAccount/updateUser/updateDiskOffering/updateConfig commands to new API framework 2010-09-15 16:41:38 -07:00
Kris McQueen e18898ae4d Cleaning up some TODOs related to generating API command responses. Now that the ApiDBUtils class is available, setting things like domainNames is possible, so make use of that. 2010-09-15 16:22:55 -07:00
Kris McQueen be6a4612a4 Cleaning up some TODOs related to generating API command responses. Now that the ApiDBUtils class is available, setting things like domainNames is possible, so make use of that. 2010-09-15 15:48:52 -07:00
abhishek b2efa6872b a few more code cleanup tasks 2010-09-15 15:38:24 -07:00
Kris McQueen 8607fbe923 Cleaning up some TODOs related to generating API command responses. Now that the ApiDBUtils class is available, setting things like domainNames is possible, so make use of that. 2010-09-15 14:56:20 -07:00
Kris McQueen 496bcb9e85 Adding more db operations to the API utils class and removing them from ManagementServer. These methods delegate directly to the DAO and are cluttering ManagementServer with cover methods specifically for the API. Now that these methods are being moved to the API Utils class, ManagementServer has a smaller, cleaner API than before. 2010-09-15 14:25:21 -07:00
Kris McQueen 8bdb8f3581 Adding more db operations to the API utils class and removing them from ManagementServer. These methods delegate directly to the DAO and are cluttering ManagementServer with cover methods specifically for the API. Now that these methods are being moved to the API Utils class, ManagementServer has a smaller, cleaner API than before. 2010-09-15 12:16:00 -07:00
abhishek 652620363d bug 3120: reverting changes as still soliciting feedback on design 2010-09-15 11:52:31 -07:00
abhishek a05dc480a7 bug 3120: incremental checkin 2010-09-15 11:18:04 -07:00
abhishek ef8781b7b5 bug 3120: introducing this optional parameter in the command 2010-09-15 10:28:41 -07:00
abhishek cacb4dba1d bug 3120: incremental checkin for this bug, with the introduction of an optional ONE_TO_ONE_NAT parameter 2010-09-15 10:28:41 -07:00
nit f5ac46255c bug 4286: Schema changes to include the upload table, Introducing extractIso command and extractVolume command 2010-09-15 17:51:42 +05:30
alena b26ac321de bug 6177: Make VM group a first class object
1) Added new apis: createInstanceGroup, updateInstanceGroup, deleteInstanceGroup, listInstanceGroups
2) Group can be created using:
* createInsanceGroup api
* deployVirtualMachine/updateVirtualMachine commands (we create a group with name equal to "group" parameter value if the group doesn't exist already)
3) Group can be removed by:
* deleteInstanceGroup api
* when corresponding account is removed
4) Vm can be assigned to one group only. To move vm from one group to another, use updateVirtualMachine command with "group" parameter
5) Changed listVirtualMachines command to use "groupId" parameter instead of "group".

status 6177: resolved fixed
2010-09-14 19:08:01 -07:00
Kris McQueen dc6e07ad75 Refactoring deletePreallocatedLun and registerPreallocatedLun to new API framework. 2010-09-14 17:53:12 -07:00
Kris McQueen 1b8965c202 fixing package name for pre-allocated lun api commands 2010-09-14 17:04:35 -07:00
Kris McQueen cf6829a038 Moving pre-allocated lun API commands to OSS since it's not a premium feature 2010-09-14 17:02:16 -07:00
Kris McQueen 1d912fb608 adding licensing info 2010-09-14 16:09:05 -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 dbb2897626 Unexposed parameters can now be assigned to commands. This are for internal use of the command, and will be serialized/deserialized during execution/response phases, but will not be accepted as part of the API request. Also create a DB utility file for the API to use which delegates requests to the DAOs. Mostly this utility class will look up objects by ID, and it allows the removal of similar methods from ManagementServer, thereby reducing some of the clutter in ManagementServer. 2010-09-14 14:54:04 -07:00
Kris McQueen f4caf145c3 Refactoring dispatching API commands from the scheduled async job. Instead of calling an executor, the dispatcher invokes the method on the manager directly. After the command is executed the response is serialized to the async job table so it can be queried later. Also serialize a response for async create commands that includes the id of the object being created. 2010-09-13 18:28:19 -07:00
Kris McQueen a8112f65de When using session based authentication, we now store the parameters in the session as part of the login processing, instead of returning those parameters so that the caller has to update the session. Authentication now throws an exception on failure and the caught exception is where the session is invalidated. 2010-09-13 17:04:11 -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 df10af0688 cleaning up imports, fixing up some compilation problems related to API refactoring 2010-09-13 15:25:46 -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 460ef94299 Refactoring listStoragePoolsAndHosts command to new API framework. 2010-09-13 14:03:07 -07:00
Kris McQueen 1e46e2e588 refactoring createVolume to new API framework 2010-09-10 23:25:22 -07:00
abhishek ec01e0b423 bug 5147: this checkin ensures that we cover some more corner cases, in particular, to not allow an execution when we have pools in inconsistent states (maintenance, prepareformaintenance or errorinmaintenance) 2010-09-10 14:52:05 -07:00
abhishek 4682b25cb5 bug 5147: implemented the logic to ensure that the volume creation is blocked when all sp's are in maintenance (or any of the status != UP) 2010-09-10 14:41:04 -07:00