code: private List<DumpProcessingAction> handleArguments(String[] args) {
  		CommandLine cmd;
  		CommandLineParser parser = new GnuParser();
  
  		try {
  			cmd = parser.parse(options, args);
  		} catch (ParseException e) {
  			logger.error("Failed to parse arguments: " + e.getMessage());
  			return Collections.emptyList();
  		}
  
  		// Stop processing if a help text is to be printed:
  		if ((cmd.hasOption(CMD_OPTION_HELP)) || (args.length == 0)) {
  			return Collections.emptyList();
  		}
  
  		List<DumpProcessingAction> configuration = new ArrayList<>();
  
  		handleGlobalArguments(cmd);
  
  		if (cmd.hasOption(CMD_OPTION_ACTION)) {
  			DumpProcessingAction action = handleActionArguments(cmd);
  			if (action != null) {
  				configuration.add(action);
  			}
  		}
  
  		if (cmd.hasOption(CMD_OPTION_CONFIG_FILE)) {
  			try {
  				List<DumpProcessingAction> configFile = readConfigFile(cmd
  						.getOptionValue(CMD_OPTION_CONFIG_FILE));
  				configuration.addAll(configFile);
  			} catch (IOException e) {
  				logger.error("Failed to read configuration file \""
  						+ cmd.getOptionValue(CMD_OPTION_CONFIG_FILE) + "\": "
  						+ e.toString());
  			}
  
  		}
  
  		return configuration;
  
  	}
docs: This function interprets the arguments of the main function. By doing
  this it will set flags for the dump generation. See in the help text for
  more specific information about the options.
  
  @param args
  array of arguments from the main function.
  @return list of {@link DumpProcessingOutputAction}