Package lcmc.cluster.ui.widget

Examples of lcmc.cluster.ui.widget.Widget


        for (final String param : params) {
            Value v = getParamSaved(param);
            if (v == null) {
                v = getParamDefault(param);
            }
            final Widget wi = getWidget(param, null);
            if (wi != null && !Tools.areEqual(wi.getValue(), v)) {
                wi.setValue(v);
                final Widget wizardWi = getWidget(param, Widget.WIZARD_PREFIX);
                if (wizardWi != null) {
                    wizardWi.setValue(v);
                }
            }
        }
    }
View Full Code Here


    }

    /** Return previously selected value of the parameter. This is used, when
     *  primitive changes to and from clone. */
    protected final Value getPreviouslySelected(final String param, final String prefix) {
        final Widget prevParamWi = getWidget(param, prefix);
        if (prevParamWi != null) {
            return prevParamWi.getValue();
        }
        return null;
    }
View Full Code Here

    /** Returns combo box for parameter. */
    @Override
    protected Widget createWidget(final String param,
                                  final String prefix,
                                  final int width) {
        final Widget paramWi = super.createWidget(param, prefix, width);
        if (InterfaceData.TYPE.equals(param)) {
            paramWi.setAlwaysEditable(false);
        } else if (InterfaceData.SOURCE_NETWORK.equals(param)) {
            if (prefix == null) {
                sourceNetworkWi.put("", paramWi);
            } else {
                sourceNetworkWi.put(prefix, paramWi);
            }
            paramWi.setAlwaysEditable(false);
        } else if (InterfaceData.SOURCE_BRIDGE.equals(param)) {
            if (prefix == null) {
                sourceBridgeWi.put("", paramWi);
            } else {
                sourceBridgeWi.put(prefix, paramWi);
            }
            paramWi.setAlwaysEditable(false);
        }
        return paramWi;
    }
View Full Code Here

            final InterfaceData interfaceData = interfaces.get(getName());
            if (interfaceData != null) {
                for (final String param : getParametersFromXML()) {
                    final Value oldValue = getParamSaved(param);
                    Value value = getParamSaved(param);
                    final Widget wi = getWidget(param, null);
                    for (final Host h
                            : getVMSVirtualDomainInfo().getDefinedOnHosts()) {
                        final VmsXml vmsXml = getBrowser().getVmsXml(h);
                        if (vmsXml != null) {
                            final Value savedValue =
                                               interfaceData.getValue(param);
                            if (savedValue != null) {
                                value = savedValue;
                            }
                        }
                    }
                    if (!Tools.areEqual(value, oldValue)) {
                        getResource().setValue(param, value);
                        if (wi != null) {
                            /* only if it is not changed by user. */
                            wi.setValue(value);
                        }
                    }
                }
            }
        }
View Full Code Here

            final DiskData diskData = disks.get(getName());
            if (diskData != null) {
                for (final String param : getParametersFromXML()) {
                    final Value oldValue = getParamSaved(param);
                    Value value = getParamSaved(param);
                    final Widget wi = getWidget(param, null);
                    for (final Host h
                            : getVMSVirtualDomainInfo().getDefinedOnHosts()) {
                        final VmsXml vmsXml = getBrowser().getVmsXml(h);
                        if (vmsXml != null) {
                            final Value savedValue =
                                               diskData.getValue(param);
                            if (savedValue != null) {
                                value = savedValue;
                            }
                        }
                    }
                    if (!Tools.areEqual(value, oldValue)) {
                        getResource().setValue(param, value);
                        if (wi != null) {
                            /* only if it is not changed by user. */
                            wi.setValue(value);
                        }
                    }
                }
            }
        }
View Full Code Here

        if (DiskData.SOURCE_FILE.equals(param)) {
            final Value sourceFile = getParamSaved(DiskData.SOURCE_FILE);
            final MyButton fileChooserBtn = widgetFactory.createButton("Browse...");
            application.makeMiniButton(fileChooserBtn);
            final String regexp = ".*[^/]$";
            final Widget paramWi = widgetFactory.createInstance(
                                     getFieldType(param),
                                     sourceFile,
                                     getParamPossibleChoices(param),
                                     regexp,
                                     width,
                                     Widget.NO_ABBRV,
                                     new AccessMode(getAccessType(param),
                                                    AccessMode.NORMAL),
                                     fileChooserBtn);
            paramWi.setAlwaysEditable(true);
            sourceFileWi.put(prefixS, paramWi);
            if (Tools.isWindows()) {
                /* does not work on windows and I tried, ultimately because
                   FilePane.usesShellFolder(fc) in BasicFileChooserUI returns
                   true and it is not possible to descent into a directory.
                   TODO: It may work in the future.
                */
                paramWi.setTFButtonEnabled(false);
            }
            fileChooserBtn.addActionListener(new ActionListener() {
                @Override
                public void actionPerformed(final ActionEvent e) {
                    final Thread t = new Thread(new Runnable() {
                        @Override
                        public void run() {
                            final String file;
                            final String oldFile = paramWi.getStringValue();
                            if (oldFile == null || oldFile.isEmpty()) {
                                file = LIBVIRT_IMAGE_LOCATION;
                            } else {
                                file = oldFile;
                            }
                            startFileChooser(paramWi,
                                             file,
                                             FILECHOOSER_FILE_ONLY);
                        }
                    });
                    t.start();
                }
            });
            widgetAdd(param, prefix, paramWi);
            return paramWi;
        } else {
            final Widget paramWi = super.createWidget(param, prefix, width);
            if (DiskData.TYPE.equals(param)
                || DiskData.TARGET_BUS_TYPE.equals(param)) {
                paramWi.setAlwaysEditable(false);
            } else if (DiskData.SOURCE_DEVICE.equals(param)) {
                paramWi.setAlwaysEditable(true);
                sourceDeviceWi.put(prefixS, paramWi);
            } else if (DiskData.SOURCE_NAME.equals(param)) {
                sourceNameWi.put(prefixS, paramWi);
            } else if (DiskData.SOURCE_PROTOCOL.equals(param)) {
                sourceProtocolWi.put(prefixS, paramWi);
            } else if (DiskData.SOURCE_HOST_NAME.equals(param)) {
                sourceHostNameWi.put(prefixS, paramWi);
            } else if (DiskData.SOURCE_HOST_PORT.equals(param)) {
                sourceHostPortWi.put(prefixS, paramWi);
            } else if (DiskData.AUTH_USERNAME.equals(param)) {
                authUsernameWi.put(prefixS, paramWi);
            } else if (DiskData.AUTH_SECRET_TYPE.equals(param)) {
                authSecretTypeWi.put(prefixS, paramWi);
            } else if (DiskData.AUTH_SECRET_UUID.equals(param)) {
                authSecretUuidWi.put(prefixS, paramWi);
            } else if (DiskData.TARGET_DEVICE.equals(param)) {
                paramWi.setAlwaysEditable(true);
                targetDeviceWi.put(prefixS, paramWi);
            } else if (DiskData.DRIVER_NAME.equals(param)) {
                driverNameWi.put(prefixS, paramWi);
            } else if (DiskData.DRIVER_TYPE.equals(param)) {
                driverTypeWi.put(prefixS, paramWi);
View Full Code Here

             final ParallelData parallelData = parallels.get(getName());
             if (parallelData != null) {
                 for (final String param : getParametersFromXML()) {
                     final Value oldValue = getParamSaved(param);
                     Value value = getParamSaved(param);
                     final Widget wi = getWidget(param, null);
                     for (final Host h
                         : getVMSVirtualDomainInfo().getDefinedOnHosts()) {
                         final VmsXml vmsXml = getBrowser().getVmsXml(h);
                         if (vmsXml != null) {
                             final Value savedValue =
                                 parallelData.getValue(param);
                             if (savedValue != null) {
                                 value = savedValue;
                             }
                         }
                     }
                     if (!Tools.areEqual(value, oldValue)) {
                         getResource().setValue(param, value);
                         if (wi != null) {
                             /* only if it is not changed by user. */
                             wi.setValue(value);
                         }
                     }
                 }
             }
         }
View Full Code Here

    private boolean areAllMetaAttrsAreDefaultValues(final String[] params) {
        if (params != null) {
            for (final String otherParam : params) {
                if (isMetaAttr(otherParam)) {
                    final Widget wi = getWidget(otherParam, null);
                    if (wi == null) {
                        continue;
                    }
                    final Value newValue = wi.getValue();
                    final Value defaultValue = getParamDefault(otherParam);
                    if (!Tools.areEqual(newValue, defaultValue)) {
                        return false;
                    }
                }
View Full Code Here

    }

    private void oldStyleResourcesHideFields(final String[] params) {
        /* in old style resources don't show all the textfields */
        boolean visible = false;
        Widget wi = null;
        for (int i = params.length - 1; i >= 0; i--) {
            final Widget prevWi = getWidget(params[i], null);
            if (prevWi == null) {
                continue;
            }
            if (!visible && !prevWi.getStringValue().isEmpty()) {
                visible = true;
            }
            if (wi != null && wi.getComponent().isVisible() != visible) {
                wi.setVisible(visible);
            }
View Full Code Here

                    if (!Tools.areEqual(defaultValue, oldValue)) {
                        allSavedMetaAttrsAreDefaultValues = false;
                    }
                }
                if (infoPanelOk) {
                    final Widget wi = getWidget(param, null);
                    final boolean haveChanged = !Tools.areEqual(value, oldValue)
                                                || !Tools.areEqual(defaultValue,
                                                                   getResource().getDefaultValue(param));
                    if (haveChanged || (metaAttrInfoRef != null && isMetaAttr(param))) {
                        getResource().setValue(param, value);
                        /* set default value, because it can change in
                         * rsc_defaults. */
                        getResource().setDefaultValue(param, defaultValue);
                        if (wi != null && metaAttrInfoRef == null) {
                            wi.setValue(value);
                        }
                    }
                }
            }
            if (!Tools.areEqual(metaAttrInfoRef, savedMetaAttrInfoRef)) {
                savedMetaAttrInfoRef = metaAttrInfoRef;
                if (sameAsMetaAttrsWi != null) {
                    if (metaAttrInfoRef == null) {
                        if (allMetaAttrsAreDefaultValues) {
                            if (!allSavedMetaAttrsAreDefaultValues) {
                                sameAsMetaAttrsWi.setValue(META_ATTRS_DEFAULT_VALUES);
                            }
                        } else {
                            if (metaAttrInfoRef != null) {
                                sameAsMetaAttrsWi.setValue(null);
                            }
                        }
                    } else {
                        sameAsMetaAttrsWi.setValue(metaAttrInfoRef);
                    }
                }
            }
        }

        /* set scores */
        for (final Host host : getBrowser().getClusterHosts()) {
            final HostInfo hi = host.getBrowser().getHostInfo();
            final HostLocation hostLocation = cs.getScore(getService().getCrmId(),
                                                          hi.getName(),
                                                          Application.RunMode.LIVE);
            final HostLocation savedLocation = savedHostLocations.get(hi);
            if (Tools.areEqual(hostLocation, savedLocation)) {
                if (hostLocation == null) {
                    savedHostLocations.remove(hi);
                } else {
                    savedHostLocations.put(hi, hostLocation);
                }
                if (infoPanelOk) {
                    final Widget wi = scoreComboBoxHash.get(hi);
                    if (wi != null) {
                        String score = null;
                        String op = null;
                        if (hostLocation != null) {
                            score = hostLocation.getScore();
                            op = hostLocation.getOperation();
                        }
                        wi.setValue(new StringValue(score));
                        final JLabel label = wi.getLabel();
                        final String text = getHostLocationLabel(hi.getName(), op);
                        label.setText(text);
                    }
                }
            }
        }

        /* set ping constraint */
        final HostLocation hostLocation = cs.getPingScore(getService().getCrmId(), Application.RunMode.LIVE);
        Value pingOperation = null;
        if (hostLocation != null) {
            final String op = hostLocation.getOperation();
            final String value = hostLocation.getValue();
            if ("eq".equals(op) && "0".equals(value)) {
                pingOperation = new StringValue("eq0");
            } else {
                pingOperation = new StringValue(hostLocation.getOperation());
            }
        }
        if (!Tools.areEqual(pingOperation, savedPingOperation)) {
            savedPingOperation = pingOperation;
        }
        if (infoPanelOk) {
            final Widget wi = pingComboBox;
            if (wi != null) {
                if (pingOperation == null) {
                    wi.setValue(null);
                } else {
                    wi.setValue(PING_ATTRIBUTES.get(pingOperation.getValueForConfig()));
                }
            }
        }

        /* Operations */
        final String newOperationsId = cs.getOperationsId(getService().getCrmId());
        if ((savedOperationsId == null && newOperationsId != null)
            || (savedOperationsId != null && !savedOperationsId.equals(newOperationsId))) {
            /* newly generated operations id, reload all other combo
               boxes. */
            getBrowser().reloadAllComboBoxes(this);
        }

        savedOperationsId = newOperationsId;
        String refCRMId = cs.getOperationsRef(getService().getCrmId());
        final ServiceInfo operationIdRef = getBrowser().getServiceInfoFromCRMId(refCRMId);
        if (refCRMId == null) {
            refCRMId = getService().getCrmId();
        }
        mSavedOperationsLock.lock();
        boolean allAreDefaultValues = true;
        boolean allSavedAreDefaultValues = true;
        for (final String op : getResourceAgent().getOperationNames()) {
            for (final String param : getBrowser().getCrmOperationParams(op)) {
                Value defaultValue = resourceAgent.getOperationDefault(op, param);
                if (defaultValue == null || defaultValue.isNothingSelected()) {
                    continue;
                }
                if (ClusterBrowser.CRM_OPERATIONS_WITH_IGNORED_DEFAULT.contains(op)) {
                    defaultValue = NOTHING_SELECTED_VALUE;
                }
                Value value = cs.getOperation(refCRMId, op, param);
                if (value == null || value.isNothingSelected()) {
                    value = getOpDefaultsDefault(param);
                }
                if (!Tools.areEqual(defaultValue, value)) {
                    allAreDefaultValues = false;
                }
                if (!Tools.areEqual(defaultValue, savedOperation.get(op, param))) {
                    allSavedAreDefaultValues = false;
                }
            }
        }
        boolean sameAs = false;
        if (!Tools.areEqual(operationIdRef, savedOperationIdRef)) {
            savedOperationIdRef = operationIdRef;
            if (sameAsOperationsWi != null) {
                if (operationIdRef == null) {
                    if (allAreDefaultValues) { // TODO: don't have it yet.
                        if (!allSavedAreDefaultValues) {
                            sameAsOperationsWi.setValue(OPERATIONS_DEFAULT_VALUES);
                        }
                    } else {
                        if (savedOperationIdRef != null) {
                            sameAsOperationsWi.setValue(null);
                        }
                    }
                } else {
                    sameAs = false;
                    sameAsOperationsWi.setValue(operationIdRef);
                }
            }
        }
        if (!sameAs) {
            for (final String op : getResourceAgent().getOperationNames()) {
                for (final String param : getBrowser().getCrmOperationParams(op)) {
                    final Value defaultValue = resourceAgent.getOperationDefault(op, param);
                    if (defaultValue == null || defaultValue.isNothingSelected()) {
                        continue;
                    }
                    Value value = cs.getOperation(refCRMId, op, param);
                    if (value == null || value.isNothingSelected()) {
                        value = getOpDefaultsDefault(param);
                    }
                    if (!Tools.areEqual(value, savedOperation.get(op, param))) {
                        savedOperation.put(op, param, value);
                        if (infoPanelOk) {
                            mOperationsComboBoxHashReadLock.lock();
                            final Widget wi;
                            try {
                                wi = operationsComboBoxHash.get(op, param);
                            } finally {
                                mOperationsComboBoxHashReadLock.unlock();
                            }
                            application.invokeLater(new Runnable() {
                                @Override
                                public void run() {
                                    wi.setEnabled(operationIdRef == null);
                                }
                            });
                            if (value != null) {
                                wi.setValue(value);
                            }
                        }
                    }
                }
            }
View Full Code Here

TOP

Related Classes of lcmc.cluster.ui.widget.Widget

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.