Search in sources :

Example 1 with RegisterVmData

use of org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData in project ovirt-engine by oVirt.

the class RegisterVmModel method prepareParameters.

private List<ActionParametersBase> prepareParameters() {
    ArrayList<ActionParametersBase> parameters = new ArrayList<>();
    for (RegisterVmData registerVmData : getEntities().getItems()) {
        VM vm = registerVmData.getEntity();
        Cluster cluster = registerVmData.getCluster().getSelectedItem();
        ImportVmFromConfParameters params = new ImportVmFromConfParameters(cloneExternalVnicProfiles(cluster), registerVmData.getReassignMacs().getEntity());
        params.setContainerId(vm.getId());
        params.setStorageDomainId(getStorageDomainId());
        params.setImagesExistOnTargetStorageDomain(true);
        params.setClusterId(cluster != null ? cluster.getId() : null);
        params.setAllowPartialImport(registerVmData.getAllowPartialImport().getEntity());
        if (isQuotaEnabled()) {
            Quota quota = registerVmData.getClusterQuota().getSelectedItem();
            params.setQuotaId(quota != null ? quota.getId() : null);
            params.setDiskMap(vm.getDiskMap());
            updateDiskQuotas(new ArrayList<>(params.getDiskMap().values()));
        }
        parameters.add(params);
    }
    return parameters;
}
Also used : Quota(org.ovirt.engine.core.common.businessentities.Quota) RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) VM(org.ovirt.engine.core.common.businessentities.VM) ArrayList(java.util.ArrayList) Cluster(org.ovirt.engine.core.common.businessentities.Cluster) ImportVmFromConfParameters(org.ovirt.engine.core.common.action.ImportVmFromConfParameters) ActionParametersBase(org.ovirt.engine.core.common.action.ActionParametersBase)

Example 2 with RegisterVmData

use of org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData in project ovirt-engine by oVirt.

the class RegisterVmModel method mapVmsByTargetClusterId.

private Map<Guid, List<VM>> mapVmsByTargetClusterId(Collection<RegisterVmData> vms) {
    final Map<Guid, List<VM>> result = new HashMap<>();
    for (RegisterVmData vmData : vms) {
        final Guid clusterId = vmData.getCluster().getSelectedItem().getId();
        final List<VM> clusterVms;
        if (result.containsKey(clusterId)) {
            clusterVms = result.get(clusterId);
        } else {
            clusterVms = new ArrayList<>();
            result.put(clusterId, clusterVms);
        }
        clusterVms.add(vmData.getVm());
    }
    return result;
}
Also used : HashMap(java.util.HashMap) RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) VM(org.ovirt.engine.core.common.businessentities.VM) ArrayList(java.util.ArrayList) List(java.util.List) Guid(org.ovirt.engine.core.compat.Guid)

Example 3 with RegisterVmData

use of org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData in project ovirt-engine by oVirt.

the class RegisterVmModel method processVmMacsValidationResult.

private void processVmMacsValidationResult(Collection<RegisterVmData> vmsToBeValidated, Map<Guid, List<List<String>>> validationResult) {
    for (RegisterVmData vmData : vmsToBeValidated) {
        final List<List<String>> vmMessages = validationResult.get(vmData.getVm().getId());
        if (vmMessages == null) {
            continue;
        }
        final String translatedMessage = translateMessages(vmMessages);
        updateVmWithMacsValidationResult(vmData, translatedMessage);
    }
}
Also used : RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) ArrayList(java.util.ArrayList) List(java.util.List)

Example 4 with RegisterVmData

use of org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData in project ovirt-engine by oVirt.

the class RegisterVmPopupView method createEntityTable.

@Override
protected void createEntityTable(RegisterVmModel model) {
    entityTable.addColumn(new AbstractImageResourceColumn<RegisterVmData>() {

        @Override
        public ImageResource getValue(RegisterVmData registerVmData) {
            if (registerVmData.getError() != null) {
                return resources.errorImage();
            }
            if (registerVmData.getWarning() != null) {
                return resources.alertImage();
            }
            return null;
        }

        @Override
        public SafeHtml getTooltip(RegisterVmData registerVmData) {
            String problem;
            if (registerVmData.getError() != null) {
                problem = registerVmData.getError();
            } else {
                problem = registerVmData.getWarning();
            }
            return problem == null ? null : new SafeHtmlBuilder().appendEscapedLines(problem).toSafeHtml();
        }
    }, constants.empty(), // $NON-NLS-1$
    "20px");
    AbstractTextColumn<RegisterVmData> nameColumn = new AbstractTextColumn<RegisterVmData>() {

        @Override
        public String getValue(RegisterVmData registerVmData) {
            return registerVmData.getVm().getName();
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(nameColumn, constants.nameVm(), "150px");
    AbstractTextColumn<RegisterVmData> originColumn = new AbstractEnumColumn<RegisterVmData, OriginType>() {

        @Override
        protected OriginType getRawValue(RegisterVmData registerVmData) {
            return registerVmData.getVm().getOrigin();
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(originColumn, constants.originVm(), "100px");
    AbstractTextColumn<RegisterVmData> memoryColumn = new AbstractTextColumn<RegisterVmData>() {

        @Override
        public String getValue(RegisterVmData registerVmData) {
            int size = registerVmData.getVm().getVmMemSizeMb();
            return messages.megabytes(String.valueOf(size));
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(memoryColumn, constants.memoryVm(), "100px");
    AbstractTextColumn<RegisterVmData> cpuColumn = new AbstractTextColumn<RegisterVmData>() {

        @Override
        public String getValue(RegisterVmData registerVmData) {
            int numOfCpus = registerVmData.getVm().getNumOfCpus();
            return String.valueOf(numOfCpus);
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(cpuColumn, constants.cpusVm(), "50px");
    AbstractTextColumn<RegisterVmData> archColumn = new AbstractTextColumn<RegisterVmData>() {

        @Override
        public String getValue(RegisterVmData registerVmData) {
            ArchitectureType clusterArch = registerVmData.getVm().getClusterArch();
            return String.valueOf(clusterArch);
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(archColumn, constants.architectureVm(), "100px");
    AbstractTextColumn<RegisterVmData> diskColumn = new AbstractTextColumn<RegisterVmData>() {

        @Override
        public String getValue(RegisterVmData registerVmData) {
            int numOfDisks = registerVmData.getVm().getDiskMap().size();
            return String.valueOf(numOfDisks);
        }
    };
    // $NON-NLS-1$
    entityTable.addColumn(diskColumn, constants.disksVm(), "50px");
    // $NON-NLS-1$
    entityTable.addColumn(creatReassignMacsColumn(), new ReassignBadMacsHeader(), "150px");
    // $NON-NLS-1$
    entityTable.addColumn(createAllowPartialColumn(), constants.allowPartial(), "95px");
    // $NON-NLS-1$
    entityTable.addColumn(getClusterColumn(), constants.clusterVm(), "150px");
    if (model.isQuotaEnabled()) {
        // $NON-NLS-1$
        entityTable.addColumn(getClusterQuotaColumn(), constants.quotaVm(), "150px");
    }
}
Also used : ArchitectureType(org.ovirt.engine.core.common.businessentities.ArchitectureType) RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) SafeHtml(com.google.gwt.safehtml.shared.SafeHtml) SafeHtmlBuilder(com.google.gwt.safehtml.shared.SafeHtmlBuilder) AbstractEnumColumn(org.ovirt.engine.ui.common.widget.table.column.AbstractEnumColumn) ImageResource(com.google.gwt.resources.client.ImageResource) AbstractTextColumn(org.ovirt.engine.ui.common.widget.table.column.AbstractTextColumn)

Example 5 with RegisterVmData

use of org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData in project ovirt-engine by oVirt.

the class RegisterVmModel method postClustersInit.

private void postClustersInit() {
    validateAllMacs();
    for (final RegisterVmData registerVmData : getEntities().getItems()) {
        final IEventListener<EventArgs> validateMacsListener = (ev, sender, args) -> validateVmMacs(Collections.singletonList(registerVmData));
        registerVmData.getReassignMacs().getEntityChangedEvent().addListener(validateMacsListener);
        registerVmData.getCluster().getSelectedItemChangedEvent().addListener(validateMacsListener);
    }
}
Also used : ImportVmFromConfParameters(org.ovirt.engine.core.common.action.ImportVmFromConfParameters) VmNetworkInterface(org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface) Predicate(java.util.function.Predicate) Guid(org.ovirt.engine.core.compat.Guid) Collection(java.util.Collection) IEventListener(org.ovirt.engine.ui.uicompat.IEventListener) HashMap(java.util.HashMap) ActionParametersBase(org.ovirt.engine.core.common.action.ActionParametersBase) Quota(org.ovirt.engine.core.common.businessentities.Quota) ArrayList(java.util.ArrayList) ActionType(org.ovirt.engine.core.common.action.ActionType) Frontend(org.ovirt.engine.ui.frontend.Frontend) List(java.util.List) VM(org.ovirt.engine.core.common.businessentities.VM) Cluster(org.ovirt.engine.core.common.businessentities.Cluster) Map(java.util.Map) ErrorTranslator(org.ovirt.engine.ui.frontend.ErrorTranslator) Linq.where(org.ovirt.engine.ui.uicommonweb.Linq.where) EventArgs(org.ovirt.engine.ui.uicompat.EventArgs) Collections(java.util.Collections) AsyncDataProvider(org.ovirt.engine.ui.uicommonweb.dataprovider.AsyncDataProvider) RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) RegisterVmData(org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData) EventArgs(org.ovirt.engine.ui.uicompat.EventArgs)

Aggregations

RegisterVmData (org.ovirt.engine.ui.uicommonweb.models.vms.register.RegisterVmData)5 ArrayList (java.util.ArrayList)4 List (java.util.List)3 VM (org.ovirt.engine.core.common.businessentities.VM)3 HashMap (java.util.HashMap)2 ActionParametersBase (org.ovirt.engine.core.common.action.ActionParametersBase)2 ImportVmFromConfParameters (org.ovirt.engine.core.common.action.ImportVmFromConfParameters)2 Cluster (org.ovirt.engine.core.common.businessentities.Cluster)2 Quota (org.ovirt.engine.core.common.businessentities.Quota)2 Guid (org.ovirt.engine.core.compat.Guid)2 ImageResource (com.google.gwt.resources.client.ImageResource)1 SafeHtml (com.google.gwt.safehtml.shared.SafeHtml)1 SafeHtmlBuilder (com.google.gwt.safehtml.shared.SafeHtmlBuilder)1 Collection (java.util.Collection)1 Collections (java.util.Collections)1 Map (java.util.Map)1 Predicate (java.util.function.Predicate)1 ActionType (org.ovirt.engine.core.common.action.ActionType)1 ArchitectureType (org.ovirt.engine.core.common.businessentities.ArchitectureType)1 VmNetworkInterface (org.ovirt.engine.core.common.businessentities.network.VmNetworkInterface)1