public final class FileBasedIndexImpl extends FileBasedIndexEx
FileBasedIndex.FileTypeSpecificInputFilter, FileBasedIndex.InputFilter, FileBasedIndex.ValueProcessor<V>| Modifier and Type | Field and Description |
|---|---|
static boolean |
DO_TRACE_STUB_INDEX_UPDATE |
ourEnableTracingOfKeyHashToVirtualFileMapping, ourSnapshotMappingsEnabled| Constructor and Description |
|---|
FileBasedIndexImpl() |
ensureUpToDate, getAllKeys, getContainingFiles, getFileData, getFilesWithKey, getIndexModificationStamp, getOrderedIndexableFilesProviders, getValues, iterateIndexableFiles, processAllKeys, processAllKeys, processFilesContainingAllKeys, processValues, processValues, scheduleRebuildgetFileId, getInstance, isIndexAccessDuringDumbModeEnabled, iterateRecursively, requestRebuildpublic static boolean isProjectOrWorkspaceFile(VirtualFile file, FileType fileType)
public void requestReindex(VirtualFile file)
requestReindex in class FileBasedIndexpublic static <T,E extends java.lang.Throwable> T disableUpToDateCheckIn(ThrowableComputable<T,E> runnable) throws E extends java.lang.Throwable
E extends java.lang.Throwablepublic void ignoreDumbMode(java.lang.Runnable command,
Project project,
DumbModeAccessType dumbModeAccessType)
FileBasedIndexIndexNotReadyException are not expected to be happen here.
In smart mode, the behavior is similar to direct command execution
ignoreDumbMode in class FileBasedIndexcommand - - a command to executeproject - - project where dumb mode will be ignoreddumbModeAccessType - - defines in which manner command should be executed. Does a client expect only reliable data
or any data from index is fine (even outdated and not yet updated)?public <K> boolean ensureUpToDate(ID<K,?> indexId, Project project, GlobalSearchScope filter, VirtualFile restrictedFile)
ensureUpToDate in class FileBasedIndexExpublic void cleanupForNextTest()
public ChangedFilesCollector getChangedFilesCollector()
public ProjectIndexableFilesFilter projectIndexableFiles(Project project)
projectIndexableFiles in class FileBasedIndexExpublic static java.lang.Throwable getCauseToRebuildIndex(java.lang.RuntimeException e)
public void runCleanupAction(java.lang.Runnable cleanupAction)
public void requestRebuild(ID<?,?> indexId, java.lang.Throwable throwable)
requestRebuild in class FileBasedIndexpublic <K,V> UpdatableIndex<K,V,FileContent> getIndex(ID<K,V> indexId)
public boolean isFileUpToDate(VirtualFile file)
public void indexFiles(Project project, java.util.Collection<VirtualFile> files, ProgressIndicator indicator)
public boolean isIndexingCandidate(VirtualFile file, ID<?,?> indexId)
public VirtualFile getFileBeingCurrentlyIndexed()
getFileBeingCurrentlyIndexed in class FileBasedIndexnull if current thread isn't indexing.public DumbModeAccessType getCurrentDumbModeAccessType()
getCurrentDumbModeAccessType in class FileBasedIndexpublic void dropNontrivialIndexedStates(int inputId)
public void registerIndexableSet(IndexableFileSet set, Project project)
registerIndexableSet in class FileBasedIndexpublic void removeIndexableSet(IndexableFileSet set)
removeIndexableSet in class FileBasedIndexpublic VirtualFile findFileById(Project project, int id)
findFileById in class FileBasedIndexpublic static void cleanupProcessedFlag()
public void invalidateCaches()
invalidateCaches in class FileBasedIndexpublic java.util.function.IntPredicate getAccessibleFileIdFilter(Project project)
getAccessibleFileIdFilter in class FileBasedIndexExpublic void flushIndexes()
public static boolean isPsiDependentIndex(IndexExtension<?,?,?> extension)