Skip to content

Commit

Permalink
Use InstanceTypeManager instead of behaviors
Browse files Browse the repository at this point in the history
Change-Id: Iddb4d5b0b5ceb18daf2b735317abc835563b5ee6
Signed-off-by: Shmuel Melamud <smelamud@redhat.com>
  • Loading branch information
smelamud authored and ahadas committed May 31, 2022
1 parent 035158b commit fb934e4
Show file tree
Hide file tree
Showing 3 changed files with 14 additions and 22 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,6 @@
import org.ovirt.engine.ui.uicommonweb.builders.vm.CoreVmBaseToUnitBuilder;
import org.ovirt.engine.ui.uicommonweb.builders.vm.MultiQueuesVmBaseToUnitBuilder;
import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
import org.ovirt.engine.ui.uicommonweb.models.VirtioMultiQueueType;
import org.ovirt.engine.ui.uicommonweb.models.templates.TemplateWithVersion;
import org.ovirt.engine.ui.uicommonweb.models.vms.instancetypes.InstanceTypeManager;
import org.ovirt.engine.ui.uicommonweb.models.vms.instancetypes.NewVmInstanceTypeManager;
Expand Down Expand Up @@ -206,16 +205,6 @@ private void selectedTemplateChanged(final VmTemplate template) {
isoPath = template.getIsoPath();
// Random Generator
updateRngDevice(template.getId());
// VirtIO SCSI
int queues = template.getVirtioScsiMultiQueues();
if (queues == -1) {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.AUTOMATIC);
} else if (queues == 0) {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.DISABLED);
} else {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.CUSTOM);
getModel().getNumOfVirtioScsiMultiQueues().setEntity(queues);
}

// A workaround for setting the current saved CustomCompatibilityVersion value after
// it was reset by getTemplateWithVersion event
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,6 @@
import org.ovirt.engine.ui.uicommonweb.builders.vm.MultiQueuesVmBaseToUnitBuilder;
import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
import org.ovirt.engine.ui.uicommonweb.models.TabName;
import org.ovirt.engine.ui.uicommonweb.models.VirtioMultiQueueType;
import org.ovirt.engine.ui.uicommonweb.models.pools.PoolModel;
import org.ovirt.engine.ui.uicommonweb.validation.HostWithProtocolAndPortAddressValidation;
import org.ovirt.engine.ui.uicommonweb.validation.IValidation;
Expand Down Expand Up @@ -163,16 +162,6 @@ protected void setupWindowModelFrom(final VmBase vmBase) {
boolean hasCd = !StringHelper.isNullOrEmpty(vmBase.getIsoPath());
getModel().getCdImage().setIsChangeable(hasCd);
getModel().getCdAttached().setEntity(hasCd);
// VirtIO SCSI
int queues = vmBase.getVirtioScsiMultiQueues();
if (queues == -1) {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.AUTOMATIC);
} else if (queues == 0) {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.DISABLED);
} else {
getModel().getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.CUSTOM);
getModel().getNumOfVirtioScsiMultiQueues().setEntity(queues);
}

// A workaround for setting the current saved CustomCompatibilityVersion value after
// it was reset by getTemplateWithVersion event
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -34,6 +34,7 @@
import org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider;
import org.ovirt.engine.ui.uicommonweb.models.EntityModel;
import org.ovirt.engine.ui.uicommonweb.models.ListModel;
import org.ovirt.engine.ui.uicommonweb.models.VirtioMultiQueueType;
import org.ovirt.engine.ui.uicommonweb.models.vms.CustomInstanceType;
import org.ovirt.engine.ui.uicommonweb.models.vms.PriorityUtil;
import org.ovirt.engine.ui.uicommonweb.models.vms.UnitVmModel;
Expand Down Expand Up @@ -294,6 +295,8 @@ public void afterUpdates() {
model.getMinAllocatedMemory().setEntity(vmBase.getMinAllocatedMem());
}

updateVirtioScsiMultiQueues(vmBase);

activate();

AsyncDataProvider.getInstance().isSoundcardEnabled(new AsyncQuery<>(returnValue -> {
Expand Down Expand Up @@ -500,6 +503,17 @@ protected void updateDefaultDisplayRelatedFields(final VmBase vmBase) {
}));
}

protected void updateVirtioScsiMultiQueues(final VmBase vmBase) {
int queues = vmBase.getVirtioScsiMultiQueues();
if (queues == -1) {
model.getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.AUTOMATIC);
} else if (queues == 0) {
model.getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.DISABLED);
} else {
model.getVirtioScsiMultiQueueTypeSelection().setSelectedItem(VirtioMultiQueueType.CUSTOM);
model.getNumOfVirtioScsiMultiQueues().setEntity(queues);
}
}

protected <T> void maybeSetSelectedItem(ListModel<T> entityModel, T value) {
if (alwaysEnabledFieldUpdate || entityModel != null && entityModel.getIsChangable() && entityModel.getIsAvailable()) {
Expand Down

0 comments on commit fb934e4

Please sign in to comment.