Consolidate some of the code used to display the equivalent command-line in the control panel.
Be consistent in the way the control panel display the command-lines with the equivalent command-line of dsconfig.
| | |
| | | |
| | | import org.opends.guitools.controlpanel.datamodel.BackendDescriptor; |
| | | import org.opends.guitools.controlpanel.datamodel.ControlPanelInfo; |
| | | import org.opends.guitools.controlpanel.ui.ColorAndFontConstants; |
| | | import org.opends.guitools.controlpanel.ui.ProgressDialog; |
| | | import org.opends.guitools.controlpanel.util.Utilities; |
| | | import org.opends.messages.Message; |
| | | import org.opends.server.tools.ManageTasks; |
| | | import org.opends.server.tools.tasks.TaskEntry; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * Task used to cancel tasks in server. |
| | |
| | | getProgressDialog().appendProgressHtml("<br><br>"); |
| | | } |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("manage-tasks")); |
| | | args.addAll(getObfuscatedCommandLineArguments(arguments)); |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CANCEL_TASK.get(task.getId())+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getCommandLinePath("manage-tasks"), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CANCEL_TASK.get( |
| | | task.getId())); |
| | | } |
| | | }); |
| | | |
| | |
| | | import java.util.HashMap; |
| | | import java.util.HashSet; |
| | | import java.util.LinkedList; |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Set; |
| | | import java.util.SortedSet; |
| | |
| | | import org.opends.server.core.DirectoryServer; |
| | | import org.opends.server.types.DN; |
| | | import org.opends.server.types.OpenDsException; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The task used to delete a set of base DNs or backends. |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLinePath(baseDNs)); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments(baseDNs)); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_BASE_DN.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLinePath(baseDNs), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_BASE_DN.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLinePath(backend)); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments(backend)); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_BACKEND.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLinePath(backend), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_BACKEND.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLinePath(baseDN.getBackend())); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getCommandLineArgumentsToDisableReplication(domainName[0])); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | printEquivalentCommandLine( |
| | | getConfigCommandLinePath(baseDN.getBackend()), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_DOMAIN.get( |
| | | baseDN.getDn().toString())); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_DOMAIN.get( |
| | | baseDN.getDn().toString())+"<br><b>"+ |
| | | sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | }); |
| | | } |
| | | SwingUtilities.invokeLater(new Runnable() |
| | |
| | | import org.opends.server.types.DN; |
| | | import org.opends.server.types.DirectoryException; |
| | | import org.opends.server.util.ServerConstants; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The task that is launched when an entry must be deleted. |
| | |
| | | private void printEquivalentCommandToDelete(DN dn, boolean usingControl) |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapdelete")); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(useAdminCtx, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | |
| | | args.add(ServerConstants.OID_SUBTREE_DELETE_CONTROL); |
| | | } |
| | | args.add(dn.toString()); |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_ENTRY.get(dn.toString())+ |
| | | "<br><b>"+ |
| | | sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getCommandLinePath("ldapdelete"), |
| | | args, |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_ENTRY.get(dn.toString())); |
| | | } |
| | | } |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Collection; |
| | | import java.util.HashSet; |
| | | import java.util.List; |
| | | import java.util.Set; |
| | | import java.util.TreeSet; |
| | | |
| | |
| | | import org.opends.server.core.DirectoryServer; |
| | | import org.opends.server.types.DN; |
| | | import org.opends.server.types.OpenDsException; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The task that is launched when an index must be deleted. |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineName(index)); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments(index)); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_INDEX.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLineName(index), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_INDEX.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | * CDDL HEADER END |
| | | * |
| | | * |
| | | * Copyright 2008 Sun Microsystems, Inc. |
| | | * Copyright 2008-2009 Sun Microsystems, Inc. |
| | | */ |
| | | |
| | | package org.opends.guitools.controlpanel.task; |
| | |
| | | import org.opends.server.types.SchemaFileElement; |
| | | import org.opends.server.util.LDIFReader; |
| | | import org.opends.server.util.LDIFWriter; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The task that is launched when a schema element must be deleted. |
| | |
| | | else |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapmodify")); |
| | | args.add("-a"); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(true, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | String equiv = getEquivalentCommandLine(getCommandLinePath("ldapmodify"), |
| | | args); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_SCHEMA_ELEMENT_ONLINE.get()+ |
| | | "<br><b>"); |
| | | sb.append(equiv); |
| | | sb.append("<br>"); |
| | | sb.append("dn: cn=schema<br>"); |
| | | sb.append("changetype: modify<br>"); |
| | | sb.append("delete: "+attrName+"<br>"); |
| | | sb.append(attrName+": "+attrValue); |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DELETE_SCHEMA_ELEMENT_ONLINE.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | sb.append("</b><br><br>"); |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont(sb.toString(), |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | } |
| | |
| | | import org.opends.server.types.AttributeValue; |
| | | import org.opends.server.types.DN; |
| | | import org.opends.server.types.Entry; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The task launched when we must create an entry. |
| | |
| | | private void printEquivalentCommand() |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapmodify")); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(useAdminCtx, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | args.add("--defaultAdd"); |
| | | String equiv = getEquivalentCommandLine(getCommandLinePath("ldapmodify"), |
| | | args); |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append(INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_ENTRY.get()+"<br><b>"); |
| | | sb.append(equiv); |
| | | sb.append("<br>"); |
| | | String[] lines = ldif.split("\n"); |
| | | for (String line : lines) |
| | |
| | | sb.append(obfuscateLDIFLine(line)); |
| | | sb.append("<br>"); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_ENTRY.get()+"<br><b>"+ |
| | | sb.toString()+"</b><br><br>", |
| | | sb.append("</b><br>"); |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont(sb.toString(), |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | |
| | |
| | | import java.util.ArrayList; |
| | | import java.util.Collection; |
| | | import java.util.HashSet; |
| | | import java.util.List; |
| | | import java.util.Set; |
| | | import java.util.SortedSet; |
| | | import java.util.TreeSet; |
| | |
| | | import org.opends.server.admin.std.client.RootCfgClient; |
| | | import org.opends.server.tools.RebuildIndex; |
| | | import org.opends.server.types.OpenDsException; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The class that is used when a set of indexes must be rebuilt. |
| | |
| | | |
| | | arguments.toArray(args); |
| | | |
| | | final StringBuilder sb = new StringBuilder(); |
| | | sb.append(getCommandLinePath("rebuild-index")); |
| | | Collection<String> displayArgs = getObfuscatedCommandLineArguments( |
| | | final List<String> displayArgs = getObfuscatedCommandLineArguments( |
| | | getCommandLineArguments(baseDN)); |
| | | displayArgs.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : displayArgs) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.toString(); |
| | | final ProgressDialog progressDialog = getProgressDialog(); |
| | | |
| | | SwingUtilities.invokeLater(new Runnable() |
| | | { |
| | | public void run() |
| | | { |
| | | progressDialog.appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_REBUILD_INDEX.get(baseDN)+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getCommandLinePath("rebuild-index"), |
| | | displayArgs, |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_REBUILD_INDEX.get(baseDN)); |
| | | } |
| | | }); |
| | | |
| | |
| | | */ |
| | | private void setBackendEnable(final String backendName, |
| | | final boolean enable) throws OpenDsException |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | { |
| | | final ArrayList<String> args = new ArrayList<String>(); |
| | | args.add("set-backend-prop"); |
| | | args.add("--backend-name"); |
| | | args.add(backendName); |
| | |
| | | args.add(getNoPropertiesFileArgument()); |
| | | args.add("--no-prompt"); |
| | | |
| | | final StringBuilder sb = new StringBuilder(); |
| | | sb.append(getCommandLinePath("dsconfig")); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | |
| | | final ProgressDialog progressDialog = getProgressDialog(); |
| | | |
| | | SwingUtilities.invokeLater(new Runnable() |
| | |
| | | { |
| | | if (enable) |
| | | { |
| | | progressDialog.appendProgressHtml("<br><br>"+Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_ENABLE_BACKEND.get( |
| | | backendName)+"<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getCommandLinePath("dsconfig"), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_ENABLE_BACKEND.get( |
| | | backendName)); |
| | | progressDialog.appendProgressHtml(Utilities.getProgressWithPoints( |
| | | INFO_CTRL_PANEL_ENABLING_BACKEND.get(backendName), |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | else |
| | | { |
| | | progressDialog.appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DISABLE_BACKEND.get( |
| | | backendName)+"<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getCommandLinePath("dsconfig"), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_DISABLE_BACKEND.get( |
| | | backendName)); |
| | | progressDialog.appendProgressHtml(Utilities.getProgressWithPoints( |
| | | INFO_CTRL_PANEL_DISABLING_BACKEND.get(backendName), |
| | | ColorAndFontConstants.progressFont)); |
| | |
| | | * CDDL HEADER END |
| | | * |
| | | * |
| | | * Copyright 2008 Sun Microsystems, Inc. |
| | | * Copyright 2008-2009 Sun Microsystems, Inc. |
| | | */ |
| | | |
| | | package org.opends.guitools.controlpanel.task; |
| | |
| | | import org.opends.server.types.LDIFImportConfig; |
| | | import org.opends.server.types.OpenDsException; |
| | | import org.opends.server.util.LDIFReader; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * An abstract class used to refactor some code between the different tasks |
| | | * An abstract class used to re-factor some code between the different tasks |
| | | * that update the schema. |
| | | * |
| | | */ |
| | |
| | | else |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapmodify")); |
| | | args.add("-a"); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(true, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | |
| | | String equiv = getEquivalentCommandLine(getCommandLinePath("ldapmodify"), |
| | | args); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_ADD_SCHEMA_ELEMENT_ONLINE.get()+ |
| | | "<br><b>"); |
| | | sb.append(equiv); |
| | | sb.append("<br>"); |
| | | sb.append("dn: cn=schema<br>"); |
| | | sb.append("changetype: modify<br>"); |
| | | sb.append("add: "+getSchemaFileAttributeName()+"<br>"); |
| | | sb.append(getSchemaFileAttributeName()+": "+ |
| | | getSchemaFileAttributeValue()); |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_ADD_SCHEMA_ELEMENT_ONLINE.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | sb.append("</b><br><br>"); |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont(sb.toString(), |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | } |
| | |
| | | boolean isStartTLS = ConnectionUtils.isStartTLS(ctx); |
| | | String bindDN = ConnectionUtils.getBindDN(ctx); |
| | | String bindPwd = ConnectionUtils.getBindPassword(ctx); |
| | | args.add("--hostname"); |
| | | args.add("--hostName"); |
| | | args.add(hostName); |
| | | args.add("--port"); |
| | | args.add(String.valueOf(port)); |
| | |
| | | String cmdLineName = getCommandLinePath(); |
| | | if (cmdLineName != null) |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(cmdLineName); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments(getCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | return sb.toString(); |
| | | return getEquivalentCommandLine(cmdLineName, args); |
| | | } |
| | | else |
| | | { |
| | |
| | | Collection<ModificationItem> mods, boolean useAdminCtx) |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapmodify")); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(useAdminCtx, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | String equiv = getEquivalentCommandLine(getCommandLinePath("ldapmodify"), |
| | | args); |
| | | |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append(INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY.get()+"<br><b>"); |
| | | sb.append(equiv); |
| | | sb.append("<br>"); |
| | | sb.append("dn: "+dn); |
| | | boolean firstChangeType = true; |
| | |
| | | } |
| | | } |
| | | } |
| | | sb.append("</b><br><br>"); |
| | | |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY.get().toString()+"<br><b>"+ |
| | | sb.toString()+"</b><br><br>", |
| | | sb.toString(), ColorAndFontConstants.progressFont)); |
| | | } |
| | | |
| | | /** |
| | | * The separator used to link the lines of the resulting command-lines. |
| | | */ |
| | | private final static String LINE_SEPARATOR; |
| | | static |
| | | { |
| | | if (SetupUtils.isWindows()) |
| | | { |
| | | LINE_SEPARATOR = " "; |
| | | } |
| | | else |
| | | { |
| | | LINE_SEPARATOR = |
| | | " \\<br> "; |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Returns the equivalent command line in HTML without font properties. |
| | | * @param cmdName the command name. |
| | | * @param args the arguments for the command line. |
| | | * @return the equivalent command-line in HTML. |
| | | */ |
| | | public static String getEquivalentCommandLine(String cmdName, |
| | | List<String> args) |
| | | { |
| | | StringBuilder sb = new StringBuilder(cmdName); |
| | | for (int i=0; i<args.size(); i++) |
| | | { |
| | | String arg = args.get(i); |
| | | if (arg.charAt(0) == '-') |
| | | { |
| | | sb.append(LINE_SEPARATOR); |
| | | } |
| | | else |
| | | { |
| | | sb.append(" "); |
| | | } |
| | | sb.append(CommandBuilder.escapeValue(arg)); |
| | | } |
| | | return sb.toString(); |
| | | } |
| | | |
| | | /** |
| | | * Prints the equivalent command line. |
| | | * @param cmdName the command name. |
| | | * @param args the arguments for the command line. |
| | | * @param msg the message associated with the command line. |
| | | */ |
| | | protected void printEquivalentCommandLine(String cmdName, List<String> args, |
| | | Message msg) |
| | | { |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont(msg+"<br><b>"+ |
| | | getEquivalentCommandLine(cmdName, args)+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | |
| | |
| | | boolean useAdminCtx) |
| | | { |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add(getCommandLinePath("ldapmodify")); |
| | | args.addAll(getObfuscatedCommandLineArguments( |
| | | getConnectionCommandLineArguments(useAdminCtx, true))); |
| | | args.add(getNoPropertiesFileArgument()); |
| | | String equiv = getEquivalentCommandLine(getCommandLinePath("ldapmodify"), |
| | | args); |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append(INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_RENAME.get()+"<br><b>"); |
| | | sb.append(equiv); |
| | | sb.append("<br>"); |
| | | sb.append("dn: "+oldDN); |
| | | sb.append("<br>"); |
| | | sb.append("changetype: moddn<br>"); |
| | | sb.append("newrdn: "+newDN.getRDN()+"<br>"); |
| | | sb.append("deleteoldrdn: 1"); |
| | | |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_RENAME.get().toString()+"<br><b>"+ |
| | | sb.toString()+"</b><br><br>", |
| | | sb.append("</b><br><br>"); |
| | | getProgressDialog().appendProgressHtml( |
| | | Utilities.applyFont(sb.toString(), |
| | | ColorAndFontConstants.progressFont)); |
| | | } |
| | | |
| | |
| | | * The font to be used in the progress dialog's 'Details' section. |
| | | */ |
| | | public static final Font progressFont = UIManager.getFont("EditorPane.font"); |
| | | /** |
| | | * Specifies the font for the command-line output in the detail panel. |
| | | */ |
| | | public static final Font outputFont = Font.decode("Monospaced-PLAIN-12"); |
| | | |
| | | } |
| | |
| | | import org.opends.server.tools.dsreplication.ReplicationCliException; |
| | | import org.opends.server.tools.dsreplication.ReplicationCliMain; |
| | | import org.opends.server.types.DN; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * The panel where the user can import the contents of an LDIF file to the |
| | |
| | | |
| | | private String getCommandLineToInitializeAll() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | String cmdLineName = getCommandLinePath("dsreplication"); |
| | | sb.append(cmdLineName); |
| | | ArrayList<String> args = new ArrayList<String>(); |
| | | args.add( |
| | | ReplicationCliArgumentParser.INITIALIZE_ALL_REPLICATION_SUBCMD_NAME); |
| | |
| | | args.add("--trustAll"); |
| | | args.add("--no-prompt"); |
| | | |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | return sb.toString(); |
| | | return Task.getEquivalentCommandLine(cmdLineName, args); |
| | | } |
| | | }; |
| | | } |
| | |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineName()); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY_INDEX.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | |
| | | printEquivalentCommandLine(getConfigCommandLineName(), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY_INDEX.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | */ |
| | | public void configurationChanged(ConfigurationChangeEvent ev) |
| | | { |
| | | ArrayList<AttributeSyntax> newSyntaxes = new ArrayList<AttributeSyntax>(); |
| | | ArrayList<AttributeSyntax<?>> newSyntaxes = |
| | | new ArrayList<AttributeSyntax<?>>(); |
| | | |
| | | final ServerDescriptor desc = ev.getNewDescriptor(); |
| | | Schema s = desc.getSchema(); |
| | |
| | | { |
| | | schema = s; |
| | | |
| | | HashMap<String, AttributeSyntax> syntaxNameMap = new HashMap<String, |
| | | AttributeSyntax>(); |
| | | HashMap<String, AttributeSyntax<?>> syntaxNameMap = new HashMap<String, |
| | | AttributeSyntax<?>>(); |
| | | for (String key : schema.getSyntaxes().keySet()) |
| | | { |
| | | AttributeSyntax syntax = schema.getSyntax(key); |
| | | AttributeSyntax<?> syntax = schema.getSyntax(key); |
| | | String name = syntax.getSyntaxName(); |
| | | if (name == null) |
| | | { |
| | |
| | | { |
| | | for (int i=0; i<syntax.getModel().getSize(); i++) |
| | | { |
| | | AttributeSyntax syn = |
| | | (AttributeSyntax)syntax.getModel().getElementAt(i); |
| | | AttributeSyntax<?> syn = |
| | | (AttributeSyntax<?>)syntax.getModel().getElementAt(i); |
| | | if ("DirectoryString".equals(syn.getSyntaxName())) |
| | | { |
| | | syntax.setSelectedIndex(i); |
| | |
| | | return INFO_CTRL_PANEL_TYPE_MATCHING_RULE.get(); |
| | | } |
| | | |
| | | for (AttributeSyntax attr : schema.getSyntaxes().values()) |
| | | for (AttributeSyntax<?> attr : schema.getSyntaxes().values()) |
| | | { |
| | | String n = attr.getSyntaxName(); |
| | | if (n != null) |
| | |
| | | public void stateChanged(ChangeEvent e) |
| | | { |
| | | p.setVisible(expander.isSelected()); |
| | | packParentDialog(); |
| | | } |
| | | }; |
| | | expander.addChangeListener(changeListener); |
| | |
| | | |
| | | private void updateDefaultMatchingRuleNames() |
| | | { |
| | | AttributeSyntax syn = (AttributeSyntax)syntax.getSelectedItem(); |
| | | AttributeSyntax<?> syn = (AttributeSyntax<?>)syntax.getSelectedItem(); |
| | | if (syn != null) |
| | | { |
| | | MatchingRule[] rules = {syn.getApproximateMatchingRule(), |
| | |
| | | getAllNames(), |
| | | getOID(), description.getText().trim(), |
| | | getSuperior(), |
| | | (AttributeSyntax)syntax.getSelectedItem(), |
| | | (AttributeSyntax<?>)syntax.getSelectedItem(), |
| | | getApproximateMatchingRule(), |
| | | getEqualityMatchingRule(), |
| | | getOrderingMatchingRule(), |
| | |
| | | */ |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineFullPath()); |
| | | Collection<String> args = |
| | | List<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_BASE_DN.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLineFullPath(), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_BASE_DN.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | StringBuilder sb = new StringBuilder(); |
| | | for (List<String> args : argsArray) |
| | | { |
| | | sb.append(getCommandLinePath("dsconfig")); |
| | | args = getObfuscatedCommandLineArguments(args); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | sb.append(getEquivalentCommandLine(getCommandLinePath("dsconfig"), |
| | | getObfuscatedCommandLineArguments(args))); |
| | | sb.append("<br><br>"); |
| | | } |
| | | final String cmdLines = sb.toString(); |
| | |
| | | */ |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineName()); |
| | | Collection<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | List<String> args = getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_INDEX.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLineName(), |
| | | args, INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_INDEX.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | public void stateChanged(ChangeEvent e) |
| | | { |
| | | p.setVisible(expander.isSelected()); |
| | | packParentDialog(); |
| | | } |
| | | }; |
| | | expander.addChangeListener(changeListener); |
| | |
| | | import org.opends.server.types.LDIFImportConfig; |
| | | import org.opends.server.types.OpenDsException; |
| | | import org.opends.server.util.LDIFReader; |
| | | import org.opends.server.util.cli.CommandBuilder; |
| | | |
| | | /** |
| | | * Panel that appears when the user defines a new VLV index. |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineName()); |
| | | Collection<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | List<String> args = getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_VLV_INDEX.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLineName(), |
| | | args, |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_CREATE_VLV_INDEX.get()); |
| | | } |
| | | }); |
| | | } |
| | |
| | | * CDDL HEADER END |
| | | * |
| | | * |
| | | * Copyright 2008 Sun Microsystems, Inc. |
| | | * Copyright 2008-2009 Sun Microsystems, Inc. |
| | | */ |
| | | |
| | | package org.opends.guitools.controlpanel.ui; |
| | | |
| | | import java.util.HashSet; |
| | | import java.util.LinkedHashSet; |
| | | import java.util.Set; |
| | | |
| | | import javax.swing.JList; |
| | | import javax.swing.border.Border; |
| | | import javax.swing.border.EmptyBorder; |
| | | |
| | | import org.opends.guitools.controlpanel.event.SchemaElementSelectionEvent; |
| | | import org.opends.guitools.controlpanel.event.SchemaElementSelectionListener; |
| | | import org.opends.server.types.AttributeType; |
| | | import org.opends.server.types.ObjectClass; |
| | | import org.opends.server.types.Schema; |
| | | |
| | | /** |
| | | * Abstract class used to refactor some code among the panels that display the |
| | |
| | | { |
| | | return UnsavedChangesDialog.Result.DO_NOT_SAVE; |
| | | } |
| | | |
| | | /** |
| | | * Method called when there is an object class selected in a list. |
| | | * @param list the list. |
| | | */ |
| | | protected void objectClassSelected(JList list) |
| | | { |
| | | String o = (String)list.getSelectedValue(); |
| | | if (o != null) |
| | | { |
| | | Schema schema = getInfo().getServerDescriptor().getSchema(); |
| | | if (schema != null) |
| | | { |
| | | ObjectClass oc = schema.getObjectClass(o.toLowerCase()); |
| | | if (oc != null) |
| | | { |
| | | notifySchemaSelectionListeners(oc); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * Returns the list of aliases for the provided attribute. |
| | | * @param attr the attribute. |
| | | * @return the list of aliases for the provided attribute. |
| | | */ |
| | | protected Set<String> getAliases(AttributeType attr) |
| | | { |
| | | Set<String> aliases = new LinkedHashSet<String>(); |
| | | Iterable<String> ocNames = attr.getNormalizedNames(); |
| | | String primaryName = attr.getPrimaryName(); |
| | | if (primaryName == null) |
| | | { |
| | | primaryName = ""; |
| | | } |
| | | for (String name : ocNames) |
| | | { |
| | | if (!name.equalsIgnoreCase(primaryName)) |
| | | { |
| | | aliases.add(name); |
| | | } |
| | | } |
| | | return aliases; |
| | | } |
| | | |
| | | /** |
| | | * Returns the list of aliases for the provided object class. |
| | | * @param oc the object class. |
| | | * @return the list of aliases for the provided object class. |
| | | */ |
| | | protected Set<String> getAliases(ObjectClass oc) |
| | | { |
| | | Set<String> aliases = new LinkedHashSet<String>(); |
| | | Iterable<String> ocNames = oc.getNormalizedNames(); |
| | | String primaryName = oc.getPrimaryName(); |
| | | if (primaryName == null) |
| | | { |
| | | primaryName = ""; |
| | | } |
| | | for (String name : ocNames) |
| | | { |
| | | if (!name.equalsIgnoreCase(primaryName)) |
| | | { |
| | | aliases.add(name); |
| | | } |
| | | } |
| | | return aliases; |
| | | } |
| | | } |
| | |
| | | import java.awt.event.KeyEvent; |
| | | import java.awt.event.MouseAdapter; |
| | | import java.awt.event.MouseEvent; |
| | | import java.util.ArrayList; |
| | | import java.util.Comparator; |
| | | import java.util.Set; |
| | | import java.util.SortedSet; |
| | | import java.util.TreeSet; |
| | | |
| | |
| | | requiredBy.setVisibleRowCount(5); |
| | | optionalBy.setVisibleRowCount(9); |
| | | |
| | | Message[] labels = { |
| | | INFO_CTRL_PANEL_ATTRIBUTE_NAME_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_PARENT_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_OID_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ALIASES_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ORIGIN_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_DESCRIPTION_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_USAGE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_SYNTAX_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_TYPE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_APPROXIMATE_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_EQUALITY_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ORDERING_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_SUBSTRING_MATCHING_RULE_LABEL.get() |
| | | }; |
| | | JLabel[] values = {name, parent, oid, aliases, origin, description, usage, |
| | | syntax, type, approximate, equality, ordering, substring}; |
| | | gbc.gridy = 0; |
| | | gbc.gridwidth = 2; |
| | | addErrorPane(c, gbc); |
| | |
| | | gbc.gridy ++; |
| | | gbc.gridwidth = 1; |
| | | gbc.fill = GridBagConstraints.HORIZONTAL; |
| | | |
| | | Message[] labels = { |
| | | INFO_CTRL_PANEL_ATTRIBUTE_NAME_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_PARENT_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_OID_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ALIASES_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ORIGIN_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_DESCRIPTION_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_USAGE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_SYNTAX_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_TYPE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_APPROXIMATE_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_EQUALITY_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_ORDERING_MATCHING_RULE_LABEL.get(), |
| | | INFO_CTRL_PANEL_ATTRIBUTE_SUBSTRING_MATCHING_RULE_LABEL.get() |
| | | }; |
| | | JLabel[] values = {name, parent, oid, aliases, origin, description, usage, |
| | | syntax, type, approximate, equality, ordering, substring}; |
| | | |
| | | for (int i=0; i < labels.length; i++) |
| | | { |
| | | gbc.insets.left = 0; |
| | |
| | | n = attr.getUsage().toString(); |
| | | } |
| | | usage.setText(n); |
| | | ArrayList<String> otherNames = new ArrayList<String>(); |
| | | Iterable<String> ocNames = attr.getNormalizedNames(); |
| | | String primaryName = attr.getPrimaryName(); |
| | | if (primaryName == null) |
| | | Set<String> aliases = getAliases(attr); |
| | | if (!aliases.isEmpty()) |
| | | { |
| | | primaryName = ""; |
| | | } |
| | | for (String name : ocNames) |
| | | { |
| | | if (!name.equalsIgnoreCase(primaryName)) |
| | | { |
| | | otherNames.add(name); |
| | | } |
| | | } |
| | | if (otherNames.size() > 0) |
| | | { |
| | | n = Utilities.getStringFromCollection(otherNames, ", "); |
| | | n = Utilities.getStringFromCollection(aliases, ", "); |
| | | } |
| | | else |
| | | { |
| | | n = NOT_APPLICABLE.toString(); |
| | | } |
| | | aliases.setText(n); |
| | | this.aliases.setText(n); |
| | | syntax.setText(Utilities.getSyntaxText(attr.getSyntax())); |
| | | JLabel[] labels = {approximate, equality, ordering, substring}; |
| | | MatchingRule[] rules = {attr.getApproximateMatchingRule(), |
| | |
| | | } |
| | | return mb.toMessage(); |
| | | } |
| | | |
| | | private void objectClassSelected(JList list) |
| | | { |
| | | String o = (String)list.getSelectedValue(); |
| | | if (o != null) |
| | | { |
| | | Schema schema = getInfo().getServerDescriptor().getSchema(); |
| | | if (schema != null) |
| | | { |
| | | ObjectClass oc = schema.getObjectClass(o.toLowerCase()); |
| | | if (oc != null) |
| | | { |
| | | notifySchemaSelectionListeners(oc); |
| | | } |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | * CDDL HEADER END |
| | | * |
| | | * |
| | | * Copyright 2008 Sun Microsystems, Inc. |
| | | * Copyright 2008-2009 Sun Microsystems, Inc. |
| | | */ |
| | | |
| | | package org.opends.guitools.controlpanel.ui; |
| | |
| | | { |
| | | return GenericDialog.ButtonType.NO_BUTTON; |
| | | } |
| | | |
| | | /** |
| | | * {@inheritDoc} |
| | | */ |
| | | public boolean isDisposeOnClose() |
| | | { |
| | | return true; |
| | | } |
| | | } |
| | | } |
| | | |
| | |
| | | { |
| | | public void run() |
| | | { |
| | | StringBuilder sb = new StringBuilder(); |
| | | sb.append(getConfigCommandLineName()); |
| | | Collection<String> args = |
| | | getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | List<String> args = getObfuscatedCommandLineArguments( |
| | | getDSConfigCommandLineArguments()); |
| | | args.removeAll(getConfigCommandLineArguments()); |
| | | for (String arg : args) |
| | | { |
| | | sb.append(" "+CommandBuilder.escapeValue(arg)); |
| | | } |
| | | getProgressDialog().appendProgressHtml(Utilities.applyFont( |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY_VLV_INDEX.get()+ |
| | | "<br><b>"+sb.toString()+"</b><br><br>", |
| | | ColorAndFontConstants.progressFont)); |
| | | printEquivalentCommandLine(getConfigCommandLineName(), |
| | | args, |
| | | INFO_CTRL_PANEL_EQUIVALENT_CMD_TO_MODIFY_VLV_INDEX.get()); |
| | | } |
| | | }); |
| | | } |