static Object[] computeFolderNonJavaResources(IPackageFragmentRoot root,IContainer folder,char[][] inclusionPatterns,char[][] exclusionPatterns) throws JavaModelException {
  IResource[] nonJavaResources=new IResource[5];
  int nonJavaResourcesCounter=0;
  try {
    IResource[] members=folder.members();
    int length=members.length;
    if (length > 0) {
      IJavaProject otherJavaProject=JavaCore.create(folder.getProject());
      String sourceLevel=otherJavaProject.getOption(JavaCore.COMPILER_SOURCE,true);
      String complianceLevel=otherJavaProject.getOption(JavaCore.COMPILER_COMPLIANCE,true);
      JavaProject javaProject=(JavaProject)root.getJavaProject();
      IClasspathEntry[] classpath=javaProject.getResolvedClasspath();
      nextResource:       for (int i=0; i < length; i++) {
        IResource member=members[i];
switch (member.getType()) {
case IResource.FILE:
          String fileName=member.getName();
        if (Util.isValidCompilationUnitName(fileName,sourceLevel,complianceLevel) && !Util.isExcluded(member,inclusionPatterns,exclusionPatterns))         continue nextResource;
      if (Util.isValidClassFileName(fileName,sourceLevel,complianceLevel))       continue nextResource;
    if (isClasspathEntry(member.getFullPath(),classpath))     continue nextResource;
  break;
case IResource.FOLDER:
if (Util.isValidFolderNameForPackage(member.getName(),sourceLevel,complianceLevel) && (!Util.isExcluded(member,inclusionPatterns,exclusionPatterns) || isClasspathEntry(member.getFullPath(),classpath))) continue nextResource;
break;
}
if (nonJavaResources.length == nonJavaResourcesCounter) {
System.arraycopy(nonJavaResources,0,(nonJavaResources=new IResource[nonJavaResourcesCounter * 2]),0,nonJavaResourcesCounter);
}
nonJavaResources[nonJavaResourcesCounter++]=member;
}
}
return nonJavaResources;
}
 catch (CoreException e) {
throw new JavaModelException(e);
}
}

static Object [ ] computeFolderNonJavaResources ( IPackageFragmentRoot root , IContainer folder , char [ ] [ ] inclusionPatterns , char [ ] [ ] exclusionPatterns ) throws JavaModelException { IResource [ ] nonJavaResources = new IResource [ 5 ] ; int nonJavaResourcesCounter = 0 ; try { IResource [ ] members = folder . members ( ) ; int length = members . length ; if ( length > 0 ) { IJavaProject otherJavaProject = JavaCore . create ( folder . getProject ( ) ) ; String sourceLevel = otherJavaProject . getOption ( JavaCore . COMPILER_SOURCE , true ) ; String complianceLevel = otherJavaProject . getOption ( JavaCore . COMPILER_COMPLIANCE , true ) ; JavaProject javaProject = ( JavaProject ) root . getJavaProject ( ) ; IClasspathEntry [ ] classpath = javaProject . getResolvedClasspath ( ) ; nextResource : for ( int i = 0 ; i < length ; i ++ ) { IResource member = members [ i ] ; switch ( member . getType ( ) ) { case IResource . FILE : String fileName = member . getName ( ) ; if ( Util . isValidCompilationUnitName ( fileName , sourceLevel , complianceLevel ) && ! Util . isExcluded ( member , inclusionPatterns , exclusionPatterns ) ) continue nextResource ; if ( Util . isValidClassFileName ( fileName , sourceLevel , complianceLevel ) ) continue nextResource ; if ( isClasspathEntry ( member . getFullPath ( ) , classpath ) ) continue nextResource ; break ; case IResource . FOLDER : if ( Util . isValidFolderNameForPackage ( member . getName ( ) , sourceLevel , complianceLevel ) && ( ! Util . isExcluded ( member , inclusionPatterns , exclusionPatterns ) || isClasspathEntry ( member . getFullPath ( ) , classpath ) ) ) continue nextResource ; break ; } if ( nonJavaResources . length == nonJavaResourcesCounter ) { System . arraycopy ( nonJavaResources , 0 , ( nonJavaResources = new IResource [ nonJavaResourcesCounter * 2 ] ) , 0 , nonJavaResourcesCounter ) ; } nonJavaResources [ nonJavaResourcesCounter ++ ] = member ; } } return nonJavaResources ; } catch ( CoreException e ) { throw new JavaModelException ( e ) ; } }
starting at this folder , create non - java resources for this package fragment root and add them to the non - java resources collection .
