Commit Graph

154 Commits

Author SHA1 Message Date
Chiradeep Vittal e216686029 Revert "bug 10617: Intermediate checking"
revert pending review

This reverts commit 561b27565512d438db3d8896df6f97b644b0b498.
2011-09-12 14:45:58 -07:00
Naredula Janardhana Reddy f9b0962ad9 bug 10617: Intermediate checking
Changes :
         - Fixing API doc +response name + errorMessage
         - Adding seperate events to Egress rules
         - Egress rules Using the same database table as that of ingress with new column type.

   Pending Tasks:
         - db upgrade
         - database table rename from security_ingress_rule to generic name, renaming some of the jave class from ingress to generic name.
         - Retesting on kvm
2011-09-09 18:14:19 +05:30
alena 47d9cbd2ee bug 11331: allow extending vnet range as a part of updateZone call
status 11331: resolved fixed
2011-09-06 17:40:28 -07:00
Naredula Janardhana Reddy 854f81962f bug 10617: Added Egress rules to Security groups.
Description :
   API's:
     -  Two new api's authorizeSecurityGroupEgress,revokeSecurityGroupEgressCmd are added. These two API's are similer to ingress rule API's.
           - authorizeSecurityGroupEgress :Authorizes a particular egress rule for this security group . Usageof API is very similer to that of authorizeSecurityGroupIngress except that instead of source cidr  there will be destination cidr. By default like ingress, all the outgoing flows are blocked.
           - revokeSecurityGroupEgress : It is similer to revokeSecurityGroupIngress api, It removes the egress rule.
     -  listSecurityGroup API's response changed. It include's egress list apart from the existing ingress rules in the output of the API.

   Hypervisors :
      - It is implemented in Xen and KVM.

   Pending Tasks :  Blocking using destination security groups.

   Previous commits: c9fda641673df7701f44963ef27e1d488f121219 , 24e4e44b8f0712a37147a3777833de3f9e24829e
2011-08-30 16:28:35 +05:30
Naredula Janardhana Reddy 9feb05ac13 bug 10617: This is Intermediate commit for Egress rules implementation in security groups.
previous commit: c9fda641673df7701f44963ef27e1d488f121219 ( this under bug 1067, typing error)
        changes: 1) partially implemented  listing of egress rules along with ingress rules.
                 2) partially implemneted egress rules for KVM
2011-08-25 12:18:33 +05:30
alena ee9fbf10b6 Method signature change 2011-08-24 14:56:37 -07:00
alena e3f179844e bug 11236: domainAdmin/regularUser can edit/delete/copy/extract Public template/iso only if it was created by them. They still can use/see public template/iso when execute list/deploy/attachIso commands. Root admin can operate with other people templates w/o any restrictions.
status 11236: resolved fixed
2011-08-24 14:48:35 -07:00
alena 8a7feb8ec1 Merge branch '2.2.y'
Conflicts:
	agent/src/com/cloud/agent/resource/computing/LibvirtComputingResource.java
	api/src/com/cloud/agent/api/routing/LoadBalancerConfigCommand.java
	api/src/com/cloud/agent/api/to/FirewallRuleTO.java
	api/src/com/cloud/agent/api/to/IpAddressTO.java
	api/src/com/cloud/agent/api/to/PortForwardingRuleTO.java
	api/src/com/cloud/api/ApiConstants.java
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/api/ResponseGenerator.java
	api/src/com/cloud/api/commands/CreateFirewallRuleCmd.java
	api/src/com/cloud/api/commands/CreateIpForwardingRuleCmd.java
	api/src/com/cloud/api/commands/CreateLoadBalancerRuleCmd.java
	api/src/com/cloud/api/commands/CreatePortForwardingRuleCmd.java
	api/src/com/cloud/api/commands/DeleteLoadBalancerRuleCmd.java
	api/src/com/cloud/api/commands/ListCapabilitiesCmd.java
	api/src/com/cloud/api/commands/UpdateNetworkCmd.java
	api/src/com/cloud/api/response/CapabilitiesResponse.java
	api/src/com/cloud/network/Network.java
	api/src/com/cloud/network/NetworkService.java
	api/src/com/cloud/network/firewall/FirewallService.java
	api/src/com/cloud/network/lb/LoadBalancingRule.java
	api/src/com/cloud/network/lb/LoadBalancingRulesService.java
	api/src/com/cloud/network/rules/FirewallRule.java
	api/src/com/cloud/network/rules/RulesService.java
	api/src/com/cloud/offering/NetworkOffering.java
	client/tomcatconf/commands.properties.in
	cloud.spec
	core/src/com/cloud/agent/resource/virtualnetwork/VirtualRoutingResource.java
	core/src/com/cloud/hypervisor/xen/resource/CitrixHelper.java
	core/src/com/cloud/hypervisor/xen/resource/CitrixResourceBase.java
	core/src/com/cloud/storage/template/DownloadManagerImpl.java
	core/src/com/cloud/vm/DomainRouterVO.java
	debian/cloud-deps.install
	patches/systemvm/debian/config/etc/init.d/cloud-early-config
	patches/systemvm/debian/config/root/ipassoc.sh
	patches/systemvm/debian/config/root/loadbalancer.sh
	scripts/vm/hypervisor/kvm/rundomrpre.sh
	scripts/vm/hypervisor/xenserver/vmops
	server/src/com/cloud/agent/manager/AgentAttache.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/agent/manager/AgentMonitor.java
	server/src/com/cloud/agent/manager/ClusteredAgentManagerImpl.java
	server/src/com/cloud/alert/ClusterAlertAdapter.java
	server/src/com/cloud/api/ApiResponseHelper.java
	server/src/com/cloud/api/ApiServer.java
	server/src/com/cloud/cluster/ClusterManagerImpl.java
	server/src/com/cloud/configuration/Config.java
	server/src/com/cloud/configuration/ConfigurationManager.java
	server/src/com/cloud/configuration/ConfigurationManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/deploy/FirstFitPlanner.java
	server/src/com/cloud/ha/HighAvailabilityManagerImpl.java
	server/src/com/cloud/host/dao/HostDaoImpl.java
	server/src/com/cloud/hypervisor/xen/discoverer/XcpServerDiscoverer.java
	server/src/com/cloud/network/LoadBalancerVO.java
	server/src/com/cloud/network/NetworkManager.java
	server/src/com/cloud/network/NetworkManagerImpl.java
	server/src/com/cloud/network/dao/FirewallRulesDao.java
	server/src/com/cloud/network/dao/FirewallRulesDaoImpl.java
	server/src/com/cloud/network/element/DhcpElement.java
	server/src/com/cloud/network/element/VirtualRouterElement.java
	server/src/com/cloud/network/firewall/FirewallManagerImpl.java
	server/src/com/cloud/network/lb/LoadBalancingRulesManagerImpl.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManager.java
	server/src/com/cloud/network/router/VirtualNetworkApplianceManagerImpl.java
	server/src/com/cloud/network/rules/FirewallManager.java
	server/src/com/cloud/network/rules/FirewallRuleVO.java
	server/src/com/cloud/network/rules/PortForwardingRuleVO.java
	server/src/com/cloud/network/rules/RulesManagerImpl.java
	server/src/com/cloud/network/rules/StaticNatRuleImpl.java
	server/src/com/cloud/network/security/SecurityGroupListener.java
	server/src/com/cloud/network/security/SecurityGroupManagerImpl.java
	server/src/com/cloud/offerings/NetworkOfferingVO.java
	server/src/com/cloud/server/ConfigurationServerImpl.java
	server/src/com/cloud/server/ManagementServerImpl.java
	server/src/com/cloud/storage/StorageManager.java
	server/src/com/cloud/storage/StorageManagerImpl.java
	server/src/com/cloud/storage/dao/VMTemplateHostDaoImpl.java
	server/src/com/cloud/storage/download/DownloadMonitorImpl.java
	server/src/com/cloud/upgrade/DatabaseUpgradeChecker.java
	server/src/com/cloud/upgrade/dao/Upgrade228to229.java
	server/src/com/cloud/upgrade/dao/Upgrade229to2210.java
	server/src/com/cloud/user/AccountManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	server/src/com/cloud/vm/dao/DomainRouterDao.java
	server/src/com/cloud/vm/dao/DomainRouterDaoImpl.java
	setup/db/create-index-fk.sql
	setup/db/create-schema.sql
	setup/db/db/schema-222to224.sql
	setup/db/db/schema-227to228.sql
	setup/db/db/schema-228to229.sql
	setup/db/db/schema-229to2210.sql
	tools/testClient/README
	ui/scripts/cloud.core.instance.js
	utils/src/com/cloud/utils/SerialVersionUID.java
	utils/src/com/cloud/utils/db/ConnectionConcierge.java
	utils/src/com/cloud/utils/db/Merovingian2.java
	utils/src/com/cloud/utils/db/Transaction.java
	utils/src/com/cloud/utils/nio/Link.java
	utils/src/com/cloud/utils/nio/NioConnection.java
	utils/src/com/cloud/utils/time/InaccurateClock.java
2011-08-22 20:28:30 -07:00
frank 18f87c2108 Merge branch 'cvm' into 2.2.y
Conflicts:
	api/src/com/cloud/api/BaseCmd.java
	cloud.spec
	core/src/com/cloud/storage/template/DownloadManagerImpl.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/deploy/FirstFitPlanner.java
	server/src/com/cloud/host/dao/HostDao.java
	server/src/com/cloud/network/security/SecurityGroupListener.java
	server/src/com/cloud/storage/StorageManagerImpl.java
	server/src/com/cloud/storage/listener/StoragePoolMonitor.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	utils/src/com/cloud/utils/SerialVersionUID.java
2011-08-19 16:08:35 -07:00
Naredula Janardhana Reddy 4369b0ba96 bug 1067:
- covered basic impelementation for xen, need to test corner cases.
      - Not implemneted: kvm, vmware , listing of egress rules.
2011-08-19 11:10:16 +05:30
alena 2c1df02ba1 Removed unused imports 2011-08-18 15:02:04 -07:00
alena 0afa6f052f bug 11167: no need to lock account when create security group to ensure that the group name is unique for account. If group already exists in the db, and we try to persist it again, mysql constraint (groupName, accountId) will fail and exception will be thrown.
status 11167: resolved fixed
2011-08-18 10:16:37 -07:00
alena 0cdb67fdc7 bug 11167: no need to lock account when create security group to ensure that the group name is unique for account. If group already exists in the db, and we try to persist it again, mysql constraint (groupName, accountId) will fail and exception will be thrown.
status 11167: resolved fixed
2011-08-18 10:16:20 -07:00
frank 6aaf3d5ae0 Merge branch 'cvm'
Conflicts:
	api/src/com/cloud/api/BaseCmd.java
	api/src/com/cloud/storage/Storage.java
	cloud.spec
	core/src/com/cloud/storage/template/DownloadManagerImpl.java
	server/src/com/cloud/agent/manager/AgentManagerImpl.java
	server/src/com/cloud/configuration/DefaultComponentLibrary.java
	server/src/com/cloud/deploy/FirstFitPlanner.java
	server/src/com/cloud/host/dao/HostDao.java
	server/src/com/cloud/storage/StorageManagerImpl.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
	server/src/com/cloud/vm/VirtualMachineManagerImpl.java
	utils/src/com/cloud/utils/SerialVersionUID.java
2011-08-08 14:14:09 -07:00
frank c6fba0fd42 Bug 8966 - Oracle VM (OVM) support
OCFS2 support -- prepare OCFS2 nodes
2011-08-05 17:46:29 -07:00
Chiradeep Vittal fd1dbe9683 bug 10884: do not lock if not necessary 2011-08-02 13:51:26 -07:00
Alex Huang 5c543ffdb1 bug 10884: fixed a bug where the security group keeps processing a vm that has been removed 2011-08-02 10:45:29 -07:00
Alex Huang 92b8b29fe4 Revert "sg improvements. don't use global lock"
This reverts commit 1d9961c588976a910d60c6420487c29a9080b73a.
2011-08-02 03:49:30 -07:00
Alex Huang 79ddba246d Revert "looks like lock tables don't return the tables locked"
This reverts commit 76781c10f8534acdd6f81c46952f88ade941e269.
2011-08-02 03:48:57 -07:00
Alex Huang 91550836cf looks like lock tables don't return the tables locked 2011-08-02 02:10:47 -07:00
Alex Huang 6905a1db1d sg improvements. don't use global lock 2011-08-01 22:59:59 -07:00
Alex Huang f150f68128 sg improvements 2011-08-01 22:09:41 -07:00
Chiradeep Vittal efaa63a428 bug 10884: try out a global lock instead of per-vm locks 2011-08-01 18:52:06 -07:00
Chiradeep Vittal b4b87b1de8 bug 10920: avoid deadlocks by avoiding locks on the index on step 2011-08-01 15:32:23 -07:00
Chiradeep Vittal 3951699542 bug 10920: convert seconds to milliseconds 2011-07-30 18:19:58 -07:00
Chiradeep Vittal f49469270e bug 10920: avoid deadlocks by not using order by random 2011-07-30 12:54:50 -07:00
Chiradeep Vittal 41e6aeae96 bug 10884:
1. cleanup was scheduled wrong (seconds vs ms)
2. when finding a work item to do, lock one random row to reduce contentions by thundering herds of workers
3. cleanup thread also finds scheduled work items and gets threads to work on them. this way other mgmt servers can take jobs
4. add lots of trace logs
5. commit transactions when returning early
2011-07-29 16:28:06 -07:00
Alex Huang c00b9bf5aa fixed problems with security group. it's possible for threads to disappear due to exceptions. Also it needed to define in memory transaction boundary 2011-07-29 10:41:36 -07:00
Chiradeep Vittal 1226a49976 bug 10884: use the proper keys this time 2011-07-27 17:58:59 -07:00
Chiradeep Vittal 8cc694a579 bug 10884: bump up thread pool and cleanup less often 2011-07-27 14:44:52 -07:00
alena 18dc85c765 Pass isForRebalance parameter to processConnect method of all the listeners - some listeners don't have to be notified when connection happens as a a part of Agent Rebalance process (VirtualMachineManagerImpl listener for instance) 2011-06-27 10:37:00 -07:00
alena 826f5eedf1 bug 10447: don't notify VirtualMachineManager listener when do host rebalance - vm sync is not needed in this case.
status 10447: resolved fixed
2011-06-27 10:37:00 -07:00
alena 41f12eb642 Pass isForRebalance parameter to processConnect method of all the listeners - some listeners don't have to be notified when connection happens as a a part of Agent Rebalance process (VirtualMachineManagerImpl listener for instance) 2011-06-27 10:20:41 -07:00
alena 0bf34f3612 bug 10447: don't notify VirtualMachineManager listener when do host rebalance - vm sync is not needed in this case.
status 10447: resolved fixed
2011-06-27 10:20:40 -07:00
alena 14cdc7de14 bug 9127: covered failure scenarios for agent LB.
status 9127: resolved fixed

The feature is completed; please file separate bugs if any issue arises during the testing.
Wiki link describing how agentLB works: http://intranet.lab.vmops.com/engineering/release-2.2-features/agent-load-balancing
2011-06-05 17:35:30 -07:00
alena 30e8ed3ab6 Don't allow to specify security groups when deployVm in Vmware setup.
Also fixed a couple of other problems:
* verify security group ids before vm creation
* don't create "default" security group (if missing) as a part of deployVm process when vm is deployed from vmWare template
2011-05-20 18:52:58 -07:00
alena c2afcdec52 bug 9873: always add default security group to the SG list when deploy vm in 1) Basic zone 2) Advance zone using SG enabled network
status 9873: resolved fixed

Following fixes were made as a part of the checkin:

* When deploy user vm and SG doesn't exist in the DB, create it automatically.
* SecurityGroup enabled use vm start: if map to default group is not present in security_group_vm_map table, create one.
* Added "name" (securityGroupName) parameter back to deleteSecurityGroup/authorizeSecurityGroupIngress/deployVm. Mutually exclusive with security group id parameter.

Conflicts:

	api/src/com/cloud/api/commands/AuthorizeSecurityGroupIngressCmd.java
	api/src/com/cloud/api/commands/DeleteSecurityGroupCmd.java
	api/src/com/cloud/api/commands/DeployVMCmd.java
	server/src/com/cloud/api/ApiDBUtils.java
	server/src/com/cloud/vm/UserVmManagerImpl.java
2011-05-17 15:08:13 -07:00
alena 5db28c57e4 bug 9492: allow security group removal when it has ingress rules, but not assigned to any vms yet
status 9492: resolved fixed
2011-04-25 16:43:39 -07:00
alena 41e5e38fef bug 9336: securityGroups can be used by other securityGroups in the same domain only; no cross domain SG authentication
status 9336: resolved fixed

Following changes were made:

* deleteSecurityGroup/authorizeSecurityGroupIngress - removed account/domainId parameters as SG is uniquely identified by id now
* removed account_name field from securityGroup DB table; removed allowed_security_group/allowed_sec_grp_acct from security_ingress_rule.
These values were used for api response generation only for performance purposes; added caching on API level to improve performance
* Added missing security checks for securityGroups/ingressRules
2011-04-22 11:35:29 -07:00
alena 1a6d78eae4 Code cleanup. No need to declare runtime exceptions (CloudRuntimeException, InvalidParameterException, PermissionDenied exceptions) 2011-04-21 16:26:53 -07:00
Frank 92155522f2 Add license header to files 2011-04-14 11:23:14 -07:00
anthony e0ba2a2fa6 clean up transation code 2011-04-12 18:56:49 -07:00
nit debe236a8d bug 8710: CONTD....Introducing a new user role in cloudstack called RESOURCE_DOMAIN_ADMIN. The role would have all the domain_admin rights and the rights to list zone,pods,clusters and so on. More info in the bug 2011-04-11 19:40:37 +05:30
alena a47a4c8cfe bug 9272: fixed the race condition bug when we tried to remove vm from SG after it was expunged (expunge interval was really small, 60 sec).
status 9272: resolved fixed

When do search for vm, do includingRemoved search.
2011-04-04 15:47:14 -07:00
alena 1932652125 bug 5912: Added events and logging for securityGroup create/delete
status 5912: resolved fixed
2011-03-25 15:23:18 -07:00
alena 1cf735c537 bug 8968: use search criteria when list security group by id
status 8968: resolved fixed
2011-03-14 13:45:11 -07:00
Edison Su 8eaa53f282 fix transaction rollback in security group listener, which cause state machine update failed 2011-03-04 10:58:24 -05:00
Edison Su 9ad5139fda fix delete security group rule 2011-03-03 13:44:48 -05:00
Edison Su 8240ae7e8c fix migration 2011-02-28 12:16:40 -05:00
Edison Su b20808d223 minor fix 2011-02-28 12:16:40 -05:00
Edison Su 9b51886850 fix migration issue 2011-02-28 12:16:40 -05:00
Edison Su adbd20ca5a bug 8655: add security group for direct tagged network 2011-02-23 15:53:14 -05:00
alena 15f59e6f58 bug 8637: throw ResourceAllocationException when resource limit is exceeded.
status 8637: resolved fixed
2011-02-18 12:26:58 -08:00
Edison Su 08285af33f fix capacity caclulation issue after migration 2011-02-09 13:33:42 -05:00
abhishek 73eb597ba6 bug 8335: adding the security group objects to the list virtual machines response 2011-02-08 11:48:39 -08:00
abhishek 2a38a58be0 bug 8335: changing the deployVm flow to take in a list of security group ids instead of a list of security group names 2011-02-03 11:37:49 -08:00
Edison Su a46155e895 bug 8094: send networkrulesforssvm command to agent, no matter security group is enabled or not
status 8094: resolved fixed
2011-02-02 16:26:54 -05:00
abhishek 24acc66124 bug 8331: changing the revoke logic to work by taking in the entity id. All other params are obsolete at this point
status 8331: resolved fixed
2011-02-02 13:49:56 -08:00
Edison Su fc97034000 refactor vmstatelistener 2011-01-26 11:01:43 -05:00
Edison Su d45f5cd5bf bug 8119: don't boot from iso, if iso is dettached
status 8119: resolved fixed
2011-01-22 04:04:52 -05:00
Edison Su 4b355ca301 bug 8118: add security group back
status 8118: resolved fixed
2011-01-22 04:04:52 -05:00
abhishek 31c9cce6c3 bug 7949: changing security group code to use ids instead of name
status 7949: resolved fixed
2011-01-20 14:21:32 -08:00
Alex Huang d43717eef8 merge changes 2011-01-14 15:12:13 -08:00
Chiradeep Vittal dd7f8625cc bug 7380: SNAT rules when there are multiple public interfaces
bug 6854: port from 2.1.x
2011-01-13 16:59:35 -08:00
Chiradeep Vittal 2b66b8a924 bug 7929: remove security groups when account is deleted.
status 7929: resolved fixed
2011-01-13 15:40:29 -08:00
abhishek e28882b8ee eliminating use of multiple variables; using the same var for all protocols (denoting ports for tcp/udp and type/code for icmp) 2011-01-11 14:20:02 -08:00
abhishek e4c3f556c2 bug 7942: we were not using the right values for record creation when the proto=icmp. Using the right vals
status 7942: resolved fixed
2011-01-11 13:57:53 -08:00
abhishek ffb8d54dff changing a few obsolete names to std convention 2011-01-07 16:49:51 -08:00
abhishek fec9a6d566 not iterating over cidr list if null 2011-01-07 16:22:28 -08:00
abhishek 274edf1478 fixing sec group rules creation, and also adding some description in commands. checking in so that ui work can begin. 2011-01-07 10:34:00 -08:00
Alex Huang 4eba6d10d7 Moved State into VirtualMachine like other States of objects 2011-01-04 15:01:34 -08:00
Alex Huang 544fa7ff1b remote access vpn, user ip address changes 2010-12-29 09:32:54 -08:00
abhishek d73e06a938 bug 7509: adding search by id for security groups, also refactoring a few method names to use the new scheme
status 7509: resolved fixed
2010-12-16 16:47:57 -08:00
abhishek 5154ba1539 bug 6361: this is a good point to commit; 1st round of refactor is done, code is clean compiling and ms is deploying 2010-12-16 15:37:19 -08:00
alena 44737d24c5 bug 7196: fixed response object generation for authorizeNetworkGroupIngress command (response type is Network group response - the way it was in 2.1.x - instead of IngressRule response)
status 7196: resolved fixed

Also fixed revokeNetworkGroup command - didn't work via 8096 port
2010-11-24 09:50:04 -08:00
Alex Huang d38f7fd56d Moved DAO to server 2010-11-22 07:40:41 -08:00
Alex Huang 1e44925564 api refactoring 2010-11-21 12:00:21 -08:00
alena 9fefa33a36 bug 5701: listNetworkGroups api - apply page size parameter to the NetworkGroup instead of IngressRule.
status 5701: resolved fixed
2010-11-17 15:34:45 -08:00
alena c5d78a726e Modified exception handing in API. Following exceptions are supported now (location - BaseCmd.java):
* MALFORMED_PARAMETER_ERROR - when type of the request parameter is invalid (String instead of Long for id for example)
* PARAM_ERROR - when invalid parameter value is specified in api request. For example, id of non existing vm for StartVmCmd
* ACCOUNT_RESOURCE_LIMIT_ERROR - when user tries to exceed his resource limits by executing the api command.
* INSUFFICIENT_CAPACITY_ERROR - when resource fails to create/start due to insufficient capacity.
* RESOURCE_UNAVAILABLE_ERROR - when user tries to create a vm when storage is not available.
* RESOURCE_IN_USE_ERROR - when user tries to delete/modify resource while it's in use. For example, when we try to delete a network group when it contains ingress rules.
* NETWORK_RULE_CONFLICT_ERROR - when LB/PF rule to add conflicts with existing rule
* ACCOUNT_ERROR - when user is not authorized to execute operation on the resource.
* INTERNAL_ERROR
2010-11-16 11:56:34 -08:00
alena d43a8e983c Fixed authorizeNetworkGroupIngress api command (it stopped working after API refactor) 2010-11-15 17:44:51 -08:00
alena 1c24deda34 1) Refactored current Apis not to use reflection for method invocation. In new version following has to be done:
* Implement callCreate() and execute() methods in apis extending BaseAsyncCreateCmd (example - CreateVolumeCmd)
* Implement execute() method in apis extending BaseCmd and BaseAsyncCmd (example - deleteVolumeCmd and deleteUserCmd)

We no longer need createMethod(), method(), manager() fields in @Implementation annotation, cleanup has to be done.

2) Moved Account/User related methods to AccountManagerImpl. Methods are exposed via AccountService interface.
3) Enhanced exception handing for Api calls.
4) Created ConfigurationService interface, all Api config methods are exposed via it.
2010-11-08 11:27:36 -08:00
Alex Huang 560d7a275e Removed InternalErrorException. Renamed the lock methods on the DAO objects to be more understandable. 2010-11-02 12:25:08 -07:00
Alex Huang 2bc938c3f8 checkins for problems. 2010-10-26 09:35:24 -07:00
Alex Huang d5d8f27cad Added more changes to the api 2010-10-21 15:11:49 -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 8e086d7a21 resolving merge conflicts between 2.1.refactor and master 2010-10-12 16:28:16 -07:00
Alex Huang ce091de3d2 more changes for refactor 2010-10-12 07:17:47 -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
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
alena 0f2f356874 bug 6277: listVirtualMachines with group=-1 would return all vms that don't belong to any group. As a part of the fix, changed Dao layer to be able to make different types of Joins - Inner, Right, Left, etc.
status 6277: resolved fixed
2010-09-23 10:43:17 -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
root 76e5cf3321 renamed dao methods to correctly reflect what they do 2010-09-09 18:01:50 -07:00
Alex Huang 7249f168d5 more file changes 2010-09-09 13:27:20 -07:00
alena 75483e4e05 Modified AuthorizeNetworkGroupIngress/DeleteNetworkGroupIngress to new api framework 2010-09-09 11:41:33 -07:00
Kris McQueen fbcb02cd9e Refactoring listNetworkGroups to new API framework. The search is done entirely within NetworkGroupManager, and this is one instances of a response with nested data (the ingress rules are nested within the groups). Some work will need to be done to serialize this response properly. 2010-09-01 14:05:39 -07:00
abhishek 3198abd8c1 Refactoring network ingress group command 2010-08-18 17:52:55 -07:00
Alex Huang b250b985ec changes 2010-08-18 12:19:22 -07:00