5.3 Class Paths

<..classPaths[] := .....>
 classPaths = FileInfo.getPaths( System.getProperty("java.class.path") );
 -_-_-

Script paths are to be encoded in a similar manner as class paths.

<..classPaths[] := .....>+
 if( iii_scriptDir != null ){
    scriptPaths = FileInfo.getPaths( iii_scriptDir );
 }
 -_-_-

<..static String [] getPaths( dirs )..>
 static String [] getPaths( String dirs ){
       String [] paths = null;
    paths = dirs.split( System.getProperty("path.separator") );
    int k = paths.length;
    while( k>0 ){
       k--;
       <.set full path.>
       int len = paths[k].length();
       if( (len>1) && (paths[k].lastIndexOf(slash + ".") == (len-1)) ){
          paths[k]  = paths[k].substring(0,len-1);
       } else if( (len>0) && ((len-1) != paths[k].lastIndexOf( slash )) ){
          paths[k] += slash;
    }  }
    return paths;
 }
 -_-_-

<..set full path..>
 paths[k] = cleanPath( paths[k] );
 -_-_-
 
 if( (paths[k].length() > 0) && (paths[k].charAt(0) == ’~’) ){
   if( (paths[k].length() == 1)|| (paths[k].charAt(1) != ’~’) ){
     paths[k] = System.getProperty( "user.home" ) + paths[k].substring(1);
 }  }
 if( paths[k].charAt(0) == ’.’ ){
    paths[k] = System.getProperty( "user.dir" ) + slash + paths[k];
 } -_-_-