private static void relocateNewFiles()

in src/net/sourceforge/transparent/actions/SynchActivitiesAction.java [111:138]


  private static void relocateNewFiles( Project project )
  {
    ChangeListManager changesMgr = ChangeListManager.getInstance( project );
    ProjectLevelVcsManager pmgr = ProjectLevelVcsManager.getInstance( project );
    CCaseViewsManager viewsManager = CCaseViewsManager.getInstance( project );

    List<VirtualFile> files = changesMgr.getAffectedFiles();
    for( VirtualFile vfile : files )
    {
      FileStatus status = changesMgr.getStatus( vfile );
      if( status == FileStatus.ADDED )
      {
        VirtualFile root = pmgr.getVcsRootFor( vfile );
        CCaseViewsManager.ViewInfo info = viewsManager.getViewByRoot( root );
        String currentActivityName = (info.currentActivity != null) ? info.currentActivity.publicName : null;
        if( info != null )
        {
          Change change = changesMgr.getChange( vfile );
          LocalChangeList list = changesMgr.getChangeList( change );
          if( currentActivityName != null && !list.getName().equals( currentActivityName ) )
          {
            viewsManager.addFile2Changelist( vfile.getPath(), currentActivityName );
            changesMgr.moveChangesTo( changesMgr.findChangeList( currentActivityName ), new Change[]{ change } );
          }
        }
      }
    }
  }