public boolean parseAndPrimeWith(final List<OptionHandler> optionHandlers, final String[] args) {

    // add options (ie cmd line flags)
    final Options options = new Options();
    for (final OptionHandler optionHandler : optionHandlers) {
      optionHandler.addOption(options);
    }

    // parse options from the cmd line
    final boolean parsedOk = parseAndPrimeWith(options, optionHandlers, args);

    if (parsedOk) {
      for (final OptionHandler optionHandler : optionHandlers) {
        primeWith(optionHandler);
      }
    }

    return parsedOk;
  }