@Override public void afterAddBackupStorage(AddBackupStorageStruct backupStorage) { String backupStorageType = backupStorage.getBackupStorageInventory().getType(); if (!( backupStorageType.equals(SftpBackupStorageConstant.SFTP_BACKUP_STORAGE_TYPE) && backupStorage.isImportImages())) { return; SftpBackupStorageInventory inv = (SftpBackupStorageInventory) backupStorage.getBackupStorageInventory(); logger.debug("starting to import images metadata"); SftpBackupStorageCommands.GetImagesMetaDataCmd cmd = new SftpBackupStorageCommands.GetImagesMetaDataCmd();
@Override public void afterAddBackupStorage(AddBackupStorageStruct backupStorage) { logger.debug("starting to import ceph images metadata"); if (!(backupStorage.getType().equals(CephConstants.CEPH_BACKUP_STORAGE_TYPE) && backupStorage.isImportImages())) { logger.debug("will not to import ceph images metadata due to importImages didn't set or bs type is not ceph"); return; } String backupStorageUuid = backupStorage.getBackupStorageInventory().getUuid(); SimpleQuery<CephBackupStorageVO> query = dbf.createQuery(CephBackupStorageVO.class); query.add(CephBackupStorageVO_.uuid, SimpleQuery.Op.EQ, backupStorageUuid); CephBackupStorageVO cephBackupStorageVO = query.find(); CephBackupStorageInventory inv = CephBackupStorageInventory.valueOf(cephBackupStorageVO); BakeImageMetadataMsg msg = new BakeImageMetadataMsg(); msg.setBackupStorageUuid(backupStorageUuid); msg.setOperation(CephConstants.AFTER_ADD_BACKUPSTORAGE); msg.setPoolName(inv.getPoolName()); bus.makeLocalServiceId(msg, BackupStorageConstant.SERVICE_ID); bus.send(msg, new CloudBusCallBack(msg) { @Override public void run(MessageReply reply) { if (reply.isSuccess()) { logger.debug("import ceph backup storage images info successfully"); } else { logger.debug("import ceph backup storage images info failed"); reply.setError(reply.getError()); } bus.reply(msg, reply); } }); }
AddBackupStorageStruct addBackupStoragestruct = new AddBackupStorageStruct(); if(msg.isImportImages()) { addBackupStoragestruct.setImportImages(true); addBackupStoragestruct.setBackupStorageInventory(inv); addBackupStoragestruct.setType(vo.getType());
@Override public void success(SftpBackupStorageCommands.GetImagesMetaDataRsp rsp) { if (!rsp.isSuccess()) { logger.error(String.format("get images metadata: %s failed", rsp.getImagesMetaData())); } else { logger.info(String.format("get images metadata: %s success", rsp.getImagesMetaData())); restoreImagesBackupStorageMetadataToDatabase(rsp.getImagesMetaData(), backupStorage.getBackupStorageInventory().getUuid()); } }