Source:
<code>private void validateOptions(CustomJCommander jCommander) { if (configFile != null) { Set<String> filteredOptions = new HashSet<>(jCommander.getUserSpecifiedOptions()); filteredOptions.remove(addDashDash(AUTO_ACTIVATE)); filteredOptions.remove(addDashDash(REPAIR_MODE)); filteredOptions.remove("-D"); filteredOptions.remove(addDashDash(CONFIG_FILE)); filteredOptions.remove("-f"); filteredOptions.remove(addDashDash(LICENSE_FILE)); filteredOptions.remove("-l"); filteredOptions.remove(addDashDash(NODE_NAME)); filteredOptions.remove("-n"); filteredOptions.remove(addDashDash(NODE_CONFIG_DIR)); filteredOptions.remove("-r"); if (filteredOptions.size() != 0) { throw new ParameterException( String.format( <START> "'%s' parameter can only be used with '%s', '%s' and '%s' parameters", <END> addDashDash(CONFIG_FILE), addDashDash(REPAIR_MODE), addDashDash(NODE_NAME), addDashDash(NODE_CONFIG_DIR) ) ); } } else { if (licenseFile != null) { if (clusterName == null) { throw new ParameterException("'" + addDashDash(LICENSE_FILE) + "' parameter must be used with '" + addDashDash(CLUSTER_NAME) + "' parameter"); } if (!allowsAutoActivation) { throw new ParameterException("'" + addDashDash(LICENSE_FILE) + "' parameter must be used with '" + addDashDash(AUTO_ACTIVATE) + "' parameter"); } } } }</code><technical_language>removing hostname/port support ? able -f hostname/port nodeName, want. idea hostname/port is usage in cloud, node names unknowm</technical_language>

Target:
private void validateOptions(CustomJCommander jCommander) { if (configFile != null) { if (nodeName != null && (nodePort != null || nodeHostname != null)) { throw new ParameterException("'" + addDashDash(NODE_NAME) + "' parameter cannot be used with '" + addDashDash(NODE_HOSTNAME) + "' or '" + addDashDash(NODE_PORT) + "' parameter"); } Set<String> filteredOptions = new HashSet<>(jCommander.getUserSpecifiedOptions()); filteredOptions.remove(addDashDash(AUTO_ACTIVATE)); filteredOptions.remove(addDashDash(REPAIR_MODE)); filteredOptions.remove("-D"); filteredOptions.remove(addDashDash(CONFIG_FILE)); filteredOptions.remove("-f"); filteredOptions.remove(addDashDash(LICENSE_FILE)); filteredOptions.remove("-l"); filteredOptions.remove(addDashDash(NODE_HOSTNAME)); filteredOptions.remove("-s"); filteredOptions.remove(addDashDash(NODE_PORT)); filteredOptions.remove("-p"); filteredOptions.remove(addDashDash(NODE_NAME)); filteredOptions.remove("-n"); filteredOptions.remove(addDashDash(NODE_CONFIG_DIR)); filteredOptions.remove("-r"); if (filteredOptions.size() != 0) { throw new ParameterException( String.format( "'%s' parameter can only be used with '%s', '%s', '%s', '%s' and '%s' parameters", addDashDash(CONFIG_FILE), addDashDash(REPAIR_MODE), addDashDash(NODE_NAME), addDashDash(NODE_HOSTNAME), addDashDash(NODE_PORT), addDashDash(NODE_CONFIG_DIR) ) ); } } else { if (licenseFile != null) { if (clusterName == null) { throw new ParameterException("'" + addDashDash(LICENSE_FILE) + "' parameter must be used with '" + addDashDash(CLUSTER_NAME) + "' parameter"); } if (!allowsAutoActivation) { throw new ParameterException("'" + addDashDash(LICENSE_FILE) + "' parameter must be used with '" + addDashDash(AUTO_ACTIVATE) + "' parameter"); } } } }