@Override public void success() { DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); reply.setFormat(msg.getImage().getFormat()); reply.setInstallPath(installPath); completion.success(reply); }
@Override public void success() { DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); reply.setFormat(msg.getImage().getFormat()); reply.setInstallPath(installPath); completion.success(reply); }
@Override protected void handle(final DownloadDataVolumeToPrimaryStorageMsg msg) { HypervisorType type = VolumeFormat.getMasterHypervisorTypeByVolumeFormat(msg.getImage().getFormat()); HypervisorFactory f = getHypervisorFactoryByHypervisorType(type.toString()); HypervisorBackend bkd = f.getHypervisorBackend(self); bkd.handle(msg, new ReturnValueCompletion<DownloadDataVolumeToPrimaryStorageReply>(msg) { @Override public void success(DownloadDataVolumeToPrimaryStorageReply reply) { bus.reply(msg, reply); } @Override public void fail(ErrorCode errorCode) { DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); reply.setError(errorCode); bus.reply(msg, reply); } }); }
@Override protected void handle(final DownloadDataVolumeToPrimaryStorageMsg msg) { final DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); BackupStorageMediator mediator = getBackupStorageMediator(msg.getBackupStorageRef().getBackupStorageUuid()); ImageSpec spec = new ImageSpec(); spec.setInventory(msg.getImage()); spec.setSelectedBackupStorage(msg.getBackupStorageRef()); DownloadParam param = new DownloadParam(); param.image = spec; param.installPath = makeDataVolumeInstallPath(msg.getVolumeUuid()); mediator.param = param; mediator.download(new ReturnValueCompletion<String>(msg) { @Override public void success(String returnValue) { reply.setInstallPath(returnValue); reply.setFormat(VolumeConstant.VOLUME_FORMAT_RAW); bus.reply(msg, reply); } @Override public void fail(ErrorCode errorCode) { reply.setError(errorCode); bus.reply(msg, reply); } }); }
DownloadDataVolumeToPrimaryStorageReply reply; long requiredSize = ratioMgr.calculateByRatio(self.getUuid(), msg.getImage().getSize());
@Override protected void handle(final DownloadDataVolumeToPrimaryStorageMsg msg) { final DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); BackupStorageMediator mediator = getBackupStorageMediator(msg.getBackupStorageRef().getBackupStorageUuid()); ImageSpec spec = new ImageSpec(); spec.setInventory(msg.getImage()); spec.setSelectedBackupStorage(msg.getBackupStorageRef()); MediatorDowloadParam param = new MediatorDowloadParam(); param.setImage(spec); param.setInstallPath(makeDataVolumeInstallPath(msg.getVolumeUuid())); param.setPrimaryStorageUuid(self.getUuid()); mediator.param = param; mediator.download(new ReturnValueCompletion<String>(msg) { @Override public void success(String returnValue) { reply.setInstallPath(returnValue); reply.setFormat(VolumeConstant.VOLUME_FORMAT_RAW); bus.reply(msg, reply); } @Override public void fail(ErrorCode errorCode) { reply.setError(errorCode); bus.reply(msg, reply); } }); }
@Override protected void handle(final DownloadDataVolumeToPrimaryStorageMsg msg) { final DownloadDataVolumeToPrimaryStorageReply reply = new DownloadDataVolumeToPrimaryStorageReply(); final String installPath = PathUtil.join(self.getMountPath(), PrimaryStoragePathMaker.makeDataVolumeInstallPath(msg.getVolumeUuid())); BackupStorageVO bsvo = dbf.findByUuid(msg.getBackupStorageRef().getBackupStorageUuid(), BackupStorageVO.class); NfsPrimaryToBackupStorageMediator mediator = factory.getPrimaryToBackupStorageMediator( BackupStorageType.valueOf(bsvo.getType()), nfsMgr.findHypervisorTypeByImageFormatAndPrimaryStorageUuid(msg.getImage().getFormat(), self.getUuid()) ); mediator.downloadBits(getSelfInventory(), BackupStorageInventory.valueOf(bsvo), msg.getBackupStorageRef().getInstallPath(), installPath, new Completion(msg) { @Override public void success() { reply.setInstallPath(installPath); bus.reply(msg, reply); } @Override public void fail(ErrorCode errorCode) { reply.setError(errorCode); bus.reply(msg, reply); } }); }