public void addMergePath ( PathImpl path ) { if ( ! ( path instanceof MergePath ) ) { // Need to normalize so directory paths ends with a "./" // XXX: //if (path.isDirectory()) // path = path.lookup("./"); ArrayList < PathImpl > pathList = ( ( MergePath ) _root ) . _pathList ; if ( ! pathList . contains ( path ) ) pathList . add ( path ) ; } else if ( ( ( MergePath ) path ) . _root == _root ) return ; else { MergePath mergePath = ( MergePath ) path ; ArrayList < PathImpl > subPaths = mergePath . getMergePaths ( ) ; String pathName = "./" + mergePath . _pathname + "/" ; for ( int i = 0 ; i < subPaths . size ( ) ; i ++ ) { PathImpl subPath = subPaths . get ( i ) ; addMergePath ( subPath . lookup ( pathName ) ) ; } } }
Adds a new path to the end of the merge path .