public void activate()

in src/com/intellij/vssSupport/VssVcs.java [190:226]


  public void activate() {
    //  Control the appearance of project items so that we can easily
    //  track down potential changes in the repository.
    listener = new VFSListener(getProject(), this);
    removalHandler = new VssLocalFileOperationsHandler(myProject, this);
    LocalFileSystem.getInstance().addVirtualFileListener(listener);
    CommandProcessor.getInstance().addCommandListener((CommandListener)listener);
    LocalFileSystem.getInstance().registerAuxiliaryFileOperationsHandler(removalHandler);

    VssConfiguration config = VssConfiguration.getInstance(myProject);
    ProjectLevelVcsManager mgr = ProjectLevelVcsManager.getInstance(myProject);
    List<VcsDirectoryMapping> currentMappings = mgr.getDirectoryMappings();
    List<VcsDirectoryMapping> newMappings = new ArrayList<>();

    //  Load old-formatted content root mappings, transform them into new ones.
    //  VssConfiguration reads them but never writes down again, so this procedure
    //  will be performed once per old-formatted project.
    if (config.getMapItemCount() > 0) {
      for (int i = 0; i < config.getMapItemCount(); i++) {
        MapItem item = config.getMapItem(i);
        if (!hasMappedFolder(item.LOCAL_PATH, currentMappings)) {
          VcsDirectoryMapping mapping = new VcsDirectoryMapping(item.LOCAL_PATH, getName());
          mapping.setRootSettings(new VssRootSettings(item.VSS_PATH));
          newMappings.add(mapping);
        }
      }
    }
    if (newMappings.size() > 0) {
      mgr.setDirectoryMappings(newMappings);
    }

    //  Add information about VSS project roots from the local project.
    List<VcsDirectoryMapping> list = mgr.getDirectoryMappings();
    for (VcsDirectoryMapping pair : list) {
      savedProjectPaths.add(pair.getVcs());
    }
  }