/**
   * @param resourceBundle used to determine the values used for the command line argument
   *     parameters.
   * @param basePropertyName the base name of keys associated with properties
   */
  protected PropertiesBackedArgument(
      final ResourceBundle resourceBundle, final String basePropertyName) {
    ensureNotNullWithMessage(resourceBundle, "fatal: resourceBundle was null.");
    ensureNotNullWithMessage(basePropertyName, "fatal: basePropertyName was null.");

    this.resourceBundle = resourceBundle;
    this.basePropertyName = basePropertyName;
  }