Search in sources :

Example 1 with HostModel

use of org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel in project ovirt-engine by oVirt.

the class ClusterGuideModel method onConfirmPMHost.

public void onConfirmPMHost() {
    HostModel model = (HostModel) getWindow();
    if (!model.validate()) {
        return;
    }
    if (!model.getIsPm().getEntity() && ApplicationModeHelper.getUiMode() != ApplicationMode.GlusterOnly) {
        ConfirmationModel confirmModel = new ConfirmationModel();
        setConfirmWindow(confirmModel);
        confirmModel.setTitle(ConstantsManager.getInstance().getConstants().powerManagementConfigurationTitle());
        confirmModel.setHelpTag(HelpTag.power_management_configuration);
        // $NON-NLS-1$
        confirmModel.setHashName("power_management_configuration");
        confirmModel.setMessage(ConstantsManager.getInstance().getConstants().youHavntConfigPmMsg());
        // $NON-NLS-1$
        UICommand tempVar = UICommand.createDefaultOkUiCommand("OnAddHost", this);
        confirmModel.getCommands().add(tempVar);
        // $NON-NLS-1$
        UICommand tempVar2 = UICommand.createCancelUiCommand("CancelConfirmWithFocus", this);
        confirmModel.getCommands().add(tempVar2);
    } else {
        onAddHost();
    }
}
Also used : HostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel) NewHostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.NewHostModel) UICommand(org.ovirt.engine.ui.uicommonweb.UICommand) ConfirmationModel(org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel)

Example 2 with HostModel

use of org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel in project ovirt-engine by oVirt.

the class ClusterGuideModel method cancelConfirmWithFocus.

public void cancelConfirmWithFocus() {
    setConfirmWindow(null);
    HostModel hostModel = (HostModel) getWindow();
    hostModel.setIsPowerManagementTabSelected(true);
}
Also used : HostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel) NewHostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.NewHostModel)

Example 3 with HostModel

use of org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel in project ovirt-engine by oVirt.

the class ClusterGuideModel method onAddHost.

public void onAddHost() {
    cancelConfirm();
    HostModel model = (HostModel) getWindow();
    if (model.getProgress() != null) {
        return;
    }
    if (!model.validate()) {
        return;
    }
    // Save changes.
    VDS host = new VDS();
    host.setVdsName(model.getName().getEntity());
    host.setHostName(model.getHost().getEntity());
    host.setPort(model.getPort().getEntity());
    host.setSshPort(model.getAuthSshPort().getEntity());
    host.setSshUsername(model.getUserName().getEntity());
    host.setSshKeyFingerprint(model.getFetchSshFingerprint().getEntity());
    host.setClusterId(model.getCluster().getSelectedItem().getId());
    host.setVdsSpmPriority(model.getSpmPriorityValue());
    // Save other PM parameters.
    host.setPmEnabled(model.getIsPm().getEntity());
    host.setDisablePowerManagementPolicy(model.getDisableAutomaticPowerManagement().getEntity());
    host.setPmKdumpDetection(model.getPmKdumpDetection().getEntity());
    AddVdsActionParameters vdsActionParams = new AddVdsActionParameters();
    vdsActionParams.setvds(host);
    vdsActionParams.setVdsId(host.getId());
    if (model.getUserPassword().getEntity() != null) {
        vdsActionParams.setPassword(model.getUserPassword().getEntity());
    }
    vdsActionParams.setAuthMethod(model.getAuthenticationMethod());
    vdsActionParams.setOverrideFirewall(model.getOverrideIpTables().getEntity());
    vdsActionParams.setFenceAgents(model.getFenceAgentListModel().getFenceAgents());
    model.startProgress();
    Frontend.getInstance().runAction(ActionType.AddVds, vdsActionParams, result -> {
        ClusterGuideModel localModel = (ClusterGuideModel) result.getState();
        localModel.postOnAddHost(result.getReturnValue());
    }, this);
}
Also used : HostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel) NewHostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.NewHostModel) VDS(org.ovirt.engine.core.common.businessentities.VDS) AddVdsActionParameters(org.ovirt.engine.core.common.action.hostdeploy.AddVdsActionParameters)

Example 4 with HostModel

use of org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel in project ovirt-engine by oVirt.

the class HostPopupView method edit.

@Override
public void edit(final HostModel object) {
    driver.edit(object);
    setTabIndexes(0);
    object.getFetchResult().getEntityChangedEvent().addListener((ev, sender, args) -> {
        String fetchResultText = object.getFetchResult().getEntity();
        if (ConstantsManager.getInstance().getConstants().errorLoadingFingerprint().equals(fetchResultText)) {
            fetchResult.addStyleName(style.fetchResultErrorLabel());
        } else {
            fetchResult.removeStyleName(style.fetchResultErrorLabel());
        }
        fetchResult.setText(fetchResultText);
    });
    object.getPkSection().getPropertyChangedEvent().addListener((ev, sender, args) -> {
        if ("IsAvailable".equals(args.propertyName)) {
            // $NON-NLS-1$
            setPkPasswordSectionVisiblity(false);
        }
    });
    object.getProviders().getSelectedItemChangedEvent().addListener((ev, sender, args) -> object.updateHosts());
    object.getExternalHostProviderEnabled().getEntityChangedEvent().addListener((ev, sender, args) -> {
        boolean showForemanProviders = object.getExternalHostProviderEnabled().getEntity();
        boolean doProvisioning = object.externalProvisionEnabled();
        boolean isProvisioned = showForemanProviders && doProvisioning;
        providersEditor.setVisible(showForemanProviders);
        // showing or hiding radio buttons
        provisionedHostSection.setVisible(isProvisioned);
        discoveredHostSection.setVisible(isProvisioned);
        // disabling ip and name textbox when using provisioned hosts
        hostAddressEditor.setEnabled(!isProvisioned);
        hostAddressLabel.setStyleName(OvirtCss.LABEL_DISABLED, isProvisioned);
        if (isProvisioned) {
            object.updateHosts();
            object.getIsDiscoveredHosts().setEntity(true);
        } else {
            if (doProvisioning) {
                object.cleanHostParametersFields();
            }
            hideProviderWidgets(object);
            object.getIsDiscoveredHosts().setEntity(null);
        }
    });
    object.getIsDiscoveredHosts().getEntityChangedEvent().addListener((ev, sender, args) -> {
        if (object.getIsDiscoveredHosts().getEntity() != null) {
            if (object.getIsDiscoveredHosts().getEntity()) {
                rbDiscoveredHost.asRadioButton().setValue(true);
                showDiscoveredHostsWidgets(true);
            } else if (!object.getIsDiscoveredHosts().getEntity()) {
                rbProvisionedHost.asRadioButton().setValue(true);
                showProvisionedHostsWidgets(true);
            }
        }
    });
    nameEditor.asValueBox().addKeyDownHandler(event -> Scheduler.get().scheduleDeferred(() -> {
        if (object.getExternalHostProviderEnabled().getEntity() && Boolean.TRUE.equals(object.getIsDiscoveredHosts().getEntity())) {
            ExternalHostGroup dhg = (ExternalHostGroup) object.getExternalHostGroups().getSelectedItem();
            if (dhg != null) {
                String base = nameEditor.asEditor().getSubEditor().getValue();
                if (base == null) {
                    base = constants.empty();
                }
                String generatedHostName = // $NON-NLS-1$
                base + "." + (dhg.getDomainName() != null ? dhg.getDomainName() : constants.empty());
                object.getHost().setEntity(generatedHostName);
            }
        }
    }));
    if (object.isPasswordSectionViewable()) {
        rbPassword.setValue(true);
        rbPassword.setFocus(true);
        fetchSshFingerprint.hideLabel();
        object.setAuthenticationMethod(AuthenticationMethod.Password);
        displayPassPkWindow(true);
        rbPassword.addClickHandler(event -> {
            object.setAuthenticationMethod(AuthenticationMethod.Password);
            displayPassPkWindow(true);
        });
        rbPublicKey.addClickHandler(event -> {
            object.setAuthenticationMethod(AuthenticationMethod.PublicKey);
            displayPassPkWindow(false);
        });
    } else {
        passwordSection.getElement().getStyle().setDisplay(Display.NONE);
        rbPublicKey.getElement().getStyle().setDisplay(Display.NONE);
        rbPublicKeyLabel.setStyleName(OvirtCss.LABEL_DISABLED);
        object.setAuthenticationMethod(AuthenticationMethod.PublicKey);
    }
    updateHostsButton.setResource(resources.searchButtonImage());
    // Create SPM related controls.
    IEventListener<EventArgs> spmListener = (ev, sender, args) -> createSpmControls(object);
    object.getSpmPriority().getItemsChangedEvent().addListener(spmListener);
    object.getSpmPriority().getSelectedItemChangedEvent().addListener(spmListener);
    createSpmControls(object);
    initExternalHostProviderWidgets(object.showExternalProviderPanel());
    // TODO: remove setIsChangeable when configured ssh username is enabled
    userNameEditor.setEnabled(false);
    networkProviderTab.setVisible(object.showNetworkProviderTab());
    networkProviderWidget.edit(object.getNetworkProviderModel());
    this.fenceAgentsEditor.edit(object.getFenceAgentListModel());
    this.proxySourceEditor.edit(object.getPmProxyPreferencesList());
    addTextAndLinkAlert(fetchPanel, constants.fetchingHostFingerprint(), object.getSSHFingerPrint());
    providerSearchFilterLabel.setText(constants.hostPopupProviderSearchFilter());
    nameEditor.setFocus(true);
    hostedEngineTab.setVisible(object.getIsHeSystem() && object.getIsNew());
    object.getHostedEngineWarning().getPropertyChangedEvent().addListener((ev, sender, args) -> {
        EntityModel entity = (EntityModel) sender;
        if ("IsAvailable".equals(args.propertyName)) {
            // $NON-NLS-1$
            hostedEngineWarningLabel.setVisible(entity.getIsAvailable());
        }
    });
    affinityLabelSelectionWidget.init(object.getLabelList());
}
Also used : Anchor(com.google.gwt.user.client.ui.Anchor) AssetProvider(org.ovirt.engine.ui.webadmin.gin.AssetProvider) Image(com.google.gwt.user.client.ui.Image) OvirtCss(org.ovirt.engine.ui.common.css.OvirtCss) Inject(com.google.inject.Inject) Container(org.gwtbootstrap3.client.ui.Container) Provider(org.ovirt.engine.core.common.businessentities.Provider) CommonApplicationMessages(org.ovirt.engine.ui.common.CommonApplicationMessages) ApplicationMode(org.ovirt.engine.core.common.mode.ApplicationMode) Column(org.gwtbootstrap3.client.ui.Column) EntityModel(org.ovirt.engine.ui.uicommonweb.models.EntityModel) StringEntityModelPasswordBoxEditor(org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelPasswordBoxEditor) UiBinder(com.google.gwt.uibinder.client.UiBinder) AuthenticationMethod(org.ovirt.engine.core.common.action.VdsOperationActionParameters.AuthenticationMethod) ExternalEntityBase(org.ovirt.engine.core.common.businessentities.ExternalEntityBase) StringEntityModelTextAreaLabelEditor(org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextAreaLabelEditor) HostNetworkProviderWidget(org.ovirt.engine.ui.webadmin.widget.provider.HostNetworkProviderWidget) FenceAgentsEditor(org.ovirt.engine.ui.webadmin.widget.host.FenceAgentsEditor) Label(com.google.gwt.user.client.ui.Label) RadioButton(com.google.gwt.user.client.ui.RadioButton) AbstractTabbedModelBoundPopupView(org.ovirt.engine.ui.common.view.popup.AbstractTabbedModelBoundPopupView) ConstantsManager(org.ovirt.engine.ui.uicompat.ConstantsManager) HostPopupPresenterWidget(org.ovirt.engine.ui.webadmin.section.main.presenter.popup.host.HostPopupPresenterWidget) EventArgs(org.ovirt.engine.ui.uicompat.EventArgs) InfoIcon(org.ovirt.engine.ui.common.widget.dialog.InfoIcon) OpenstackNetworkProviderProperties(org.ovirt.engine.core.common.businessentities.OpenstackNetworkProviderProperties) Display(com.google.gwt.dom.client.Style.Display) SimplePanel(com.google.gwt.user.client.ui.SimplePanel) EventBus(com.google.gwt.event.shared.EventBus) UICommand(org.ovirt.engine.ui.uicommonweb.UICommand) UiCommonEditorDriver(org.ovirt.engine.ui.common.editor.UiCommonEditorDriver) GroupedListModelListBox(org.ovirt.engine.ui.common.widget.editor.GroupedListModelListBox) WithElementId(org.ovirt.engine.ui.common.idhandler.WithElementId) ApplicationModeHelper(org.ovirt.engine.ui.uicommonweb.models.ApplicationModeHelper) HasClickHandlers(com.google.gwt.event.dom.client.HasClickHandlers) FlowPanel(com.google.gwt.user.client.ui.FlowPanel) Cluster(org.ovirt.engine.core.common.businessentities.Cluster) GroupedListModelListBoxEditor(org.ovirt.engine.ui.common.widget.editor.GroupedListModelListBoxEditor) CssResource(com.google.gwt.resources.client.CssResource) UiField(com.google.gwt.uibinder.client.UiField) Element(com.google.gwt.dom.client.Element) HostedEngineDeployConfiguration(org.ovirt.engine.core.common.businessentities.HostedEngineDeployConfiguration) AffinityLabelSelectionWithListWidget(org.ovirt.engine.ui.common.widget.AffinityLabelSelectionWithListWidget) DialogTabPanel(org.ovirt.engine.ui.common.widget.dialog.tab.DialogTabPanel) EnumRenderer(org.ovirt.engine.ui.common.widget.renderer.EnumRenderer) HostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel) ExternalHostGroup(org.ovirt.engine.core.common.businessentities.ExternalHostGroup) StringEntityModelTextBoxEditor(org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxEditor) IEventListener(org.ovirt.engine.ui.uicompat.IEventListener) StringEntityModelTextBoxOnlyEditor(org.ovirt.engine.ui.common.widget.editor.generic.StringEntityModelTextBoxOnlyEditor) Align(org.ovirt.engine.ui.common.widget.Align) GWT(com.google.gwt.core.client.GWT) TextDecoration(com.google.gwt.dom.client.Style.TextDecoration) Button(org.gwtbootstrap3.client.ui.Button) AdvancedParametersExpander(org.ovirt.engine.ui.common.widget.dialog.AdvancedParametersExpander) ListModelListBoxEditor(org.ovirt.engine.ui.common.widget.editor.ListModelListBoxEditor) EnableableFormLabel(org.ovirt.engine.ui.common.widget.label.EnableableFormLabel) ApplicationConstants(org.ovirt.engine.ui.webadmin.ApplicationConstants) ListModelTypeAheadListBoxEditor(org.ovirt.engine.ui.common.widget.editor.ListModelTypeAheadListBoxEditor) DialogTab(org.ovirt.engine.ui.common.widget.dialog.tab.DialogTab) ColumnSize(org.gwtbootstrap3.client.ui.constants.ColumnSize) EntityModelCheckBoxEditor(org.ovirt.engine.ui.common.widget.editor.generic.EntityModelCheckBoxEditor) SafeHtmlUtils(com.google.gwt.safehtml.shared.SafeHtmlUtils) ApplicationResources(org.ovirt.engine.ui.webadmin.ApplicationResources) ElementIdHandler(org.ovirt.engine.ui.common.idhandler.ElementIdHandler) EntityModelRadioButtonEditor(org.ovirt.engine.ui.common.widget.editor.generic.EntityModelRadioButtonEditor) NameRenderer(org.ovirt.engine.ui.common.widget.renderer.NameRenderer) IntegerEntityModelTextBoxEditor(org.ovirt.engine.ui.common.widget.editor.generic.IntegerEntityModelTextBoxEditor) ApplicationTemplates(org.ovirt.engine.ui.webadmin.ApplicationTemplates) Scheduler(com.google.gwt.core.client.Scheduler) SimpleDialogPanel(org.ovirt.engine.ui.common.widget.dialog.SimpleDialogPanel) Row(org.gwtbootstrap3.client.ui.Row) TabName(org.ovirt.engine.ui.uicommonweb.models.TabName) HostProxySourceEditor(org.ovirt.engine.ui.webadmin.widget.host.HostProxySourceEditor) Comparator(java.util.Comparator) VDS(org.ovirt.engine.core.common.businessentities.VDS) EntityModel(org.ovirt.engine.ui.uicommonweb.models.EntityModel) ExternalHostGroup(org.ovirt.engine.core.common.businessentities.ExternalHostGroup) EventArgs(org.ovirt.engine.ui.uicompat.EventArgs)

Example 5 with HostModel

use of org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel in project ovirt-engine by oVirt.

the class DataCenterGuideModel method onAddHost.

public void onAddHost() {
    cancelConfirm();
    HostModel model = (HostModel) getWindow();
    if (model.getProgress() != null) {
        return;
    }
    // Save changes.
    VDS host = new VDS();
    host.setVdsName(model.getName().getEntity());
    host.setHostName(model.getHost().getEntity());
    host.setPort(model.getPort().getEntity());
    host.setSshPort(model.getAuthSshPort().getEntity());
    host.setSshUsername(model.getUserName().getEntity());
    host.setSshKeyFingerprint(model.getFetchSshFingerprint().getEntity());
    host.setClusterId(model.getCluster().getSelectedItem().getId());
    host.setVdsSpmPriority(model.getSpmPriorityValue());
    // Save other PM parameters.
    host.setPmEnabled(model.getIsPm().getEntity());
    host.setDisablePowerManagementPolicy(model.getDisableAutomaticPowerManagement().getEntity());
    host.setPmKdumpDetection(model.getPmKdumpDetection().getEntity());
    AddVdsActionParameters addVdsParams = new AddVdsActionParameters();
    addVdsParams.setVdsId(host.getId());
    addVdsParams.setvds(host);
    if (model.getUserPassword().getEntity() != null) {
        addVdsParams.setPassword(model.getUserPassword().getEntity());
    }
    addVdsParams.setOverrideFirewall(model.getOverrideIpTables().getEntity());
    addVdsParams.setFenceAgents(model.getFenceAgentListModel().getFenceAgents());
    model.startProgress();
    Frontend.getInstance().runAction(ActionType.AddVds, addVdsParams, result -> {
        DataCenterGuideModel localModel = (DataCenterGuideModel) result.getState();
        localModel.postOnAddHost(result.getReturnValue());
    }, this);
}
Also used : NewHostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.NewHostModel) HostModel(org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel) VDS(org.ovirt.engine.core.common.businessentities.VDS) AddVdsActionParameters(org.ovirt.engine.core.common.action.hostdeploy.AddVdsActionParameters)

Aggregations

HostModel (org.ovirt.engine.ui.uicommonweb.models.hosts.HostModel)11 NewHostModel (org.ovirt.engine.ui.uicommonweb.models.hosts.NewHostModel)10 UICommand (org.ovirt.engine.ui.uicommonweb.UICommand)5 VDS (org.ovirt.engine.core.common.businessentities.VDS)4 AddVdsActionParameters (org.ovirt.engine.core.common.action.hostdeploy.AddVdsActionParameters)3 Cluster (org.ovirt.engine.core.common.businessentities.Cluster)2 ApplicationMode (org.ovirt.engine.core.common.mode.ApplicationMode)2 ConfirmationModel (org.ovirt.engine.ui.uicommonweb.models.ConfirmationModel)2 GWT (com.google.gwt.core.client.GWT)1 Scheduler (com.google.gwt.core.client.Scheduler)1 Element (com.google.gwt.dom.client.Element)1 Display (com.google.gwt.dom.client.Style.Display)1 TextDecoration (com.google.gwt.dom.client.Style.TextDecoration)1 HasClickHandlers (com.google.gwt.event.dom.client.HasClickHandlers)1 EventBus (com.google.gwt.event.shared.EventBus)1 CssResource (com.google.gwt.resources.client.CssResource)1 SafeHtmlUtils (com.google.gwt.safehtml.shared.SafeHtmlUtils)1 UiBinder (com.google.gwt.uibinder.client.UiBinder)1 UiField (com.google.gwt.uibinder.client.UiField)1 Timer (com.google.gwt.user.client.Timer)1