public List<File> collectClassFilesToEnhance( long lastEnhanced, File outputDirectory, String packageNames )
    {
        if ( packageNames == null || packageNames.isEmpty() )
        {
            return collectClassFilesToEnhanceFromPackage( lastEnhanced, outputDirectory, "", true );
            // return;
        }

        List<File> result = new ArrayList<File>();

        String[] pkgs = packageNames.split( "," );
        for ( int i = 0; i < pkgs.length; i++ )
        {

            String pkg = pkgs[i].trim().replace( '.', '/' );

            boolean recurse = false;
            if ( pkg.endsWith( "**" ) )
            {
                recurse = true;
                pkg = pkg.substring( 0, pkg.length() - 2 );
            }
            else if ( pkg.endsWith( "*" ) )
            {
                recurse = true;
                pkg = pkg.substring( 0, pkg.length() - 1 );
            }

            pkg = trimSlash( pkg );

            result.addAll( collectClassFilesToEnhanceFromPackage( lastEnhanced, outputDirectory, pkg, recurse ) );
        }
        return result;
    }
public List<File> collectClassFilesToEnhance( long lastEnhanced, File outputDirectory, String packageNames )
    {
        if ( packageNames == null || packageNames.isEmpty() )
        {
            return collectClassFilesToEnhanceFromPackage( lastEnhanced, outputDirectory, "", true );
            
        }

        List<File> result = new ArrayList<File>();

        String[] pkgs = packageNames.split( "," );
        for ( int i = 0; i < pkgs.length; i++ )
        {

            String pkg = pkgs[i].trim().replace( '.', '/' );

            boolean recurse = false;
            if ( pkg.endsWith( "**" ) )
            {
                recurse = true;
                pkg = pkg.substring( 0, pkg.length() - 2 );
            }
            else if ( pkg.endsWith( "*" ) )
            {
                recurse = true;
                pkg = pkg.substring( 0, pkg.length() - 1 );
            }

            pkg = trimSlash( pkg );

            result.addAll( collectClassFilesToEnhanceFromPackage( lastEnhanced, outputDirectory, pkg, recurse ) );
        }
        return result;
    }
public List < File > collectClassFilesToEnhance ( long lastEnhanced , File outputDirectory , String packageNames ) { if ( packageNames == null || packageNames . isEmpty ( ) ) { return collectClassFilesToEnhanceFromPackage ( lastEnhanced , outputDirectory , "" , true ) ; // return; } List < File > result = new ArrayList < File > ( ) ; String [ ] pkgs = packageNames . split ( "," ) ; for ( int i = 0 ; i < pkgs . length ; i ++ ) { String pkg = pkgs [ i ] . trim ( ) . replace ( ' ' , ' ' ) ; boolean recurse = false ; if ( pkg . endsWith ( "**" ) ) { recurse = true ; pkg = pkg . substring ( 0 , pkg . length ( ) - 2 ) ; } else if ( pkg . endsWith ( "*" ) ) { recurse = true ; pkg = pkg . substring ( 0 , pkg . length ( ) - 1 ) ; } pkg = trimSlash ( pkg ) ; result . addAll ( collectClassFilesToEnhanceFromPackage ( lastEnhanced , outputDirectory , pkg , recurse ) ) ; } return result ; }
Process all the comma delimited list of packages.
<p>
Package names are effectively converted into a directory on the file
system, and the class files are found and processed.
</p>

@param lastEnhanced previous enhancement timestamp
@param outputDirectory directory containing classes to enhance
@param packageNames package names include filter
@return list of files to enhance
Process all the comma delimited list of packages . <p > Package names are effectively converted into a directory on the file system and the class files are found and processed . < / p >