Partial fix for OPENDJ-39: Consider rebranding OpenDS -> OpenDJ in 3.0 tree
Change all references to OpenDS to OpenDJ where appropriate. In particular, do not change schema OID definitions or references in documentation referring to the OpenDS project.
| | |
| | | |
| | | /** |
| | | * This class defines a base test case that should be subclassed by all unit |
| | | * tests used by OpenDS. |
| | | * tests used by OpenDJ. |
| | | * <p> |
| | | * This class adds the ability to print error messages and automatically have |
| | | * them include the class name. |
| | |
| | | _bufferedTestFailures.append(failureInfo); |
| | | |
| | | final String pauseStr = System |
| | | .getProperty("org.opends.test.pauseOnFailure"); |
| | | .getProperty("org.opendj.test.pauseOnFailure"); |
| | | if ((pauseStr != null) && pauseStr.equalsIgnoreCase("true")) |
| | | { |
| | | pauseOnFailure(); |
| | |
| | | { |
| | | final StackTraceElement[] elements = t.getStackTrace(); |
| | | |
| | | int lowestOpenDSFrame; |
| | | for (lowestOpenDSFrame = elements.length - 1; lowestOpenDSFrame >= 0; lowestOpenDSFrame--) |
| | | int lowestOpenDJFrame; |
| | | for (lowestOpenDJFrame = elements.length - 1; lowestOpenDJFrame >= 0; lowestOpenDJFrame--) |
| | | { |
| | | final StackTraceElement element = elements[lowestOpenDSFrame]; |
| | | final StackTraceElement element = elements[lowestOpenDJFrame]; |
| | | final String clsName = element.getClassName(); |
| | | if (clsName.startsWith("org.opends.") |
| | | && !clsName.equals("org.opends.server.SuiteRunner")) |
| | | if (clsName.startsWith("org.opendj.") |
| | | && !clsName.equals("org.opendj.server.SuiteRunner")) |
| | | { |
| | | break; |
| | | } |
| | |
| | | |
| | | final StringBuilder buffer = new StringBuilder(); |
| | | buffer.append(t).append(EOL); |
| | | for (int i = 0; i <= lowestOpenDSFrame; i++) |
| | | for (int i = 0; i <= lowestOpenDJFrame; i++) |
| | | { |
| | | buffer.append(" ").append(elements[i]).append(EOL); |
| | | } |
| | |
| | | if (defaultScheduler == null) |
| | | { |
| | | final ThreadFactory factory = newThreadFactory(null, |
| | | "OpenDS SDK Default Scheduler", true); |
| | | "OpenDJ SDK Default Scheduler", true); |
| | | defaultScheduler = Executors.newSingleThreadScheduledExecutor(factory); |
| | | } |
| | | } |
| | |
| | | |
| | | /** |
| | | * Retrieves the best human-readable message for the provided exception. For |
| | | * exceptions defined in the OpenDS project, it will attempt to use the |
| | | * exceptions defined in the OpenDJ project, it will attempt to use the |
| | | * message (combining it with the message ID if available). For some |
| | | * exceptions that use encapsulation (e.g., InvocationTargetException), it |
| | | * will be unwrapped and the cause will be treated. For all others, the |
| | |
| | | * the Bind request failed because it referenced an invalid SASL mechanism. |
| | | * <li>{@link ResultCode#CLIENT_SIDE_AUTH_UNKNOWN CLIENT_SIDE_AUTH_UNKNOWN} - |
| | | * the Bind request failed because the user requested an authentication |
| | | * mechanism which is unknown or unsupported by the OpenDS SDK. |
| | | * mechanism which is unknown or unsupported by the OpenDJ SDK. |
| | | * <li>{@link ResultCode#INAPPROPRIATE_AUTHENTICATION |
| | | * INAPPROPRIATE_AUTHENTICATION} - the Bind request failed because the requested |
| | | * type of authentication was not appropriate for the targeted entry. |
| | |
| | | * A partial implementation of the get effective rights request control as |
| | | * defined in draft-ietf-ldapext-acl-model. The main differences are: |
| | | * <ul> |
| | | * <li>The response control is not supported. Instead the OpenDS implementation |
| | | * <li>The response control is not supported. Instead the OpenDJ implementation |
| | | * creates attributes containing effective rights information with the entry |
| | | * being returned. |
| | | * <li>The attribute type names are dynamically created. |
| | |
| | | |
| | | |
| | | /** |
| | | * The OpenDS SDK core schema contains standard LDAP RFC schema elements. These |
| | | * The OpenDJ SDK core schema contains standard LDAP RFC schema elements. These |
| | | * include: |
| | | * <ul> |
| | | * <li><a href="http://tools.ietf.org/html/rfc4512">RFC 4512 - Lightweight |
| | |
| | | System.out.println(); |
| | | System.out.println(); |
| | | System.out.println("/**"); |
| | | System.out.println(" * The OpenDS SDK core schema contains standard LDAP " |
| | | System.out.println(" * The OpenDJ SDK core schema contains standard LDAP " |
| | | + "RFC schema elements. These include:"); |
| | | System.out.println(" * <ul>"); |
| | | System.out |
| | |
| | | * entry. |
| | | * <p> |
| | | * Matching rule implementations must extend the |
| | | * <code>MatchingRuleImplementation</code> class so they can be used by OpenDS. |
| | | * <code>MatchingRuleImplementation</code> class so they can be used by OpenDJ. |
| | | * <p> |
| | | * Where ordered sets of names, or extra properties are provided, the ordering |
| | | * will be preserved when the associated fields are accessed via their getters |
| | |
| | | * transferred in the LDAP protocol. |
| | | * <p> |
| | | * Syntax implementations must extend the {@link SyntaxImpl} interface so they |
| | | * can be used by OpenDS to validate attribute values. |
| | | * can be used by OpenDJ to validate attribute values. |
| | | * <p> |
| | | * Where ordered sets of names, or extra properties are provided, the ordering |
| | | * will be preserved when the associated fields are accessed via their getters |
| | |
| | | <html> |
| | | <body> |
| | | The OpenDS SDK for Java provides a high performance easy to use |
| | | The OpenDJ SDK for Java provides a high performance easy to use |
| | | library of classes and interfaces for accessing and implementing |
| | | LDAP Directory Services as defined in <a |
| | | href="http://tools.ietf.org/html/rfc4510">RFC 4510</a>. |
| | | <br> |
| | | <h1>Getting started</h1> |
| | | The following example shows how the OpenDS SDK may be used to |
| | | The following example shows how the OpenDJ SDK may be used to |
| | | connect to a Directory Server, authenticate, and then perform a |
| | | search. The search results are output as LDIF to the standard |
| | | output: |
| | |
| | | INFO_LDAP_CONN_PROMPT_SECURITY_KEYSTORE_PASSWORD=Password for keystore \ |
| | | '%s': |
| | | INFO_LDAP_CONN_PROMPT_SECURITY_CERTIFICATE_NAME=Certificate nickname: |
| | | INFO_LDAP_CONN_HEADING_CONNECTION_PARAMETERS=>>>> Specify OpenDS LDAP \ |
| | | INFO_LDAP_CONN_HEADING_CONNECTION_PARAMETERS=>>>> Specify OpenDJ LDAP \ |
| | | connection parameters |
| | | ERR_LDAP_CONN_BAD_HOST_NAME=The hostname "%s" could not be \ |
| | | resolved. Please check you have provided the correct address |
| | |
| | | INFO_ENCPW_DESCRIPTION_ENCODED_PW_FILE=Encoded password file |
| | | INFO_DESCRIPTION_CONFIG_CLASS=The fully-qualified name of the Java class \ |
| | | to use as the Directory Server configuration handler. If this is not \ |
| | | provided, then a default of org.opends.server.extensions.ConfigFileHandler \ |
| | | provided, then a default of org.opendj.server.extensions.ConfigFileHandler \ |
| | | will be used |
| | | INFO_DESCRIPTION_CONFIG_FILE=Path to the Directory Server \ |
| | | configuration file |
| | |
| | | ERR_CONFIGURE_WINDOWS_SERVICE_TOO_FEW_ARGS=You must provide at \ |
| | | least one of the following arguments:\nenableService, disableService or \ |
| | | serviceState or cleanupService |
| | | INFO_WINDOWS_SERVICE_NAME=OpenDS |
| | | INFO_WINDOWS_SERVICE_NAME=OpenDJ |
| | | INFO_WINDOWS_SERVICE_DESCRIPTION=Open source Next Generation Directory \ |
| | | Server. Installation path: %s |
| | | INFO_WINDOWS_SERVICE_SUCCESSULLY_ENABLED=The server was successfully \ |
| | |
| | | INFO_CREATERC_JAVA_ARGS_DESCRIPTION=A set of arguments that should be \ |
| | | passed to the JVM when running the server |
| | | ERR_CREATERC_JAVA_HOME_DOESNT_EXIST=The directory %s specified \ |
| | | as the OPENDS_JAVA_HOME path does not exist or is not a directory |
| | | as the OPENDJ_JAVA_HOME path does not exist or is not a directory |
| | | INFO_INSTALLDS_STATUS_COMMAND_LINE=To see basic server configuration \ |
| | | status and configuration you can launch %s |
| | | INFO_INSTALLDS_PROMPT_ENABLE_SSL=Do you want to enable SSL? |
| | |
| | | |
| | | |
| | | /** |
| | | * This class defines a set of tests for the org.opends.server.types.ByteString |
| | | * class. |
| | | * This class defines a set of tests for the ByteString class. |
| | | */ |
| | | public class ByteStringTestCase extends ByteSequenceTestCase |
| | | { |
| | |
| | | return new Object[][] { |
| | | { "", "", "" }, |
| | | { "", "dc=org", "dc=org" }, |
| | | { "", "dc=opends,dc=org", "dc=opends,dc=org" }, |
| | | { "", "dc=opendj,dc=org", "dc=opendj,dc=org" }, |
| | | { "dc=org", "", "dc=org" }, |
| | | { "dc=org", "dc=opends", "dc=opends,dc=org" }, |
| | | { "dc=org", "dc=foo,dc=opends", "dc=foo,dc=opends,dc=org" }, |
| | | { "dc=opends,dc=org", "", "dc=opends,dc=org" }, |
| | | { "dc=opends,dc=org", "dc=foo", "dc=foo,dc=opends,dc=org" }, |
| | | { "dc=opends,dc=org", "dc=bar,dc=foo", "dc=bar,dc=foo,dc=opends,dc=org" }, }; |
| | | { "dc=org", "dc=opendj", "dc=opendj,dc=org" }, |
| | | { "dc=org", "dc=foo,dc=opendj", "dc=foo,dc=opendj,dc=org" }, |
| | | { "dc=opendj,dc=org", "", "dc=opendj,dc=org" }, |
| | | { "dc=opendj,dc=org", "dc=foo", "dc=foo,dc=opendj,dc=org" }, |
| | | { "dc=opendj,dc=org", "dc=bar,dc=foo", "dc=bar,dc=foo,dc=opendj,dc=org" }, }; |
| | | } |
| | | |
| | | |
| | |
| | | public Object[][] createChildRDNTestData() |
| | | { |
| | | return new Object[][] { { "", "dc=org", "dc=org" }, |
| | | { "dc=org", "dc=opends", "dc=opends,dc=org" }, |
| | | { "dc=opends,dc=org", "dc=foo", "dc=foo,dc=opends,dc=org" }, }; |
| | | { "dc=org", "dc=opendj", "dc=opendj,dc=org" }, |
| | | { "dc=opendj,dc=org", "dc=foo", "dc=foo,dc=opendj,dc=org" }, }; |
| | | } |
| | | |
| | | |
| | |
| | | public Object[][] createIsChildOfTestData() |
| | | { |
| | | return new Object[][] { { "", "", false }, { "", "dc=org", false }, |
| | | { "", "dc=opends,dc=org", false }, |
| | | { "", "dc=foo,dc=opends,dc=org", false }, { "dc=org", "", true }, |
| | | { "dc=org", "dc=org", false }, { "dc=org", "dc=opends,dc=org", false }, |
| | | { "dc=org", "dc=foo,dc=opends,dc=org", false }, |
| | | { "dc=opends,dc=org", "", false }, |
| | | { "dc=opends,dc=org", "dc=org", true }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=org", false }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=opends,dc=org", false }, |
| | | { "dc=foo,dc=opends,dc=org", "", false }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=org", false }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=opends,dc=org", true }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=foo,dc=opends,dc=org", false }, |
| | | { "", "dc=opendj,dc=org", false }, |
| | | { "", "dc=foo,dc=opendj,dc=org", false }, { "dc=org", "", true }, |
| | | { "dc=org", "dc=org", false }, { "dc=org", "dc=opendj,dc=org", false }, |
| | | { "dc=org", "dc=foo,dc=opendj,dc=org", false }, |
| | | { "dc=opendj,dc=org", "", false }, |
| | | { "dc=opendj,dc=org", "dc=org", true }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=org", false }, |
| | | { "dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=org", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=opendj,dc=org", true }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", false }, |
| | | { "dc=org", "dc=com", false }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=com", false }, }; |
| | | { "dc=opendj,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=com", false }, }; |
| | | } |
| | | |
| | | |
| | |
| | | public Object[][] createNumComponentsTestData() |
| | | { |
| | | return new Object[][] { { "", 0 }, { "dc=com", 1 }, |
| | | { "dc=opends,dc=com", 2 }, { "dc=world,dc=opends,dc=com", 3 }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", 4 }, }; |
| | | { "dc=opendj,dc=com", 2 }, { "dc=world,dc=opendj,dc=com", 3 }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", 4 }, }; |
| | | } |
| | | |
| | | |
| | |
| | | return new Object[][] { |
| | | { "", null, null }, |
| | | { "dc=com", "", "dc=com" }, |
| | | { "dc=opends,dc=com", "dc=com", "dc=opends" }, |
| | | { "dc=world,dc=opends,dc=com", "dc=opends,dc=com", "dc=world" }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", "dc=world,dc=opends,dc=com", |
| | | { "dc=opendj,dc=com", "dc=com", "dc=opendj" }, |
| | | { "dc=world,dc=opendj,dc=com", "dc=opendj,dc=com", "dc=world" }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", "dc=world,dc=opendj,dc=com", |
| | | "dc=hello" }, }; |
| | | } |
| | | |
| | |
| | | public Object[][] createRDNTestData() |
| | | { |
| | | return new Object[][] { { "dc=com", 0, "dc=com" }, |
| | | { "dc=opends,dc=com", 0, "dc=opends" }, |
| | | { "dc=opends,dc=com", 1, "dc=com" }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", 0, "dc=hello" }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", 1, "dc=world" }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", 2, "dc=opends" }, |
| | | { "dc=hello,dc=world,dc=opends,dc=com", 3, "dc=com" }, }; |
| | | { "dc=opendj,dc=com", 0, "dc=opendj" }, |
| | | { "dc=opendj,dc=com", 1, "dc=com" }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", 0, "dc=hello" }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", 1, "dc=world" }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", 2, "dc=opendj" }, |
| | | { "dc=hello,dc=world,dc=opendj,dc=com", 3, "dc=com" }, }; |
| | | } |
| | | |
| | | |
| | |
| | | public Object[][] createSubordinateTestData() |
| | | { |
| | | return new Object[][] { { "", "", true }, { "", "dc=org", false }, |
| | | { "", "dc=opends,dc=org", false }, |
| | | { "", "dc=foo,dc=opends,dc=org", false }, { "dc=org", "", true }, |
| | | { "dc=org", "dc=org", true }, { "dc=org", "dc=opends,dc=org", false }, |
| | | { "dc=org", "dc=foo,dc=opends,dc=org", false }, |
| | | { "dc=opends,dc=org", "", true }, |
| | | { "dc=opends,dc=org", "dc=org", true }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=org", true }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=opends,dc=org", false }, |
| | | { "dc=foo,dc=opends,dc=org", "", true }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=org", true }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=opends,dc=org", true }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=foo,dc=opends,dc=org", true }, |
| | | { "", "dc=opendj,dc=org", false }, |
| | | { "", "dc=foo,dc=opendj,dc=org", false }, { "dc=org", "", true }, |
| | | { "dc=org", "dc=org", true }, { "dc=org", "dc=opendj,dc=org", false }, |
| | | { "dc=org", "dc=foo,dc=opendj,dc=org", false }, |
| | | { "dc=opendj,dc=org", "", true }, |
| | | { "dc=opendj,dc=org", "dc=org", true }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=org", true }, |
| | | { "dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "", true }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=org", true }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=opendj,dc=org", true }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", true }, |
| | | { "dc=org", "dc=com", false }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=com", false }, }; |
| | | { "dc=opendj,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=com", false }, }; |
| | | } |
| | | |
| | | |
| | |
| | | public Object[][] createSuperiorTestData() |
| | | { |
| | | return new Object[][] { { "", "", true }, { "", "dc=org", true }, |
| | | { "", "dc=opends,dc=org", true }, |
| | | { "", "dc=foo,dc=opends,dc=org", true }, { "dc=org", "", false }, |
| | | { "dc=org", "dc=org", true }, { "dc=org", "dc=opends,dc=org", true }, |
| | | { "dc=org", "dc=foo,dc=opends,dc=org", true }, |
| | | { "dc=opends,dc=org", "", false }, |
| | | { "dc=opends,dc=org", "dc=org", false }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=org", true }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=opends,dc=org", true }, |
| | | { "dc=foo,dc=opends,dc=org", "", false }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=org", false }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=opends,dc=org", false }, |
| | | { "dc=foo,dc=opends,dc=org", "dc=foo,dc=opends,dc=org", true }, |
| | | { "", "dc=opendj,dc=org", true }, |
| | | { "", "dc=foo,dc=opendj,dc=org", true }, { "dc=org", "", false }, |
| | | { "dc=org", "dc=org", true }, { "dc=org", "dc=opendj,dc=org", true }, |
| | | { "dc=org", "dc=foo,dc=opendj,dc=org", true }, |
| | | { "dc=opendj,dc=org", "", false }, |
| | | { "dc=opendj,dc=org", "dc=org", false }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=org", true }, |
| | | { "dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", true }, |
| | | { "dc=foo,dc=opendj,dc=org", "", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=org", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=opendj,dc=org", false }, |
| | | { "dc=foo,dc=opendj,dc=org", "dc=foo,dc=opendj,dc=org", true }, |
| | | { "dc=org", "dc=com", false }, |
| | | { "dc=opends,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opends,dc=org", "dc=opends,dc=com", false }, }; |
| | | { "dc=opendj,dc=org", "dc=foo,dc=org", false }, |
| | | { "dc=opendj,dc=org", "dc=opendj,dc=com", false }, }; |
| | | } |
| | | |
| | | |
| | |
| | | @Test |
| | | public void testChildDNInteraction() throws Exception |
| | | { |
| | | final DN p = DN.valueOf("dc=opends,dc=org"); |
| | | final DN p = DN.valueOf("dc=opendj,dc=org"); |
| | | final DN l = DN.valueOf("dc=foo"); |
| | | final DN e = DN.valueOf("dc=foo,dc=opends,dc=org"); |
| | | final DN e = DN.valueOf("dc=foo,dc=opendj,dc=org"); |
| | | final DN c = p.child(l); |
| | | |
| | | assertEquals(c.size(), 3); |
| | |
| | | |
| | | assertEquals(c.rdn(), RDN.valueOf("dc=foo")); |
| | | |
| | | assertEquals(c.parent(), DN.valueOf("dc=opends,dc=org")); |
| | | assertEquals(c.parent(), DN.valueOf("dc=opendj,dc=org")); |
| | | assertEquals(c.parent(), e.parent()); |
| | | |
| | | assertEquals(c.child(RDN.valueOf("dc=xxx")), DN |
| | | .valueOf("dc=xxx,dc=foo,dc=opends,dc=org")); |
| | | .valueOf("dc=xxx,dc=foo,dc=opendj,dc=org")); |
| | | assertEquals(c.child(DN.valueOf("dc=xxx,dc=yyy")), DN |
| | | .valueOf("dc=xxx,dc=yyy,dc=foo,dc=opends,dc=org")); |
| | | .valueOf("dc=xxx,dc=yyy,dc=foo,dc=opendj,dc=org")); |
| | | } |
| | | |
| | | |
| | |
| | | @Test |
| | | public void testParentInteraction() throws Exception |
| | | { |
| | | final DN c = DN.valueOf("dc=foo,dc=bar,dc=opends,dc=org"); |
| | | final DN e = DN.valueOf("dc=bar,dc=opends,dc=org"); |
| | | final DN c = DN.valueOf("dc=foo,dc=bar,dc=opendj,dc=org"); |
| | | final DN e = DN.valueOf("dc=bar,dc=opendj,dc=org"); |
| | | final DN p = c.parent(); |
| | | |
| | | assertEquals(p.size(), 3); |
| | |
| | | |
| | | assertEquals(p.rdn(), RDN.valueOf("dc=bar")); |
| | | |
| | | assertEquals(p.parent(), DN.valueOf("dc=opends,dc=org")); |
| | | assertEquals(p.parent(), DN.valueOf("dc=opendj,dc=org")); |
| | | assertEquals(p.parent(), e.parent()); |
| | | |
| | | assertEquals(p.child(RDN.valueOf("dc=foo")), DN |
| | | .valueOf("dc=foo,dc=bar,dc=opends,dc=org")); |
| | | .valueOf("dc=foo,dc=bar,dc=opendj,dc=org")); |
| | | assertEquals(p.child(RDN.valueOf("dc=foo")), c); |
| | | assertEquals(p.child(DN.valueOf("dc=xxx,dc=foo")), DN |
| | | .valueOf("dc=xxx,dc=foo,dc=bar,dc=opends,dc=org")); |
| | | .valueOf("dc=xxx,dc=foo,dc=bar,dc=opendj,dc=org")); |
| | | } |
| | | |
| | | |
| | |
| | | // org bytestring. |
| | | private static final ByteString ORG = ByteString.valueOf("org"); |
| | | |
| | | // opends bytestring. |
| | | private static final ByteString OPENDS = ByteString.valueOf("opends"); |
| | | // opendj bytestring. |
| | | private static final ByteString OPENDJ = ByteString.valueOf("opendj"); |
| | | |
| | | |
| | | |
| | |
| | | @Test |
| | | public void testGetAttributeName() throws Exception |
| | | { |
| | | final RDN rdn = RDN.valueOf("dc=opends+cn=org"); |
| | | final RDN rdn = RDN.valueOf("dc=opendj+cn=org"); |
| | | assertTrue(rdn.isMultiValued()); |
| | | assertEquals(rdn.size(), 2); |
| | | final Iterator<AVA> it = rdn.iterator(); |
| | |
| | | * property when running the server if you want to use a given port number, |
| | | * otherwise a port is chosen randomly at test startup time. |
| | | */ |
| | | public static final String PROPERTY_LDAP_PORT = "org.opends.server.LdapPort"; |
| | | public static final String PROPERTY_LDAP_PORT = "org.opendj.server.LdapPort"; |
| | | |
| | | /** |
| | | * Port number that's used by the server. Need to be used by the test cases to |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.AuthRate" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.AuthRate" |
| | | set SCRIPT_NAME=authrate |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPCompare" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPCompare" |
| | | set SCRIPT_NAME=ldapcompare |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPModify" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPModify" |
| | | set SCRIPT_NAME=ldapmodify |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPPasswordModify" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPPasswordModify" |
| | | set SCRIPT_NAME=ldappasswordmodify |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPSearch" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPSearch" |
| | | set SCRIPT_NAME=ldapsearch |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.ModRate" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.ModRate" |
| | | set SCRIPT_NAME=modrate |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | setlocal |
| | | |
| | | set OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.SearchRate" |
| | | set OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.SearchRate" |
| | | set SCRIPT_NAME=searchrate |
| | | for %%i in (%~sf0) do call "%%~dPsi\..\lib\_client-script.bat" %* |
| | | |
| | |
| | | |
| | | |
| | | # This script may be used to measure auth performance. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.AuthRate" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.AuthRate" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="authrate" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | |
| | | # This script may be used to perform LDAP compare operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPCompare" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPCompare" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="ldapcompare" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | # This script may be used to perform LDAP add, delete, modify, and modify DN |
| | | # operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPModify" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPModify" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="ldapmodify" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | |
| | | # This script may be used to perform LDAP password modify operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPPasswordModify" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPPasswordModify" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="ldappasswordmodify" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | |
| | | # This script may be used to perform LDAP search operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPSearch" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.LDAPSearch" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="ldapsearch" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | |
| | | # This script may be used to perform LDAP search operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.ModRate" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.ModRate" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="modrate" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | |
| | | # This script may be used to perform LDAP search operations. |
| | | OPENDS_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.SearchRate" |
| | | export OPENDS_INVOKE_CLASS |
| | | OPENDJ_INVOKE_CLASS="com.forgerock.opendj.ldap.tools.SearchRate" |
| | | export OPENDJ_INVOKE_CLASS |
| | | |
| | | SCRIPT_NAME="searchrate" |
| | | export SCRIPT_NAME |
| | |
| | | |
| | | if "%NO_CHECK%" == "" set NO_CHECK=true |
| | | |
| | | if "%OPENDS_INVOKE_CLASS%" == "" goto noInvokeClass |
| | | if "%OPENDJ_INVOKE_CLASS%" == "" goto noInvokeClass |
| | | goto launchCommand |
| | | |
| | | :noInvokeClass |
| | | echo Error: OPENDS_INVOKE_CLASS environment variable is not set. |
| | | echo Error: OPENDJ_INVOKE_CLASS environment variable is not set. |
| | | pause |
| | | goto end |
| | | |
| | |
| | | call "%INSTALL_ROOT%\lib\_script-util.bat" $* |
| | | if NOT %errorlevel% == 0 exit /B %errorlevel% |
| | | |
| | | "%OPENDS_JAVA_BIN%" %OPENDS_JAVA_ARGS% %SCRIPT_NAME_ARG% %OPENDS_INVOKE_CLASS% %* |
| | | "%OPENDJ_JAVA_BIN%" %OPENDJ_JAVA_ARGS% %SCRIPT_NAME_ARG% %OPENDJ_INVOKE_CLASS% %* |
| | | |
| | | :end |
| | | |
| | |
| | | if "%SET_JAVA_HOME_AND_ARGS_DONE%" == "true" goto prepareCheck |
| | | if not exist "%INSTANCE_ROOT%\lib\set-java-home.bat" goto checkEnvJavaArgs |
| | | call "%INSTANCE_ROOT%\lib\set-java-home.bat" |
| | | if "%OPENDS_JAVA_BIN%" == "" goto checkEnvJavaArgs |
| | | if "%OPENDJ_JAVA_BIN%" == "" goto checkEnvJavaArgs |
| | | :endJavaHomeAndArgs |
| | | set SET_JAVA_HOME_AND_ARGS_DONE=true |
| | | goto scriptBegin |
| | | |
| | | :checkEnvJavaArgs |
| | | if "%OPENDS_JAVA_BIN%" == "" goto checkOpenDSJavaHome |
| | | if not exist "%OPENDS_JAVA_BIN%" goto checkOpenDSJavaHome |
| | | if "%OPENDJ_JAVA_BIN%" == "" goto checkOpenDJJavaHome |
| | | if not exist "%OPENDJ_JAVA_BIN%" goto checkOpenDJJavaHome |
| | | goto endJavaHomeAndArgs |
| | | |
| | | :checkOpenDSJavaHome |
| | | if "%OPENDS_JAVA_HOME%" == "" goto checkJavaBin |
| | | if not exist "%OPENDS_JAVA_HOME%\bin\java.exe" goto checkJavaBin |
| | | set OPENDS_JAVA_BIN=%OPENDS_JAVA_HOME%\bin\java.exe |
| | | :checkOpenDJJavaHome |
| | | if "%OPENDJ_JAVA_HOME%" == "" goto checkJavaBin |
| | | if not exist "%OPENDJ_JAVA_HOME%\bin\java.exe" goto checkJavaBin |
| | | set OPENDJ_JAVA_BIN=%OPENDJ_JAVA_HOME%\bin\java.exe |
| | | goto endJavaHomeAndArgs |
| | | |
| | | :checkJavaBin |
| | | if "%JAVA_BIN%" == "" goto checkJavaHome |
| | | if not exist "%JAVA_BIN%" goto checkJavaHome |
| | | set OPENDS_JAVA_BIN=%JAVA_BIN% |
| | | set OPENDJ_JAVA_BIN=%JAVA_BIN% |
| | | goto endJavaHomeAndArgs |
| | | |
| | | :checkJavaHome |
| | | if "%JAVA_HOME%" == "" goto checkJavaPath |
| | | if not exist "%JAVA_HOME%\bin\java.exe" goto noJavaFound |
| | | set OPENDS_JAVA_BIN=%JAVA_HOME%\bin\java.exe |
| | | set OPENDJ_JAVA_BIN=%JAVA_HOME%\bin\java.exe |
| | | goto endJavaHomeAndArgs |
| | | |
| | | :checkJavaPath |
| | | java.exe -version > NUL 2>&1 |
| | | if not %errorlevel% == 0 goto noJavaFound |
| | | set OPENDS_JAVA_BIN=java.exe |
| | | set OPENDJ_JAVA_BIN=java.exe |
| | | goto endJavaHomeAndArgs |
| | | |
| | | :noJavaFound |
| | |
| | | echo You must specify the path to a valid Java 5.0 or higher version. |
| | | echo The procedure to follow is: |
| | | echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists. |
| | | echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid |
| | | echo 2. Set the environment variable OPENDJ_JAVA_HOME to the root of a valid |
| | | echo Java 5.0 installation. |
| | | echo If you want to have specific Java settings for each command line you must |
| | | echo follow the steps 3 and 4. |
| | |
| | | goto scriptBegin |
| | | |
| | | :noValidJavaHome |
| | | if NOT "%OPENDS_JAVA_ARGS%" == "" goto noValidHomeWithArgs |
| | | if NOT "%OPENDJ_JAVA_ARGS%" == "" goto noValidHomeWithArgs |
| | | echo ERROR: The detected Java version could not be used. The detected |
| | | echo Java binary is: |
| | | echo %OPENDS_JAVA_BIN% |
| | | echo %OPENDJ_JAVA_BIN% |
| | | echo You must specify the path to a valid Java 5.0 or higher version. |
| | | echo The procedure to follow is: |
| | | echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists. |
| | | echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid |
| | | echo 2. Set the environment variable OPENDJ_JAVA_HOME to the root of a valid |
| | | echo Java 5.0 installation. |
| | | echo If you want to have specific Java settings for each command line you must |
| | | echo follow the steps 3 and 4. |
| | |
| | | :notSupportedJavaHome |
| | | rem We get here when the java version is 5 (or up) but not supported. We run |
| | | rem InstallDS again to see a localized message. |
| | | "%OPENDS_JAVA_BIN%" %OPENDS_JAVA_ARGS% org.opends.server.tools.InstallDS -t |
| | | "%OPENDJ_JAVA_BIN%" %OPENDJ_JAVA_ARGS% org.opendj.server.tools.InstallDS -t |
| | | pause |
| | | exit /B 1 |
| | | |
| | | :noValidHomeWithArgs |
| | | echo ERROR: The detected Java version could not be used with the set of Java |
| | | echo arguments %OPENDS_JAVA_ARGS%. |
| | | echo arguments %OPENDJ_JAVA_ARGS%. |
| | | echo The detected Java binary is: |
| | | echo %OPENDS_JAVA_BIN% |
| | | echo %OPENDJ_JAVA_BIN% |
| | | echo You must specify the path to a valid Java 5.0 or higher version. |
| | | echo The procedure to follow is: |
| | | echo 1. Delete the file %INSTANCE_ROOT%\lib\set-java-home.bat if it exists. |
| | | echo 2. Set the environment variable OPENDS_JAVA_HOME to the root of a valid |
| | | echo 2. Set the environment variable OPENDJ_JAVA_HOME to the root of a valid |
| | | echo Java 5.0 installation. |
| | | echo If you want to have specific Java settings for each command line you must |
| | | echo follow the steps 3 and 4. |
| | |
| | | |
| | | # This script is used to invoke various client-side processes. It should not |
| | | # be invoked directly by end users. |
| | | if test -z "${OPENDS_INVOKE_CLASS}" |
| | | if test -z "${OPENDJ_INVOKE_CLASS}" |
| | | then |
| | | echo "ERROR: OPENDS_INVOKE_CLASS environment variable is not set." |
| | | echo "ERROR: OPENDJ_INVOKE_CLASS environment variable is not set." |
| | | exit 1 |
| | | fi |
| | | |
| | |
| | | fi |
| | | |
| | | # Launch the appropriate client utility. |
| | | "${OPENDS_JAVA_BIN}" ${OPENDS_JAVA_ARGS} ${SCRIPT_NAME_ARG} "${OPENDS_INVOKE_CLASS}" "${@}" |
| | | "${OPENDJ_JAVA_BIN}" ${OPENDJ_JAVA_ARGS} ${SCRIPT_NAME_ARG} "${OPENDJ_INVOKE_CLASS}" "${@}" |
| | |
| | | then |
| | | . "${INSTANCE_ROOT}/lib/set-java-home" |
| | | fi |
| | | if test -z "${OPENDS_JAVA_BIN}" |
| | | if test -z "${OPENDJ_JAVA_BIN}" |
| | | then |
| | | if test -z "${OPENDS_JAVA_HOME}" |
| | | if test -z "${OPENDJ_JAVA_HOME}" |
| | | then |
| | | if test -z "${JAVA_BIN}" |
| | | then |
| | | if test -z "${JAVA_HOME}" |
| | | then |
| | | OPENDS_JAVA_BIN=`which java 2> /dev/null` |
| | | OPENDJ_JAVA_BIN=`which java 2> /dev/null` |
| | | if test ${?} -eq 0 |
| | | then |
| | | export OPENDS_JAVA_BIN |
| | | export OPENDJ_JAVA_BIN |
| | | else |
| | | echo "Please set OPENDS_JAVA_HOME to the root of a Java 5 (or later) installation" |
| | | echo "Please set OPENDJ_JAVA_HOME to the root of a Java 5 (or later) installation" |
| | | echo "or edit the java.properties file and then run the dsjavaproperties script to" |
| | | echo "specify the Java version to be used" |
| | | exit 1 |
| | | fi |
| | | else |
| | | OPENDS_JAVA_BIN="${JAVA_HOME}/bin/java" |
| | | export OPENDS_JAVA_BIN |
| | | OPENDJ_JAVA_BIN="${JAVA_HOME}/bin/java" |
| | | export OPENDJ_JAVA_BIN |
| | | fi |
| | | else |
| | | OPENDS_JAVA_BIN="${JAVA_BIN}" |
| | | export OPENDS_JAVA_BIN |
| | | OPENDJ_JAVA_BIN="${JAVA_BIN}" |
| | | export OPENDJ_JAVA_BIN |
| | | fi |
| | | else |
| | | OPENDS_JAVA_BIN="${OPENDS_JAVA_HOME}/bin/java" |
| | | export OPENDS_JAVA_BIN |
| | | OPENDJ_JAVA_BIN="${OPENDJ_JAVA_HOME}/bin/java" |
| | | export OPENDJ_JAVA_BIN |
| | | fi |
| | | fi |
| | | } |
| | |
| | | { |
| | | KeyManagerFactory kmf = null; |
| | | String userSpecifiedAlgo = System |
| | | .getProperty("org.opends.admin.keymanageralgo"); |
| | | .getProperty("org.opendj.admin.keymanageralgo"); |
| | | String userSpecifiedProvider = System |
| | | .getProperty("org.opends.admin.keymanagerprovider"); |
| | | .getProperty("org.opendj.admin.keymanagerprovider"); |
| | | |
| | | // Handle IBM specific cases if the user did not specify a algorithm |
| | | // and/or provider. |
| | |
| | | /** |
| | | * Class for organizing options into logical groups when arguement usage is |
| | | * printed. To use an argument group, create an instance and use |
| | | * {@link org.opends.server.util.args.ArgumentParser #addArgument(Argument, ArgumentGroup)} |
| | | * {@link org.opendj.server.util.args.ArgumentParser #addArgument(Argument, ArgumentGroup)} |
| | | * when adding arguments for to the parser. |
| | | */ |
| | | final class ArgumentGroup implements Comparable<ArgumentGroup> |
| | |
| | | // information. |
| | | private Argument usageArgument; |
| | | |
| | | // The argument that will be used to trigger the display of the OpenDS |
| | | // The argument that will be used to trigger the display of the OpenDJ |
| | | // version. |
| | | private Argument versionArgument; |
| | | |
| | |
| | | } |
| | | else |
| | | { |
| | | // Check in "user home"/.opends directory |
| | | // Check in "user home"/.opendj directory |
| | | final String userDir = System.getProperty("user.home"); |
| | | propertiesFilePath = findPropertiesFile(userDir + File.separator |
| | | + DEFAULT_OPENDS_CONFIG_DIR); |
| | | |
| | | // TODO |
| | | /* |
| | | * if (propertiesFilePath == null) { // check "Opends instance"/config |
| | | * directory String instanceDir = DirectoryServer.getInstanceRoot(); |
| | | * propertiesFilePath = findPropertiesFile(instanceDir+ File.separator + |
| | | * "config"); } |
| | | */ |
| | | + DEFAULT_OPENDJ_CONFIG_DIR); |
| | | } |
| | | |
| | | // We don't have a properties file location |
| | |
| | | private String findPropertiesFile(final String directory) |
| | | { |
| | | // Look for the tools properties file |
| | | final File f = new File(directory, DEFAULT_OPENDS_PROPERTIES_FILE_NAME |
| | | + DEFAULT_OPENDS_PROPERTIES_FILE_EXTENSION); |
| | | final File f = new File(directory, DEFAULT_OPENDJ_PROPERTIES_FILE_NAME |
| | | + DEFAULT_OPENDJ_PROPERTIES_FILE_EXTENSION); |
| | | if (f.exists() && f.canRead()) |
| | | { |
| | | return f.getAbsolutePath(); |
| | |
| | | defaultWorkerThreadPool = GrizzlyExecutorService |
| | | .createInstance(ThreadPoolConfig.defaultConfig() |
| | | .setMemoryManager(defaultMemoryManager).setCorePoolSize(threads) |
| | | .setMaxPoolSize(threads).setPoolName("OpenDS SDK Worker(Grizzly)")); |
| | | .setMaxPoolSize(threads).setPoolName("OpenDJ SDK Worker(Grizzly)")); |
| | | |
| | | // Copied from NIOTransportFactory. |
| | | defaultSelectorHandler = new DefaultSelectorHandler(); |
| | |
| | | .getLogger(PromptingTrustManager.class.getName()); |
| | | |
| | | static private final String DEFAULT_PATH = System.getProperty("user.home") |
| | | + File.separator + ".opends" + File.separator + "keystore"; |
| | | + File.separator + ".opendj" + File.separator + "keystore"; |
| | | |
| | | static private final char[] DEFAULT_PASSWORD = "OpenDS".toCharArray(); |
| | | static private final char[] DEFAULT_PASSWORD = "OpenDJ".toCharArray(); |
| | | |
| | | private final KeyStore inMemoryTrustStore; |
| | | |
| | |
| | | static final String SASL_PROPERTY_MECH = "mech"; |
| | | |
| | | /** |
| | | * The name of the opends configuration direction in the user home directory. |
| | | * The name of the opendj configuration direction in the user home directory. |
| | | */ |
| | | static final String DEFAULT_OPENDS_CONFIG_DIR = ".opends"; |
| | | static final String DEFAULT_OPENDJ_CONFIG_DIR = ".opendj"; |
| | | |
| | | /** |
| | | * The default properties file name. |
| | | */ |
| | | static final String DEFAULT_OPENDS_PROPERTIES_FILE_NAME = "tools"; |
| | | static final String DEFAULT_OPENDJ_PROPERTIES_FILE_NAME = "tools"; |
| | | |
| | | /** |
| | | * The default properties file extension. |
| | | */ |
| | | static final String DEFAULT_OPENDS_PROPERTIES_FILE_EXTENSION = ".properties"; |
| | | static final String DEFAULT_OPENDJ_PROPERTIES_FILE_EXTENSION = ".properties"; |
| | | |
| | | /** |
| | | * The value for the short option batchFilePath. |
| | |
| | | */ |
| | | |
| | | /** |
| | | * Classes implementing the OpenDS SDK client tools. |
| | | * Classes implementing the OpenDJ SDK client tools. |
| | | */ |
| | | package com.forgerock.opendj.ldap.tools; |
| | | |
| | |
| | | // If your LDAP server is not listening on localhost:1389, or if your |
| | | // data are different change the appropriate lines below. |
| | | |
| | | import org.opends.sdk.*; |
| | | import org.opends.sdk.ldif.*; |
| | | import org.opends.sdk.responses.*; |
| | | import org.opendj.sdk.*; |
| | | import org.opendj.sdk.ldif.*; |
| | | import org.opendj.sdk.responses.*; |
| | | |
| | | class Test |
| | | { |
| | |
| | | |
| | | <screen width='80'>$ /path/to/OpenDJ-<?eval ${project.version}?>/bin/status |
| | | |
| | | >>>> Specify OpenDS LDAP connection parameters |
| | | >>>> Specify OpenDJ LDAP connection parameters |
| | | |
| | | Administrator user bind DN [cn=Directory Manager]: |
| | | |