You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cloudstack.apache.org by da...@apache.org on 2014/07/28 16:04:53 UTC
[41/50] git commit: updated refs/heads/4.4 to d5220a8
CLOUDSTACK-4364: Restore VM - log a usage event for newly created volume
(cherry picked from commit 1e7835488222471a565174ee1fdf8bb985fc9024)
Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo
Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/fec9ccf4
Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/fec9ccf4
Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/fec9ccf4
Branch: refs/heads/4.4
Commit: fec9ccf446357c5969a33dc9bff5947b9011c1d5
Parents: 794ef20
Author: Nitin Mehta <ni...@citrix.com>
Authored: Mon Jun 30 14:36:57 2014 -0700
Committer: Daan Hoogland <da...@onecht.net>
Committed: Mon Jul 28 16:02:49 2014 +0200
----------------------------------------------------------------------
server/src/com/cloud/vm/UserVmManagerImpl.java | 5 ++++-
server/test/com/cloud/vm/UserVmManagerTest.java | 4 ++++
2 files changed, 8 insertions(+), 1 deletion(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fec9ccf4/server/src/com/cloud/vm/UserVmManagerImpl.java
----------------------------------------------------------------------
diff --git a/server/src/com/cloud/vm/UserVmManagerImpl.java b/server/src/com/cloud/vm/UserVmManagerImpl.java
index 4f0c5f4..3b91688 100755
--- a/server/src/com/cloud/vm/UserVmManagerImpl.java
+++ b/server/src/com/cloud/vm/UserVmManagerImpl.java
@@ -4670,10 +4670,13 @@ public class UserVmManagerImpl extends ManagerBase implements UserVmManager, Vir
} else {
newVol = volumeMgr.allocateDuplicateVolume(root, null);
}
- // Save usage event and update resource count for user vm volumes
+ // 1. Save usage event and update resource count for user vm volumes
if (vm instanceof UserVm) {
_resourceLimitMgr.incrementResourceCount(vm.getAccountId(), ResourceType.volume);
}
+ //2. Create Usage event for the newly created volume
+ UsageEventVO usageEvent = new UsageEventVO(EventTypes.EVENT_VOLUME_CREATE, newVol.getAccountId(), newVol.getDataCenterId(), newVol.getId(), newVol.getName(), newVol.getDiskOfferingId(), templateId, newVol.getSize());
+ _usageEventDao.persist(usageEvent);
handleManagedStorage(vm, root);
http://git-wip-us.apache.org/repos/asf/cloudstack/blob/fec9ccf4/server/test/com/cloud/vm/UserVmManagerTest.java
----------------------------------------------------------------------
diff --git a/server/test/com/cloud/vm/UserVmManagerTest.java b/server/test/com/cloud/vm/UserVmManagerTest.java
index b67c164..21cebb5 100755
--- a/server/test/com/cloud/vm/UserVmManagerTest.java
+++ b/server/test/com/cloud/vm/UserVmManagerTest.java
@@ -35,6 +35,7 @@ import java.lang.reflect.Field;
import java.util.List;
import java.util.UUID;
+import com.cloud.event.dao.UsageEventDao;
import org.junit.Before;
import org.junit.Test;
import org.mockito.Mock;
@@ -145,6 +146,8 @@ public class UserVmManagerTest {
ResourceLimitService _resourceLimitMgr;
@Mock
PrimaryDataStoreDao _storagePoolDao;
+ @Mock
+ UsageEventDao _usageEventDao;
@Before
public void setup() {
@@ -154,6 +157,7 @@ public class UserVmManagerTest {
_userVmMgr._vmInstanceDao = _vmInstanceDao;
_userVmMgr._templateDao = _templateDao;
_userVmMgr._volsDao = _volsDao;
+ _userVmMgr._usageEventDao = _usageEventDao;
_userVmMgr._itMgr = _itMgr;
_userVmMgr.volumeMgr = _storageMgr;
_userVmMgr._accountDao = _accountDao;