| | |
| | | * |
| | | * |
| | | * Copyright 2008-2010 Sun Microsystems, Inc. |
| | | * Portions Copyright 2011 ForgeRock AS |
| | | * Portions Copyright 2011-2014 ForgeRock AS |
| | | */ |
| | | |
| | | package org.opends.guitools.controlpanel.ui; |
| | |
| | | SchemaElementComboBoxCellRenderer; |
| | | import org.opends.guitools.controlpanel.util.LowerCaseComparator; |
| | | import org.opends.guitools.controlpanel.util.Utilities; |
| | | import org.opends.messages.Message; |
| | | import org.opends.messages.MessageBuilder; |
| | | import org.forgerock.i18n.LocalizableMessage; |
| | | import org.forgerock.i18n.LocalizableMessageBuilder; |
| | | import org.opends.server.api.ApproximateMatchingRule; |
| | | import org.opends.server.api.AttributeSyntax; |
| | | import org.opends.server.api.EqualityMatchingRule; |
| | |
| | | private String attrName; |
| | | private ScrollPaneBorderListener scrollListener; |
| | | |
| | | private TitlePanel titlePanel = new TitlePanel(Message.EMPTY, |
| | | Message.EMPTY); |
| | | private TitlePanel titlePanel = new TitlePanel(LocalizableMessage.EMPTY, |
| | | LocalizableMessage.EMPTY); |
| | | private JLabel lName = Utilities.createPrimaryLabel( |
| | | INFO_CTRL_PANEL_ATTRIBUTE_NAME_LABEL.get()); |
| | | private JLabel lSuperior = Utilities.createPrimaryLabel( |
| | |
| | | |
| | | private Set<String> lastAliases = new LinkedHashSet<String>(); |
| | | |
| | | private Message NO_PARENT = INFO_CTRL_PANEL_NO_PARENT_FOR_ATTRIBUTE.get(); |
| | | private Message NO_MATCHING_RULE = |
| | | private LocalizableMessage NO_PARENT = INFO_CTRL_PANEL_NO_PARENT_FOR_ATTRIBUTE.get(); |
| | | private LocalizableMessage NO_MATCHING_RULE = |
| | | INFO_CTRL_PANEL_NO_MATCHING_RULE_FOR_ATTRIBUTE.get(); |
| | | |
| | | private Schema schema; |
| | |
| | | /** |
| | | * {@inheritDoc} |
| | | */ |
| | | public Message getTitle() |
| | | public LocalizableMessage getTitle() |
| | | { |
| | | return INFO_CTRL_PANEL_CUSTOM_ATTRIBUTE_TITLE.get(); |
| | | } |
| | |
| | | */ |
| | | public void actionPerformed(ActionEvent ev) |
| | | { |
| | | ArrayList<Message> errors = new ArrayList<Message>(); |
| | | ArrayList<LocalizableMessage> errors = new ArrayList<LocalizableMessage>(); |
| | | saveChanges(false, errors); |
| | | } |
| | | }); |
| | |
| | | |
| | | JComboBox[] comboBoxes = {parent, syntax, approximate, |
| | | equality, ordering, substring}; |
| | | Message[] defaultValues = {NO_PARENT, Message.EMPTY, NO_MATCHING_RULE, |
| | | LocalizableMessage[] defaultValues = {NO_PARENT, LocalizableMessage.EMPTY, NO_MATCHING_RULE, |
| | | NO_MATCHING_RULE, NO_MATCHING_RULE, NO_MATCHING_RULE |
| | | }; |
| | | SchemaElementComboBoxCellRenderer renderer = new |
| | |
| | | }; |
| | | syntax.addItemListener(itemListener); |
| | | |
| | | Message[] msgs = new Message[] { |
| | | LocalizableMessage[] msgs = new LocalizableMessage[] { |
| | | INFO_CTRL_PANEL_REQUIRED_BY_LABEL.get(), |
| | | INFO_CTRL_PANEL_ALLOWED_BY_LABEL.get() |
| | | }; |
| | |
| | | result = unsavedChangesDlg.getResult(); |
| | | if (result == UnsavedChangesDialog.Result.SAVE) |
| | | { |
| | | ArrayList<Message> errors = new ArrayList<Message>(); |
| | | ArrayList<LocalizableMessage> errors = new ArrayList<LocalizableMessage>(); |
| | | saveChanges(true, errors); |
| | | if (!errors.isEmpty()) |
| | | { |
| | |
| | | { |
| | | n = ""; |
| | | } |
| | | titlePanel.setDetails(Message.raw(n)); |
| | | titlePanel.setDetails(LocalizableMessage.raw(n)); |
| | | name.setText(n); |
| | | |
| | | oid.setText(attr.getOID()); |
| | |
| | | |
| | | private void deleteAttribute() |
| | | { |
| | | ArrayList<Message> errors = new ArrayList<Message>(); |
| | | ArrayList<LocalizableMessage> errors = new ArrayList<LocalizableMessage>(); |
| | | Schema schema = getInfo().getServerDescriptor().getSchema(); |
| | | ProgressDialog dlg = new ProgressDialog( |
| | | Utilities.createFrame(), |
| | |
| | | } |
| | | if (errors.isEmpty()) |
| | | { |
| | | MessageBuilder mb = new MessageBuilder(); |
| | | LocalizableMessageBuilder mb = new LocalizableMessageBuilder(); |
| | | |
| | | if (!childAttributes.isEmpty()) |
| | | { |
| | |
| | | Utilities.getStringFromCollection(dependentClasses, ", "))); |
| | | mb.append("<br>"); |
| | | } |
| | | Message confirmationMessage = |
| | | LocalizableMessage confirmationMessage = |
| | | INFO_CTRL_PANEL_CONFIRMATION_DELETE_ATTRIBUTE_DETAILS.get( |
| | | attribute.getNameOrOID()); |
| | | mb.append(confirmationMessage); |
| | |
| | | } |
| | | } |
| | | |
| | | private void saveChanges(boolean modal, ArrayList<Message> errors) |
| | | private void saveChanges(boolean modal, ArrayList<LocalizableMessage> errors) |
| | | { |
| | | // Check if the aliases or the name have changed |
| | | for (JLabel label : labels) |
| | |
| | | setPrimaryValid(label); |
| | | } |
| | | String n = getAttributeName(); |
| | | MessageBuilder err = new MessageBuilder(); |
| | | LocalizableMessageBuilder err = new LocalizableMessageBuilder(); |
| | | if (n.length() == 0) |
| | | { |
| | | errors.add(ERR_CTRL_PANEL_ATTRIBUTE_NAME_REQUIRED.get()); |
| | |
| | | { |
| | | errors.add(ERR_CTRL_PANEL_INVALID_ATTRIBUTE_NAME.get(err.toString())); |
| | | setPrimaryInvalid(lName); |
| | | err = new MessageBuilder(); |
| | | err = new LocalizableMessageBuilder(); |
| | | } |
| | | else |
| | | { |
| | | Message elementType = NewAttributePanel.getSchemaElementType(n, schema); |
| | | LocalizableMessage elementType = NewAttributePanel.getSchemaElementType(n, schema); |
| | | if (elementType != null) |
| | | { |
| | | errors.add(ERR_CTRL_PANEL_ATTRIBUTE_NAME_ALREADY_IN_USE.get(n, |
| | |
| | | { |
| | | errors.add(ERR_CTRL_PANEL_OID_NOT_VALID.get(err.toString())); |
| | | setPrimaryInvalid(lOID); |
| | | err = new MessageBuilder(); |
| | | err = new LocalizableMessageBuilder(); |
| | | } |
| | | else |
| | | { |
| | | Message elementType = NewAttributePanel.getSchemaElementType(n, schema); |
| | | LocalizableMessage elementType = NewAttributePanel.getSchemaElementType(n, schema); |
| | | if (elementType != null) |
| | | { |
| | | errors.add(ERR_CTRL_PANEL_OID_ALREADY_IN_USE.get(n, |
| | |
| | | } |
| | | if (notPreviouslyDefined) |
| | | { |
| | | Message elementType = |
| | | LocalizableMessage elementType = |
| | | NewAttributePanel.getSchemaElementType(alias, schema); |
| | | if (elementType != null) |
| | | { |