/**
   * @param args
   * @throws IOException
   */
  public static void main(String[] args) throws IOException {
    ArrayList<BusLine> lineList = new ArrayList<BusLine>();
    String response;

    if (!downloadDirectory.exists()) {
      downloadDirectory.mkdir();
    }
    if (!downloadPosDirectory.exists()) {
      downloadPosDirectory.mkdir();
    }

    log("Downloading Greek line names..");

    response = OasthHttp.getLineNamesGreek();

    FileUtils.writeStringToFile(
        OasthWebPageParser.parseLineNames(response),
        new File(downloadDirectory, "greekLineNames.csv"));

    lineList = OasthWebPageParser.parseLineNamesToArrayList(response);

    log("parsing line names.." + lineList.size());

    log("Downloading English line names..");

    response = OasthHttp.getLineNamesEnglish();

    FileUtils.writeStringToFile(
        OasthWebPageParser.parseLineNames(response),
        new File(downloadDirectory, "englishLineNames.csv"));

    log("written English line names to file..");

    // log("Downloading stop Stop names ..");
    //
    // for (BusLine i : lineList) {
    // downloadStopNameGreek(i, 1);
    // downloadStopNameGreek(i, 2);
    // downloadStopNameEn(i, 1);
    // downloadStopNameEn(i, 2);
    // }

    // long starti = System.currentTimeMillis();
    // for (BusLine i : lineList) {
    // downloadLineAndStopPositions(i, 1);
    // downloadLineAndStopPositions(i, 2);
    // }
    // long endi = System.currentTimeMillis();
    // log("Downloaded in: " + getDuration(starti, endi));

    // parse all stop names
    // parseStopNames(lineList);

    parseLineAndStopPositions(lineList, 1);
    parseLineAndStopPositions(lineList, 2);
  }