Arik Hadas has uploaded a new change for review. Change subject: webadmin: reduce duplicated code ......................................................................
webadmin: reduce duplicated code Change-Id: If8f420419b2a0b5789e0337450fc3c5576bb2d8f Signed-off-by: Arik Hadas <[email protected]> --- M backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVmParameters.java M frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java 2 files changed, 38 insertions(+), 84 deletions(-) git pull ssh://gerrit.ovirt.org:29418/ovirt-engine refs/changes/43/32643/1 diff --git a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVmParameters.java b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVmParameters.java index ad777a6..be69ccf 100644 --- a/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVmParameters.java +++ b/backend/manager/modules/common/src/main/java/org/ovirt/engine/core/common/action/AddVmParameters.java @@ -10,6 +10,7 @@ private static final long serialVersionUID = 8641610721114989096L; private ArrayList<DiskImage> diskInfoList; + private boolean thinProvisioning; public AddVmParameters() { } @@ -29,4 +30,12 @@ public void setDiskInfoList(ArrayList<DiskImage> value) { diskInfoList = value; } + + public boolean isThinProvisioning() { + return thinProvisioning; + } + + public void setThinProvisioning(boolean cloneDisks) { + this.thinProvisioning = cloneDisks; + } } diff --git a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java index 1643aea..6359f71 100644 --- a/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java +++ b/frontend/webadmin/modules/uicommonweb/src/main/java/org/ovirt/engine/ui/uicommonweb/models/vms/VmListModel.java @@ -2124,13 +2124,33 @@ } private void saveNewVm(final UnitVmModel model) { + if (model.getProgress() != null) + { + return; + } + + model.startProgress(null); + + VM vm = getcurrentVm(); + vm.setUseLatestVersion(constants.latestTemplateVersionName().equals(model.getTemplate().getSelectedItem().getTemplateVersionName())); + + AddVmParameters params = new AddVmParameters(vm); + params.setDiskInfoDestinationMap(model.getDisksAllocationModel().getImageToDestinationDomainMap()); + params.setThinProvisioning(model.getProvisioning().getEntity()); + params.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity()); + params.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity()); + params.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity()); + params.setBalloonEnabled(balloonEnabled(model)); + params.setCopyTemplatePermissions(model.getCopyPermissions().getEntity()); + setRngDeviceToParams(model, params); + setVmWatchdogToParams(model, params); //TODO: verify + + Frontend.getInstance().runAction(VdcActionType.AddVm, params, getUnitVmModelNetworkAsyncCallback(model), this); + } + + private UnitVmModelNetworkAsyncCallback getUnitVmModelNetworkAsyncCallback(final UnitVmModel model) { if (getcurrentVm().getVmtGuid().equals(Guid.Empty)) { - if (model.getProgress() != null) - { - return; - } - VmInterfaceCreatingManager addVmFromScratchNetworkManager = new VmInterfaceCreatingManager(new VmInterfaceCreatingManager.PostVnicCreatedCallback() { @Override @@ -2144,20 +2164,7 @@ } }); - model.startProgress(null); - - AddVmParameters parameters = new AddVmParameters(getcurrentVm()); - parameters.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity()); - parameters.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity()); - parameters.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity()); - parameters.setBalloonEnabled(balloonEnabled(model)); - - setVmWatchdogToParams(model, parameters); - setRngDeviceToParams(model, parameters); - - Frontend.getInstance().runAction(VdcActionType.AddVmFromScratch, - parameters, - new UnitVmModelNetworkAsyncCallback(model, addVmFromScratchNetworkManager) { + return new UnitVmModelNetworkAsyncCallback(model, addVmFromScratchNetworkManager) { @Override public void executed(FrontendActionAsyncResult result) { getWindow().stopProgress(); @@ -2172,72 +2179,10 @@ } super.executed(result); } - }, this); + }; } - else - { - if (model.getProgress() != null) - { - return; - } - - if (model.getProvisioning().getEntity()) - { - model.startProgress(null); - - AsyncQuery _asyncQuery = new AsyncQuery(); - _asyncQuery.setModel(this); - _asyncQuery.asyncCallback = new INewAsyncCallback() { - @Override - public void onSuccess(Object model1, Object result1) - { - VmListModel vmListModel = (VmListModel) model1; - UnitVmModel unitVmModel = (UnitVmModel) vmListModel.getWindow(); - - VM vm = vmListModel.getcurrentVm(); - vm.setUseLatestVersion(constants.latestTemplateVersionName().equals(unitVmModel.getTemplate().getSelectedItem().getTemplateVersionName())); - - AddVmParameters param = new AddVmParameters(vm); - param.setDiskInfoDestinationMap(unitVmModel.getDisksAllocationModel().getImageToDestinationDomainMap()); - param.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity()); - param.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity()); - param.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity()); - param.setBalloonEnabled(balloonEnabled(model)); - param.setCopyTemplatePermissions(model.getCopyPermissions().getEntity()); - setRngDeviceToParams(model, param); - - Frontend.getInstance().runAction(VdcActionType.AddVmFromTemplate, param, new UnitVmModelNetworkAsyncCallback(model, defaultNetworkCreatingManager), vmListModel); - } - }; - AsyncDataProvider.getInstance().getTemplateDiskList(_asyncQuery, getcurrentVm().getVmtGuid()); - } - else - { - if (model.getProgress() != null) - { - return; - } - - model.startProgress(null); - - VM vm = getcurrentVm(); - vm.setUseLatestVersion(constants.latestTemplateVersionName().equals(model.getTemplate().getSelectedItem().getTemplateVersionName())); - - AddVmParameters params = new AddVmParameters(vm); - params.setDiskInfoDestinationMap(model.getDisksAllocationModel().getImageToDestinationDomainMap()); - params.setConsoleEnabled(model.getIsConsoleDeviceEnabled().getEntity()); - params.setBalloonEnabled(balloonEnabled(model)); - params.setCopyTemplatePermissions(model.getCopyPermissions().getEntity()); - - ArrayList<VdcActionParametersBase> parameters = new ArrayList<VdcActionParametersBase>(); - parameters.add(params); - params.setSoundDeviceEnabled(model.getIsSoundcardEnabled().getEntity()); - params.setVirtioScsiEnabled(model.getIsVirtioScsiEnabled().getEntity()); - setVmWatchdogToParams(model, params); - setRngDeviceToParams(model, params); - - Frontend.getInstance().runAction(VdcActionType.AddVm, params, new UnitVmModelNetworkAsyncCallback(model, defaultNetworkCreatingManager), this); - } + else { + return new UnitVmModelNetworkAsyncCallback(model, defaultNetworkCreatingManager); } } -- To view, visit http://gerrit.ovirt.org/32643 To unsubscribe, visit http://gerrit.ovirt.org/settings Gerrit-MessageType: newchange Gerrit-Change-Id: If8f420419b2a0b5789e0337450fc3c5576bb2d8f Gerrit-PatchSet: 1 Gerrit-Project: ovirt-engine Gerrit-Branch: master Gerrit-Owner: Arik Hadas <[email protected]> _______________________________________________ Engine-patches mailing list [email protected] http://lists.ovirt.org/mailman/listinfo/engine-patches
