private void writeProperties()

in agent/src/jetbrains/buildServer/swabra/SwabraPropertiesProcessor.java [166:197]


  private void writeProperties() {
    if (myProperties.isEmpty()) {
      if (myPropertiesFile.isFile()) {
        deletePropertiesFile();
      }
      return;
    }
    BufferedWriter writer = null;
    try {
      writer = new BufferedWriter(new FileWriter(myPropertiesFile));
      for (Map.Entry<String, DirInfo> entry : myProperties.entrySet()) {
          writer.write(String.format("%s%s%s%s%s%s%s%n"
            , entry.getKey(), KEY_VAL_SEPARATOR
            , entry.getValue().state, KEY_VAL_SEPARATOR
            , entry.getValue().checkoutDir, KEY_VAL_SEPARATOR
            , entry.getValue().buildTypeId)
          );
      }
    } catch (IOException e) {
      myLogger.warn("Error saving directories states to " + myPropertiesFile.getAbsolutePath() + getMessage(e));
      myLogger.exception(e);
    } finally {
      if (writer != null) {
        try {
          writer.close();
        } catch (IOException e) {
          myLogger.warn("Error closing directories states file " + myPropertiesFile.getAbsolutePath());
          myLogger.exception(e);
        }
      }
    }
  }