* @throws ArgumentException if there was an error creating or adding the
* arguments. If this occurs is likely to be a bug.
*/
public void initializeArguments() throws ArgumentException
{
testOnlyArg = new BooleanArgument(
"testOnly".toLowerCase(), 't', "testOnly",
INFO_INSTALLDS_DESCRIPTION_TESTONLY.get());
testOnlyArg.setHidden(true);
testOnlyArg.setPropertyName("testOnly");
addArgument(testOnlyArg);
cliArg = new BooleanArgument(
OPTION_LONG_CLI.toLowerCase(),
OPTION_SHORT_CLI,
OPTION_LONG_CLI,
INFO_INSTALLDS_DESCRIPTION_CLI.get());
cliArg.setPropertyName(OPTION_LONG_CLI);
addArgument(cliArg);
configFileArg = new StringArgument(
"configFile".toLowerCase(), 'c', "configFile", false,
false, true, INFO_CONFIGFILE_PLACEHOLDER.get(), getDefaultConfigFile(),
"configFile",
INFO_DESCRIPTION_CONFIG_FILE.get());
configFileArg.setHidden(true);
addArgument(configFileArg);
configClassArg = new StringArgument(
OPTION_LONG_CONFIG_CLASS.toLowerCase(), OPTION_SHORT_CONFIG_CLASS,
OPTION_LONG_CONFIG_CLASS, false,
false, true, INFO_CONFIGCLASS_PLACEHOLDER.get(),
ConfigFileHandler.class.getName(), OPTION_LONG_CONFIG_CLASS,
INFO_DESCRIPTION_CONFIG_CLASS.get());
configClassArg.setHidden(true);
addArgument(configClassArg);
String defaultProgName;
if (SetupUtils.isWindows())
{
defaultProgName = Installation.WINDOWS_SETUP_FILE_NAME;
}
else
{
defaultProgName = Installation.UNIX_SETUP_FILE_NAME;
}
progNameArg = new StringArgument(
"programName".toLowerCase(), 'P', "programName", false,
false, true, INFO_PROGRAM_NAME_PLACEHOLDER.get(), defaultProgName,
"programName", INFO_INSTALLDS_DESCRIPTION_PROGNAME.get());
progNameArg.setHidden(true);
addArgument(progNameArg);
noPromptArg = new BooleanArgument(
OPTION_LONG_NO_PROMPT.toLowerCase(),
OPTION_SHORT_NO_PROMPT,
OPTION_LONG_NO_PROMPT,
INFO_INSTALLDS_DESCRIPTION_NO_PROMPT.get());
noPromptArg.setPropertyName(OPTION_LONG_NO_PROMPT);
addArgument(noPromptArg);
quietArg = new BooleanArgument(
OPTION_LONG_QUIET.toLowerCase(), OPTION_SHORT_QUIET,
OPTION_LONG_QUIET,
INFO_INSTALLDS_DESCRIPTION_SILENT.get());
quietArg.setPropertyName(OPTION_LONG_QUIET);
addArgument(quietArg);
verboseArg = new BooleanArgument(OPTION_LONG_VERBOSE.toLowerCase(),
OPTION_SHORT_VERBOSE,
OPTION_LONG_VERBOSE, INFO_DESCRIPTION_VERBOSE.get());
addArgument(verboseArg);
propertiesFileArgument = new StringArgument(
OPTION_LONG_PROP_FILE_PATH.toLowerCase(), null,
OPTION_LONG_PROP_FILE_PATH, false,
false, true, INFO_PROP_FILE_PATH_PLACEHOLDER.get(), null, null,
INFO_DESCRIPTION_PROP_FILE_PATH.get());
addArgument(propertiesFileArgument);
setFilePropertiesArgument(propertiesFileArgument);
noPropertiesFileArgument = new BooleanArgument(
OPTION_LONG_NO_PROP_FILE.toLowerCase(), null, OPTION_LONG_NO_PROP_FILE,
INFO_DESCRIPTION_NO_PROP_FILE.get());
addArgument(noPropertiesFileArgument);
setNoPropertiesFileArgument(noPropertiesFileArgument);
baseDNArg = new StringArgument(
OPTION_LONG_BASEDN.toLowerCase(), OPTION_SHORT_BASEDN,
OPTION_LONG_BASEDN, false, true, true,
INFO_BASEDN_PLACEHOLDER.get(),
"dc=example,dc=com", OPTION_LONG_BASEDN,
INFO_INSTALLDS_DESCRIPTION_BASEDN.get());
addArgument(baseDNArg);
addBaseEntryArg = new BooleanArgument(
"addBaseEntry".toLowerCase(), 'a', "addBaseEntry",
INFO_INSTALLDS_DESCRIPTION_ADDBASE.get());
addBaseEntryArg.setPropertyName("addBaseEntry");
addArgument(addBaseEntryArg);
importLDIFArg = new StringArgument(
OPTION_LONG_LDIF_FILE.toLowerCase(), OPTION_SHORT_LDIF_FILE,
OPTION_LONG_LDIF_FILE, false,
true, true, INFO_LDIFFILE_PLACEHOLDER.get(),
null, OPTION_LONG_LDIF_FILE,
INFO_INSTALLDS_DESCRIPTION_IMPORTLDIF.get());
addArgument(importLDIFArg);
rejectedImportFileArg = new StringArgument(
"rejectFile".toLowerCase(), 'R', "rejectFile", false, false,
true, INFO_REJECT_FILE_PLACEHOLDER.get(), null, "rejectFile",
INFO_INSTALLDS_DESCRIPTION_REJECTED_FILE.get());
addArgument(rejectedImportFileArg);
skippedImportFileArg = new StringArgument(
"skipFile".toLowerCase(), null, "skipFile", false, false,
true, INFO_SKIP_FILE_PLACEHOLDER.get(), null, "skipFile",
INFO_INSTALLDS_DESCRIPTION_SKIPPED_FILE.get());
addArgument(skippedImportFileArg);
sampleDataArg = new IntegerArgument(
"sampleData".toLowerCase(), 'd', "sampleData", false,
false, true, INFO_NUM_ENTRIES_PLACEHOLDER.get(), 0, "sampleData",
true, 0, false, 0,
INFO_INSTALLDS_DESCRIPTION_SAMPLE_DATA.get());
addArgument(sampleDataArg);
int defaultLdapPort = UserData.getDefaultPort();
if (defaultLdapPort == -1)
{
defaultLdapPort = 389;
}
ldapPortArg = new IntegerArgument(
"ldapPort".toLowerCase(), OPTION_SHORT_PORT,
"ldapPort", false, false,
true, INFO_PORT_PLACEHOLDER.get(), defaultLdapPort,
"ldapPort", true, 1, true, 65535,
INFO_INSTALLDS_DESCRIPTION_LDAPPORT.get());
addArgument(ldapPortArg);
int defaultAdminPort = UserData.getDefaultAdminConnectorPort();
if (defaultAdminPort == -1)
{
defaultAdminPort =
AdministrationConnector.DEFAULT_ADMINISTRATION_CONNECTOR_PORT;
}
adminConnectorPortArg = new IntegerArgument(
"adminConnectorPort".toLowerCase(), null,
"adminConnectorPort", false, false,
true, INFO_PORT_PLACEHOLDER.get(), defaultAdminPort,
"adminConnectorPort", true, 1, true, 65535,
INFO_INSTALLDS_DESCRIPTION_ADMINCONNECTORPORT.get());
addArgument(adminConnectorPortArg);
jmxPortArg = new IntegerArgument(
"jmxPort".toLowerCase(), 'x', "jmxPort", false, false,
true, INFO_JMXPORT_PLACEHOLDER.get(),
SetupUtils.getDefaultJMXPort(), "jmxPort", true,
1, true, 65535,
INFO_INSTALLDS_DESCRIPTION_JMXPORT.get());
addArgument(jmxPortArg);
skipPortCheckArg = new BooleanArgument(
"skipPortCheck".toLowerCase(), 'S', "skipPortCheck",
INFO_INSTALLDS_DESCRIPTION_SKIPPORT.get());
skipPortCheckArg.setPropertyName("skipPortCheck");
addArgument(skipPortCheckArg);
directoryManagerDNArg = new StringArgument(
OPTION_LONG_ROOT_USER_DN.toLowerCase(), OPTION_SHORT_ROOT_USER_DN,
OPTION_LONG_ROOT_USER_DN, false, false,
true, INFO_ROOT_USER_DN_PLACEHOLDER.get(),
"cn=Directory Manager",
OPTION_LONG_ROOT_USER_DN, INFO_INSTALLDS_DESCRIPTION_ROOTDN.get());
addArgument(directoryManagerDNArg);
directoryManagerPwdStringArg = new StringArgument(
"rootUserPassword".toLowerCase(), OPTION_SHORT_BINDPWD,
"rootUserPassword",
false, false, true,
INFO_ROOT_USER_PWD_PLACEHOLDER.get(), null,
"rootUserPassword",
INFO_INSTALLDS_DESCRIPTION_ROOTPW.get());
addArgument(directoryManagerPwdStringArg);
directoryManagerPwdFileArg = new FileBasedArgument(
"rootUserPasswordFile".toLowerCase(),
OPTION_SHORT_BINDPWD_FILE,
"rootUserPasswordFile", false, false,
INFO_ROOT_USER_PWD_FILE_PLACEHOLDER.get(),
null, "rootUserPasswordFile",
INFO_INSTALLDS_DESCRIPTION_ROOTPWFILE.get());
addArgument(directoryManagerPwdFileArg);
enableWindowsServiceArg = new BooleanArgument(
"enableWindowsService".toLowerCase(), 'e',
"enableWindowsService",
INFO_INSTALLDS_DESCRIPTION_ENABLE_WINDOWS_SERVICE.get());
enableWindowsServiceArg.setPropertyName("enableWindowsService");
if (SetupUtils.isWindows())
{
addArgument(enableWindowsServiceArg);
}
doNotStartArg = new BooleanArgument(
"doNotStart".toLowerCase(), 'O', "doNotStart",
INFO_INSTALLDS_DESCRIPTION_DO_NOT_START.get());
doNotStartArg.setPropertyName("doNotStart");
addArgument(doNotStartArg);
enableStartTLSArg = new BooleanArgument(
"enableStartTLS".toLowerCase(), OPTION_SHORT_START_TLS,
"enableStartTLS",
INFO_INSTALLDS_DESCRIPTION_ENABLE_STARTTLS.get());
enableStartTLSArg.setPropertyName("enableStartTLS");
addArgument(enableStartTLSArg);
int defaultSecurePort = UserData.getDefaultSslPort(defaultLdapPort);
if (defaultSecurePort == -1)
{
defaultSecurePort = 636;
}
ldapsPortArg = new IntegerArgument(
"ldapsPort".toLowerCase(), OPTION_SHORT_USE_SSL,
"ldapsPort", false, false,
true, INFO_PORT_PLACEHOLDER.get(), defaultSecurePort,
"ldapsPort", true, 1, true, 65535,
INFO_INSTALLDS_DESCRIPTION_LDAPSPORT.get());
addArgument(ldapsPortArg);
generateSelfSignedCertificateArg = new BooleanArgument(
"generateSelfSignedCertificate".toLowerCase(),
null, "generateSelfSignedCertificate",
INFO_INSTALLDS_DESCRIPTION_USE_SELF_SIGNED.get());
generateSelfSignedCertificateArg.setPropertyName(
"generateSelfSignedCertificate");
addArgument(generateSelfSignedCertificateArg);
hostNameArg = new StringArgument(OPTION_LONG_HOST.toLowerCase(),
OPTION_SHORT_HOST,
OPTION_LONG_HOST, false, false, true, INFO_HOST_PLACEHOLDER.get(),
UserData.getDefaultHostName(),
null, INFO_INSTALLDS_DESCRIPTION_HOST_NAME.get(
generateSelfSignedCertificateArg.getLongIdentifier()));
hostNameArg.setPropertyName(OPTION_LONG_HOST);
addDefaultArgument(hostNameArg);
usePkcs11Arg = new BooleanArgument("usePkcs11Keystore".toLowerCase(),
null, "usePkcs11Keystore",
INFO_INSTALLDS_DESCRIPTION_USE_PKCS11.get());
usePkcs11Arg.setPropertyName("usePkcs11Keystore");
addArgument(usePkcs11Arg);
useJavaKeyStoreArg = new StringArgument("useJavaKeystore".toLowerCase(),
null, "useJavaKeystore", false, false,
true, INFO_KEYSTOREPATH_PLACEHOLDER.get(), null, "useJavaKeystore",
INFO_INSTALLDS_DESCRIPTION_USE_JAVAKEYSTORE.get());
addArgument(useJavaKeyStoreArg);
useJCEKSArg = new StringArgument("useJCEKS".toLowerCase(),
null, "useJCEKS", false, false,
true, INFO_KEYSTOREPATH_PLACEHOLDER.get(), null, "useJCEKS",
INFO_INSTALLDS_DESCRIPTION_USE_JCEKS.get());
addArgument(useJCEKSArg);
usePkcs12Arg = new StringArgument("usePkcs12keyStore".toLowerCase(),
null, "usePkcs12keyStore", false, false,
true, INFO_KEYSTOREPATH_PLACEHOLDER.get(), null, "usePkcs12keyStore",
INFO_INSTALLDS_DESCRIPTION_USE_PKCS12.get());
addArgument(usePkcs12Arg);
keyStorePasswordArg = new StringArgument(
OPTION_LONG_KEYSTORE_PWD.toLowerCase(),
OPTION_SHORT_KEYSTORE_PWD,
OPTION_LONG_KEYSTORE_PWD, false, false, true,
INFO_KEYSTORE_PWD_PLACEHOLDER.get(), null, OPTION_LONG_KEYSTORE_PWD,
INFO_INSTALLDS_DESCRIPTION_KEYSTOREPASSWORD.get());
addDefaultArgument(keyStorePasswordArg);
keyStorePasswordFileArg = new FileBasedArgument(
OPTION_LONG_KEYSTORE_PWD_FILE.toLowerCase(),
OPTION_SHORT_KEYSTORE_PWD_FILE, OPTION_LONG_KEYSTORE_PWD_FILE, false,
false, INFO_KEYSTORE_PWD_FILE_PLACEHOLDER.get(), null,
OPTION_LONG_KEYSTORE_PWD_FILE,
INFO_INSTALLDS_DESCRIPTION_KEYSTOREPASSWORD_FILE.get());
addDefaultArgument(keyStorePasswordFileArg);
certNicknameArg = new StringArgument(
OPTION_LONG_CERT_NICKNAME.toLowerCase(),
OPTION_SHORT_CERT_NICKNAME, OPTION_LONG_CERT_NICKNAME,
false, false, true, INFO_NICKNAME_PLACEHOLDER.get(), null,
OPTION_LONG_CERT_NICKNAME,
INFO_INSTALLDS_DESCRIPTION_CERT_NICKNAME.get());
addDefaultArgument(certNicknameArg);
int defaultTimeout = ConnectionUtils.getDefaultLDAPTimeout();
connectTimeoutArg = new IntegerArgument(OPTION_LONG_CONNECT_TIMEOUT,
null, OPTION_LONG_CONNECT_TIMEOUT,
false, false, true, INFO_TIMEOUT_PLACEHOLDER.get(),
defaultTimeout, null,
true, 1, true, 65535,
INFO_DESCRIPTION_CONNECTION_TIMEOUT.get());
connectTimeoutArg.setPropertyName(OPTION_LONG_CONNECT_TIMEOUT);
connectTimeoutArg.setHidden(true);
addArgument(connectTimeoutArg);
showUsageArg = new BooleanArgument(
OPTION_LONG_HELP.toLowerCase(), OPTION_SHORT_HELP,
OPTION_LONG_HELP,
INFO_INSTALLDS_DESCRIPTION_HELP.get());
addArgument(showUsageArg);
setUsageArgument(showUsageArg);