This is an automated email from the ASF dual-hosted git repository.

dahn pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/cloudstack.git


The following commit(s) were added to refs/heads/main by this push:
     new 48f890a6931 resolve merge problems in the backup framework (#10457)
48f890a6931 is described below

commit 48f890a6931d912542577564a6c9bab591c68940
Author: dahn <[email protected]>
AuthorDate: Wed Feb 26 14:12:40 2025 +0100

    resolve merge problems in the backup framework (#10457)
    
    Co-authored-by: Wei Zhou <[email protected]>
---
 .../apache/cloudstack/backup/BackupProvider.java   | 37 +++++++--------
 .../cloudstack/backup/DummyBackupProvider.java     |  6 +--
 .../cloudstack/backup/NASBackupProvider.java       | 25 ++++------
 .../cloudstack/backup/NetworkerBackupProvider.java | 45 +++++++++---------
 .../cloudstack/backup/VeeamBackupProvider.java     | 55 +---------------------
 5 files changed, 54 insertions(+), 114 deletions(-)

diff --git a/api/src/main/java/org/apache/cloudstack/backup/BackupProvider.java 
b/api/src/main/java/org/apache/cloudstack/backup/BackupProvider.java
index e3a6c3a62bd..39582b0e423 100644
--- a/api/src/main/java/org/apache/cloudstack/backup/BackupProvider.java
+++ b/api/src/main/java/org/apache/cloudstack/backup/BackupProvider.java
@@ -49,22 +49,21 @@ public interface BackupProvider {
 
     /**
      * Assign a VM to a backup offering or policy
-     * @param vm
-     * @param backup
-     * @param policy
-     * @return
+     * @param vm the machine to back up
+     * @param backupOffering the SLA definition for the backup
+     * @return succeeded?
      */
     boolean assignVMToBackupOffering(VirtualMachine vm, BackupOffering 
backupOffering);
 
     /**
      * Removes a VM from a backup offering or policy
-     * @param vm
-     * @return
+     * @param vm the machine to stop backing up
+     * @return succeeded?
      */
     boolean removeVMFromBackupOffering(VirtualMachine vm);
 
     /**
-     * Whether the provide will delete backups on removal of VM from the 
offfering
+     * Whether the provider will delete backups on removal of VM from the 
offering
      * @return boolean result
      */
     boolean willDeleteBackupsOnOfferingRemoval();
@@ -72,16 +71,16 @@ public interface BackupProvider {
     /**
      * Starts and creates an adhoc backup process
      * for a previously registered VM backup
-     * @param backup
-     * @return
+     * @param vm the machine to make a backup of
+     * @return the result and {code}Backup{code} {code}Object{code}
      */
     Pair<Boolean, Backup> takeBackup(VirtualMachine vm);
 
     /**
      * Delete an existing backup
-     * @param backuo The backup to exclude
+     * @param backup The backup to exclude
      * @param forced Indicates if backup will be force removed or not
-     * @return
+     * @return succeeded?
      */
     boolean deleteBackup(Backup backup, boolean forced);
 
@@ -97,23 +96,23 @@ public interface BackupProvider {
 
     /**
      * Returns backup metrics for a list of VMs in a zone
-     * @param zoneId
-     * @param vms
-     * @return
+     * @param zoneId the zone for which to return metrics
+     * @param vms a list of machines to get measurements for
+     * @return a map of machine -> backup metrics
      */
     Map<VirtualMachine, Backup.Metric> getBackupMetrics(Long zoneId, 
List<VirtualMachine> vms);
 
     /**
      * This method should TODO
-     * @param
+     * @param vm the machine to get restore point for
      */
-    public List<Backup.RestorePoint> listRestorePoints(VirtualMachine vm);
+    List<Backup.RestorePoint> listRestorePoints(VirtualMachine vm);
 
     /**
      * This method should TODO
-     * @param
-     * @param
-     * @param metric
+     * @param restorePoint the restore point to create a backup for
+     * @param vm The machine for which to create a backup
+     * @param metric the metric object to update with the new backup data
      */
     Backup createNewBackupEntryForRestorePoint(Backup.RestorePoint 
restorePoint, VirtualMachine vm, Backup.Metric metric);
 }
diff --git 
a/plugins/backup/dummy/src/main/java/org/apache/cloudstack/backup/DummyBackupProvider.java
 
b/plugins/backup/dummy/src/main/java/org/apache/cloudstack/backup/DummyBackupProvider.java
index 6935d177c72..2d43f9e8d3c 100644
--- 
a/plugins/backup/dummy/src/main/java/org/apache/cloudstack/backup/DummyBackupProvider.java
+++ 
b/plugins/backup/dummy/src/main/java/org/apache/cloudstack/backup/DummyBackupProvider.java
@@ -112,7 +112,7 @@ public class DummyBackupProvider extends AdapterBase 
implements BackupProvider {
 
     @Override
     public boolean removeVMFromBackupOffering(VirtualMachine vm) {
-        logger.debug(String.format("Removing VM %s from backup offering by the 
Dummy Backup Provider", vm));
+        logger.debug("Removing VM {} from backup offering by the Dummy Backup 
Provider", vm);
         return true;
     }
 
@@ -123,7 +123,7 @@ public class DummyBackupProvider extends AdapterBase 
implements BackupProvider {
 
     @Override
     public Pair<Boolean, Backup> takeBackup(VirtualMachine vm) {
-        logger.debug(String.format("Starting backup for VM %s on Dummy 
provider", vm));
+        logger.debug("Starting backup for VM {} on Dummy provider", vm);
 
         BackupVO backup = new BackupVO();
         backup.setVmId(vm.getId());
@@ -131,7 +131,7 @@ public class DummyBackupProvider extends AdapterBase 
implements BackupProvider {
         backup.setType("FULL");
         backup.setDate(new Date());
         backup.setSize(1024000L);
-        backup.setProtectedSize(1 * Resource.ResourceType.bytesToGiB);
+        backup.setProtectedSize(Resource.ResourceType.bytesToGiB);
         backup.setStatus(Backup.Status.BackedUp);
         backup.setBackupOfferingId(vm.getBackupOfferingId());
         backup.setAccountId(vm.getAccountId());
diff --git 
a/plugins/backup/nas/src/main/java/org/apache/cloudstack/backup/NASBackupProvider.java
 
b/plugins/backup/nas/src/main/java/org/apache/cloudstack/backup/NASBackupProvider.java
index f148c53e614..ba37c899169 100644
--- 
a/plugins/backup/nas/src/main/java/org/apache/cloudstack/backup/NASBackupProvider.java
+++ 
b/plugins/backup/nas/src/main/java/org/apache/cloudstack/backup/NASBackupProvider.java
@@ -17,7 +17,6 @@
 package org.apache.cloudstack.backup;
 
 import com.cloud.agent.AgentManager;
-import com.cloud.dc.dao.ClusterDao;
 import com.cloud.exception.AgentUnavailableException;
 import com.cloud.exception.OperationTimedoutException;
 import com.cloud.host.Host;
@@ -36,8 +35,8 @@ import com.cloud.utils.component.AdapterBase;
 import com.cloud.utils.exception.CloudRuntimeException;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.dao.VMInstanceDao;
+
 import org.apache.cloudstack.backup.dao.BackupDao;
-import org.apache.cloudstack.backup.dao.BackupOfferingDao;
 import org.apache.cloudstack.backup.dao.BackupRepositoryDao;
 import org.apache.cloudstack.framework.config.ConfigKey;
 import org.apache.cloudstack.framework.config.Configurable;
@@ -70,15 +69,9 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
     @Inject
     private BackupRepositoryDao backupRepositoryDao;
 
-    @Inject
-    private BackupOfferingDao backupOfferingDao;
-
     @Inject
     private HostDao hostDao;
 
-    @Inject
-    private ClusterDao clusterDao;
-
     @Inject
     private VolumeDao volumeDao;
 
@@ -108,7 +101,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
             // Try to find any Up host in the same cluster
             for (final Host hostInCluster : 
hostDao.findHypervisorHostInCluster(host.getClusterId())) {
                 if (hostInCluster.getStatus() == Status.Up) {
-                    LOG.debug("Found Host {}", hostInCluster);
+                    LOG.debug("Found Host {} in cluster {}", hostInCluster, 
host.getClusterId());
                     return hostInCluster;
                 }
             }
@@ -116,7 +109,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
         // Try to find any Host in the zone
         for (final HostVO hostInZone : 
hostDao.listByDataCenterIdAndHypervisorType(host.getDataCenterId(), 
Hypervisor.HypervisorType.KVM)) {
             if (hostInZone.getStatus() == Status.Up) {
-                LOG.debug("Found Host {}", hostInZone);
+                LOG.debug("Found Host {} in zone {}", hostInZone, 
host.getDataCenterId());
                 return hostInZone;
             }
         }
@@ -166,7 +159,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
             command.setVolumePaths(volumePaths);
         }
 
-        BackupAnswer answer = null;
+        BackupAnswer answer;
         try {
             answer = (BackupAnswer) agentManager.send(host.getId(), command);
         } catch (AgentUnavailableException e) {
@@ -204,7 +197,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
                 virtualSize += volume.getSize();
             }
         }
-        backup.setProtectedSize(Long.valueOf(virtualSize));
+        backup.setProtectedSize(virtualSize);
         backup.setStatus(Backup.Status.BackingUp);
         backup.setBackupOfferingId(vm.getBackupOfferingId());
         backup.setAccountId(vm.getAccountId());
@@ -231,7 +224,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
         restoreCommand.setVmExists(vm.getRemoved() == null);
         restoreCommand.setVmState(vm.getState());
 
-        BackupAnswer answer = null;
+        BackupAnswer answer;
         try {
             answer = (BackupAnswer) agentManager.send(host.getId(), 
restoreCommand);
         } catch (AgentUnavailableException e) {
@@ -298,7 +291,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
         restoreCommand.setVmState(vmNameAndState.second());
         restoreCommand.setRestoreVolumeUUID(volumeUuid);
 
-        BackupAnswer answer = null;
+        BackupAnswer answer;
         try {
             answer = (BackupAnswer) agentManager.send(hostVO.getId(), 
restoreCommand);
         } catch (AgentUnavailableException e) {
@@ -350,7 +343,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
         DeleteBackupCommand command = new 
DeleteBackupCommand(backup.getExternalId(), backupRepository.getType(),
                 backupRepository.getAddress(), 
backupRepository.getMountOptions());
 
-        BackupAnswer answer = null;
+        BackupAnswer answer;
         try {
             answer = (BackupAnswer) agentManager.send(host.getId(), command);
         } catch (AgentUnavailableException e) {
@@ -363,7 +356,7 @@ public class NASBackupProvider extends AdapterBase 
implements BackupProvider, Co
             return backupDao.remove(backup.getId());
         }
 
-        logger.debug("There was an error removing the backup with id " + 
backup.getId());
+        logger.debug("There was an error removing the backup with id {}", 
backup.getId());
         return false;
     }
 
diff --git 
a/plugins/backup/networker/src/main/java/org/apache/cloudstack/backup/NetworkerBackupProvider.java
 
b/plugins/backup/networker/src/main/java/org/apache/cloudstack/backup/NetworkerBackupProvider.java
index 822688a86a3..504a551bb30 100644
--- 
a/plugins/backup/networker/src/main/java/org/apache/cloudstack/backup/NetworkerBackupProvider.java
+++ 
b/plugins/backup/networker/src/main/java/org/apache/cloudstack/backup/NetworkerBackupProvider.java
@@ -21,6 +21,7 @@ import com.cloud.host.HostVO;
 import com.cloud.host.Status;
 import com.cloud.host.dao.HostDao;
 import com.cloud.hypervisor.Hypervisor;
+import com.cloud.utils.script.Script;
 import com.cloud.storage.StoragePoolHostVO;
 import com.cloud.storage.Volume;
 import com.cloud.storage.VolumeVO;
@@ -34,6 +35,7 @@ import com.cloud.utils.ssh.SshHelper;
 import com.cloud.vm.VMInstanceVO;
 import com.cloud.vm.VirtualMachine;
 import com.cloud.vm.dao.VMInstanceDao;
+
 import org.apache.cloudstack.backup.dao.BackupDao;
 import org.apache.cloudstack.backup.dao.BackupOfferingDaoImpl;
 import org.apache.cloudstack.backup.networker.NetworkerClient;
@@ -44,7 +46,9 @@ import org.apache.logging.log4j.Logger;
 import org.apache.logging.log4j.LogManager;
 import org.apache.xml.utils.URI;
 import org.apache.cloudstack.backup.networker.api.NetworkerBackup;
+
 import javax.inject.Inject;
+
 import java.net.URISyntaxException;
 import java.security.KeyManagementException;
 import java.security.NoSuchAlgorithmException;
@@ -60,7 +64,6 @@ import java.util.UUID;
 import java.util.regex.Matcher;
 import java.util.regex.Pattern;
 import java.util.stream.Collectors;
-import com.cloud.utils.script.Script;
 
 public class NetworkerBackupProvider extends AdapterBase implements 
BackupProvider, Configurable {
 
@@ -169,7 +172,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
             List<HostVO> altClusterHosts = 
hostDao.findHypervisorHostInCluster(host.getClusterId());
             for (final HostVO candidateClusterHost : altClusterHosts) {
                 if ( candidateClusterHost.getStatus() == Status.Up ) {
-                    LOG.debug(String.format("Found Host %s", 
candidateClusterHost));
+                    LOG.debug("Found Host {}", candidateClusterHost);
                     return candidateClusterHost;
                 }
             }
@@ -178,7 +181,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
         List<HostVO> altZoneHosts = 
hostDao.findByDataCenterId(host.getDataCenterId());
         for (final HostVO candidateZoneHost : altZoneHosts) {
             if ( candidateZoneHost.getStatus() == Status.Up && 
candidateZoneHost.getHypervisorType() == Hypervisor.HypervisorType.KVM ) {
-                LOG.debug("Found Host " + candidateZoneHost);
+                LOG.debug("Found Host {}", candidateZoneHost);
                 return candidateZoneHost;
             }
         }
@@ -229,13 +232,13 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
             Pair<Boolean, String> response = 
SshHelper.sshExecute(host.getPrivateIpAddress(), 22,
                     username, null, password, command, 120000, 120000, 
3600000);
             if (!response.first()) {
-                LOG.error(String.format("Backup Script failed on HYPERVISOR %s 
due to: %s", host, response.second()));
+                LOG.error("Backup Script failed on HYPERVISOR {} due to: {}", 
host, response.second());
             } else {
-                LOG.debug(String.format("Networker Backup Results: %s", 
response.second()));
+                LOG.debug("Networker Backup Results: {}", response.second());
             }
             Matcher saveTimeMatcher = 
saveTimePattern.matcher(response.second());
             if (saveTimeMatcher.find()) {
-                LOG.debug(String.format("Got saveTimeMatcher: %s", 
saveTimeMatcher.group(1)));
+                LOG.debug("Got saveTimeMatcher: {}", saveTimeMatcher.group(1));
                 return saveTimeMatcher.group(1);
             }
         } catch (final Exception e) {
@@ -251,9 +254,9 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
                 username, null, password, command, 120000, 120000, 3600000);
 
             if (!response.first()) {
-                LOG.error(String.format("Restore Script failed on HYPERVISOR 
%s due to: %s", host, response.second()));
+                LOG.error("Restore Script failed on HYPERVISOR {} due to: {}", 
host, response.second());
             } else {
-                LOG.debug(String.format("Networker Restore Results: 
%s",response.second()));
+                LOG.debug("Networker Restore Results: {}",response.second());
                 return true;
             }
         } catch (final Exception e) {
@@ -310,7 +313,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
         List<String> backupsTaken = 
getClient(vm.getDataCenterId()).getBackupsForVm(vm);
 
         for (String backupId : backupsTaken) {
-            LOG.debug("Trying to remove backup with id" + backupId);
+            LOG.debug("Trying to remove backup with id {}", backupId);
             getClient(vm.getDataCenterId()).deleteBackupForVM(backupId);
         }
 
@@ -327,10 +330,10 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
         final NetworkerBackup 
networkerBackup=getClient(zoneId).getNetworkerBackupInfo(externalBackupId);
         final String SSID = networkerBackup.getShortId();
 
-        LOG.debug(String.format("Restoring vm %s from backup %s on the 
Networker Backup Provider", vm, backup));
+        LOG.debug("Restoring vm {} from backup {} on the Networker Backup 
Provider", vm, backup);
 
         if ( SSID.isEmpty() ) {
-            LOG.debug("There was an error retrieving the SSID for backup with 
id " + externalBackupId + " from EMC NEtworker");
+            LOG.debug("There was an error retrieving the SSID for backup with 
id {} from EMC NEtworker", externalBackupId);
             return false;
         }
 
@@ -338,7 +341,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
         hostVO = getLastVMHypervisorHost(vm);
         // Get credentials for that host
         Ternary<String, String, String> credentials = 
getKVMHyperisorCredentials(hostVO);
-        LOG.debug("The SSID was reported successfully " + externalBackupId);
+        LOG.debug("The SSID was reported successfully {}", externalBackupId);
         try {
             networkerServer = getUrlDomain(NetworkerUrl.value());
         } catch (URISyntaxException e) {
@@ -355,14 +358,14 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
             script.add("-v");
 
         Date restoreJobStart = new Date();
-        LOG.debug(String.format("Starting Restore for VM %s and %s at %s", vm, 
SSID, restoreJobStart));
+        LOG.debug("Starting Restore for VM {} and {} at {}", vm, SSID, 
restoreJobStart);
 
         if ( executeRestoreCommand(hostVO, credentials.first(), 
credentials.second(), script.toString()) ) {
             Date restoreJobEnd = new Date();
-            LOG.debug("Restore Job for SSID " + SSID + " completed 
successfully at " + restoreJobEnd);
+            LOG.debug("Restore Job for SSID {} completed successfully at {}", 
SSID, restoreJobEnd);
             return true;
         } else {
-            LOG.debug("Restore Job for SSID " + SSID + " failed!");
+            LOG.debug("Restore Job for SSID {} failed!", SSID);
             return false;
         }
     }
@@ -383,7 +386,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
         final String destinationNetworkerClient = 
hostVO.getName().split("\\.")[0];
         Long restoredVolumeDiskSize = 0L;
 
-        LOG.debug(String.format("Restoring volume %s with uuid %s from backup 
%s on the Networker Backup Provider", volume, volumeUuid, backup));
+        LOG.debug("Restoring volume {} with uuid {} from backup {} on the 
Networker Backup Provider", volume, volumeUuid, backup);
 
         if ( SSID.isEmpty() ) {
             LOG.debug("There was an error retrieving the SSID for backup with 
id " + externalBackupId + " from EMC NEtworker");
@@ -536,8 +539,8 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
     @Override
     public Map<VirtualMachine, Backup.Metric> getBackupMetrics(Long zoneId, 
List<VirtualMachine> vms) {
         final Map<VirtualMachine, Backup.Metric> metrics = new HashMap<>();
-        Long vmBackupSize=0L;
-        Long vmBackupProtectedSize=0L;
+        long vmBackupSize=0L;
+        long vmBackupProtectedSize=0L;
 
         if (CollectionUtils.isEmpty(vms)) {
             LOG.warn("Unable to get VM Backup Metrics because the list of VMs 
is empty.");
@@ -584,7 +587,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
                 throw new CloudRuntimeException(msg, e);
             }
             backup.setStatus(Backup.Status.BackedUp);
-            Long vmBackupProtectedSize=0L;
+            long vmBackupProtectedSize=0L;
             for (Backup.VolumeInfo thisVMVol : vm.getBackupVolumeList()) {
                 vmBackupProtectedSize += (thisVMVol.getSize() / 1024L / 1024L);
             }
@@ -605,9 +608,7 @@ public class NetworkerBackupProvider extends AdapterBase 
implements BackupProvid
     public List<Backup.RestorePoint> listRestorePoints(VirtualMachine vm) {
         final Long zoneId = vm.getDataCenterId();
         final ArrayList<String> backupIds = 
getClient(zoneId).getBackupsForVm(vm);
-        List<Backup.RestorePoint> restorePoints =
-            backupIds.stream().map(id -> new Backup.RestorePoint(id, null, 
null)).collect(Collectors.toList());
-        return restorePoints;
+        return backupIds.stream().map(id -> new Backup.RestorePoint(id, null, 
null)).collect(Collectors.toList());
     }
 
     @Override
diff --git 
a/plugins/backup/veeam/src/main/java/org/apache/cloudstack/backup/VeeamBackupProvider.java
 
b/plugins/backup/veeam/src/main/java/org/apache/cloudstack/backup/VeeamBackupProvider.java
index a7ce0c09cc6..0a013587f6f 100644
--- 
a/plugins/backup/veeam/src/main/java/org/apache/cloudstack/backup/VeeamBackupProvider.java
+++ 
b/plugins/backup/veeam/src/main/java/org/apache/cloudstack/backup/VeeamBackupProvider.java
@@ -46,7 +46,6 @@ import com.cloud.hypervisor.vmware.VmwareDatacenterZoneMap;
 import com.cloud.dc.dao.VmwareDatacenterDao;
 import com.cloud.hypervisor.vmware.dao.VmwareDatacenterZoneMapDao;
 import com.cloud.storage.dao.VolumeDao;
-import com.cloud.user.User;
 import com.cloud.utils.Pair;
 import com.cloud.utils.component.AdapterBase;
 import com.cloud.utils.exception.CloudRuntimeException;
@@ -334,6 +333,7 @@ public class VeeamBackupProvider extends AdapterBase 
implements BackupProvider,
         backup.setAccountId(vm.getAccountId());
         backup.setDomainId(vm.getDomainId());
         backup.setZoneId(vm.getDataCenterId());
+        
backup.setBackedUpVolumes(BackupManagerImpl.createVolumeInfoFromVolumes(volumeDao.findByInstance(vm.getId())));
         backupDao.persist(backup);
         return backup;
     }
@@ -344,59 +344,6 @@ public class VeeamBackupProvider extends AdapterBase 
implements BackupProvider,
         return getClient(vm.getDataCenterId()).listRestorePoints(backupName, 
vm.getInstanceName());
     }
 
-    @Override
-    public void syncBackups(VirtualMachine vm, Backup.Metric metric) {
-        List<Backup.RestorePoint> restorePoints = listRestorePoints(vm);
-        if (CollectionUtils.isEmpty(restorePoints)) {
-            logger.debug("Can't find any restore point to VM: {}", vm);
-            return;
-        }
-        Transaction.execute(new TransactionCallbackNoReturn() {
-            @Override
-            public void doInTransactionWithoutResult(TransactionStatus status) 
{
-                final List<Backup> backupsInDb = backupDao.listByVmId(null, 
vm.getId());
-                final List<Long> removeList = 
backupsInDb.stream().map(InternalIdentity::getId).collect(Collectors.toList());
-                for (final Backup.RestorePoint restorePoint : restorePoints) {
-                    if (!(restorePoint.getId() == null || 
restorePoint.getType() == null || restorePoint.getCreated() == null)) {
-                        Backup existingBackupEntry = 
checkAndUpdateIfBackupEntryExistsForRestorePoint(backupsInDb, restorePoint, 
metric);
-                        if (existingBackupEntry != null) {
-                            removeList.remove(existingBackupEntry.getId());
-                            continue;
-                        }
-
-                        BackupVO backup = new BackupVO();
-                        backup.setVmId(vm.getId());
-                        backup.setExternalId(restorePoint.getId());
-                        backup.setType(restorePoint.getType());
-                        backup.setDate(restorePoint.getCreated());
-                        backup.setStatus(Backup.Status.BackedUp);
-                        if (metric != null) {
-                            backup.setSize(metric.getBackupSize());
-                            backup.setProtectedSize(metric.getDataSize());
-                        }
-                        backup.setBackupOfferingId(vm.getBackupOfferingId());
-                        backup.setAccountId(vm.getAccountId());
-                        backup.setDomainId(vm.getDomainId());
-                        backup.setZoneId(vm.getDataCenterId());
-                        
backup.setBackedUpVolumes(BackupManagerImpl.createVolumeInfoFromVolumes(volumeDao.findByInstance(vm.getId())));
-
-                        logger.debug("Creating a new entry in backups: [id: 
{}, uuid: {}, name: {}, vm_id: {}, external_id: {}, type: {}, date: {}, 
backup_offering_id: {}, account_id: {}, "
-                                + "domain_id: {}, zone_id: {}].", 
backup.getId(), backup.getUuid(), backup.getName(), backup.getVmId(), 
backup.getExternalId(), backup.getType(), backup.getDate(), 
backup.getBackupOfferingId(), backup.getAccountId(), backup.getDomainId(), 
backup.getZoneId());
-                        backupDao.persist(backup);
-
-                        
ActionEventUtils.onCompletedActionEvent(User.UID_SYSTEM, vm.getAccountId(), 
EventVO.LEVEL_INFO, EventTypes.EVENT_VM_BACKUP_CREATE,
-                                String.format("Created backup %s for VM ID: 
%s", backup.getUuid(), vm.getUuid()),
-                                vm.getId(), 
ApiCommandResourceType.VirtualMachine.toString(),0);
-                    }
-                }
-                for (final Long backupIdToRemove : removeList) {
-                    logger.warn(String.format("Removing backup with ID: 
[%s].", backupIdToRemove));
-                    backupDao.remove(backupIdToRemove);
-                }
-            }
-        });
-    }
-
     @Override
     public String getConfigComponentName() {
         return BackupService.class.getSimpleName();

Reply via email to