You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by ya...@apache.org on 2012/07/28 01:30:36 UTC
[2/6] git commit: CS-15719: Fix state change when stopping
CS-15719: Fix state change when stopping
Project: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/commit/fd9ef34a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/tree/fd9ef34a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/diff/fd9ef34a
Branch: refs/heads/vpc
Commit: fd9ef34a0fde0dad6279820af8e35449b742990b
Parents: 8eee8f3
Author: Sheng Yang <sh...@citrix.com>
Authored: Fri Jul 27 14:43:26 2012 -0700
Committer: Sheng Yang <sh...@citrix.com>
Committed: Fri Jul 27 16:28:06 2012 -0700
----------------------------------------------------------------------
server/src/com/cloud/user/AccountManagerImpl.java | 12 +++++++++++-
.../com/cloud/vm/VirtualMachineManagerImpl.java | 2 +-
2 files changed, 12 insertions(+), 2 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/fd9ef34a/server/src/com/cloud/user/AccountManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/user/AccountManagerImpl.java b/server/src/com/cloud/user/AccountManagerImpl.java
index 0202e20..503c45a 100755
--- a/server/src/com/cloud/user/AccountManagerImpl.java
+++ b/server/src/com/cloud/user/AccountManagerImpl.java
@@ -129,7 +129,9 @@ import com.cloud.vm.ReservationContextImpl;
import com.cloud.vm.UserVmManager;
import com.cloud.vm.UserVmVO;
import com.cloud.vm.VMInstanceVO;
+import com.cloud.vm.VirtualMachine.Type;
import com.cloud.vm.VirtualMachineManager;
+import com.cloud.vm.dao.DomainRouterDao;
import com.cloud.vm.dao.InstanceGroupDao;
import com.cloud.vm.dao.UserVmDao;
import com.cloud.vm.dao.VMInstanceDao;
@@ -207,6 +209,8 @@ public class AccountManagerImpl implements AccountManager, AccountService, Manag
private IPAddressDao _ipAddressDao;
@Inject
private VpcManager _vpcMgr;
+ @Inject
+ private DomainRouterDao _routerDao;
private Adapters<UserAuthenticator> _userAuthenticators;
@@ -678,7 +682,13 @@ public class AccountManagerImpl implements AccountManager, AccountService, Manag
for (VMInstanceVO vm : vms) {
try {
try {
- success = (success && _itMgr.advanceStop(vm, false, getSystemUser(), getSystemAccount()));
+ if (vm.getType() == Type.User) {
+ success = (success && _itMgr.advanceStop(_userVmDao.findById(vm.getId()), false, getSystemUser(), getSystemAccount()));
+ } else if (vm.getType() == Type.DomainRouter) {
+ success = (success && _itMgr.advanceStop(_routerDao.findById(vm.getId()), false, getSystemUser(), getSystemAccount()));
+ } else {
+ success = (success && _itMgr.advanceStop(vm, false, getSystemUser(), getSystemAccount()));
+ }
} catch (OperationTimedoutException ote) {
s_logger.warn("Operation for stopping vm timed out, unable to stop vm " + vm.getHostName(), ote);
success = false;
http://git-wip-us.apache.org/repos/asf/incubator-cloudstack/blob/fd9ef34a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
index 68e2edd..adb0715 100755
--- a/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
+++ b/server/src/com/cloud/vm/VirtualMachineManagerImpl.java
@@ -2562,4 +2562,4 @@ public class VirtualMachineManagerImpl implements VirtualMachineManager, Listene
return result;
}
-}
\ No newline at end of file
+}