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;