1 19 20 package org.netbeans.modules.java.source.usages; 21 22 import java.io.IOException ; 23 import java.util.Set ; 24 import org.netbeans.api.java.source.ClassIndex; 25 import org.netbeans.api.java.source.JavaSource; 26 import org.openide.filesystems.FileObject; 27 28 32 public abstract class ClassIndexImpl { 33 34 35 public static enum UsageType { 36 37 SUPER_CLASS( 0 ), 38 SUPER_INTERFACE( 1 ), 39 FIELD_REFERENCE( 2 ), 40 METHOD_REFERENCE( 3 ), 41 TYPE_REFERENCE (4); 42 43 private int offset; 44 45 UsageType( final int offset) { 46 this.offset = offset; 47 } 48 49 int getOffset () { 50 return this.offset; 51 } 52 } 53 54 55 public static ClassIndexFactory FACTORY; 56 57 public abstract <T> void search (final String binaryName, final Set <UsageType> usageType, final ResultConvertor<T> convertor, final Set <? super T> result); 58 59 public abstract <T> void getDeclaredTypes (String name, ClassIndex.NameKind kind, final ResultConvertor<T> convertor, final Set <? super T> result); 60 61 public abstract void getPackageNames (String prefix, boolean directOnly, Set <String > result); 62 63 public abstract FileObject[] getSourceRoots (); 64 65 public abstract BinaryAnalyser getBinaryAnalyser (); 66 67 public abstract SourceAnalyser getSourceAnalyser (); 68 69 public abstract void setDirty (JavaSource js); 70 71 protected abstract void close () throws IOException ; 72 73 } 74 | Popular Tags |