private void processExternalDir()

in agent/src/jetbrains/buildServer/swabra/Swabra.java [319:348]


  private void processExternalDir(@NotNull final File dir) {
    final SwabraPropertiesProcessor.DirectoryState directoryState = getAndCleanDirectoryState(dir);

    switch (directoryState) {
      case STRICT_CLEAN:
      case CLEAN:
        // do nothing
        return;
      case DIRTY:
        if (mySettings.isCleanupBeforeBuild()) {
          myLogger.debug(dir + " cleanup is performed before build");
          break;
        } else return;
      case PENDING:
      case STRICT_PENDING:
        myLogger.debug(dir + " cleanup is performed before build");
        break;
      case UNKNOWN:
      default:
        myLogger.debug(dir + " directory state is unknown");
        return;
    }

    collectFiles(dir, new FilesCollector.SimpleCollectionResultHandler() {
      @Override
      public void interrupted() {
        myPropertiesProcessor.markPending(dir, mySettings.getCheckoutDir(), mySettings.isStrict(), myRunningBuild.getBuildTypeId());
      }
    });
  }