public void parseArgs()

in bigtop-data-generators/bigtop-weatherman/src/main/java/org/apache/bigtop/datagenerators/weatherman/internal/Driver.java [81:141]


  public void parseArgs(String[] args) {
    if (args.length != NPARAMS && args.length != (NPARAMS - 1)) {
      printUsage();
      System.exit(1);
    }

    int i = -1;

    outputDir = new File(args[++i]);
    if (!outputDir.exists()) {
      System.err.println("Given path (" + args[i] + ") does not exist.\n");
      printUsage();
      System.exit(1);
    }

    if (!outputDir.isDirectory()) {
      System.err.println("Given path (" + args[i] + ") is not a directory.\n");
      printUsage();
      System.exit(1);
    }

    location = findLocation(args[++i]);
    if (location == null) {
      System.err.println(
              "No location found for given zipcode \"" + args[i] + "\"");
      printUsage();
      System.exit(1);
    }

    try {
      simulationLength = Integer.parseInt(args[++i]);
    } catch (Exception e) {
      System.err.println("Unable to parse '" + args[i]
              + "' as an int for simulationLength.\n");
      printUsage();
      System.exit(1);
    }

    try {
      startDate = parseDate(args[++i]);
    } catch (Exception e) {
      System.err.println("Unable to parse '" + args[i]
              + "'. Expected string in 'YYYY-MM-DD' format.\n");
      printUsage();
      System.exit(1);
    }

    long seed = (new Random()).nextLong();
    if (args.length == NPARAMS) {
      try {
        seed = Long.parseLong(args[++i]);
      } catch (Exception e) {
        System.err.println(
                "Unable to parse '" + args[i] + "' as a long for the seed.\n");
        printUsage();
        System.exit(1);
      }
    }

    seedFactory = new SeedFactory(seed);
  }