Class

org.ensime.indexer

SearchService

Related Doc: package indexer

Permalink

class SearchService extends ClassfileIndexer with FileChangeListener with SLF4JLogging

Provides methods to perform ENSIME-specific indexing tasks, receives events that require an index update, and provides searches against the index.

We have an H2 database for storing relational information and Lucene for advanced indexing.

Linear Supertypes
SLF4JLogging, FileChangeListener, ClassfileIndexer, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SearchService
  2. SLF4JLogging
  3. FileChangeListener
  4. ClassfileIndexer
  5. AnyRef
  6. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SearchService(config: EnsimeConfig, resolver: SourceResolver)(implicit actorSystem: ActorSystem, vfs: EnsimeVFS)

    Permalink

Value Members

  1. final def !=(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0

    Permalink
    Definition Classes
    Any
  5. val backlogActor: ActorRef

    Permalink
  6. def baseReCreated(f: FileObject): Unit

    Permalink
    Definition Classes
    FileChangeListener
  7. def baseRegistered(): Unit

    Permalink
    Definition Classes
    FileChangeListener
  8. def baseRemoved(f: FileObject): Unit

    Permalink
    Definition Classes
    FileChangeListener
  9. def clone(): AnyRef

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  10. def delete(files: List[FileObject]): Future[Int]

    Permalink
  11. def deleteInBatches(files: List[FileObject], batchSize: Int = 1000): Future[Int]

    Permalink
  12. final def eq(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  13. def equals(arg0: Any): Boolean

    Permalink
    Definition Classes
    AnyRef → Any
  14. def extractSymbolsFromClassOrJar(file: FileObject): Future[List[FqnSymbol]]

    Permalink
  15. def fileAdded(f: FileObject): Unit

    Permalink
    Definition Classes
    SearchServiceFileChangeListener
  16. def fileChanged(f: FileObject): Unit

    Permalink
    Definition Classes
    SearchServiceFileChangeListener
  17. def fileRemoved(f: FileObject): Unit

    Permalink
    Definition Classes
    SearchServiceFileChangeListener
  18. def finalize(): Unit

    Permalink
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  19. def findUnique(fqn: String): Option[FqnSymbol]

    Permalink

    only for exact fqns

  20. final def getClass(): Class[_]

    Permalink
    Definition Classes
    AnyRef → Any
  21. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  22. def indexClassfile(file: FileObject): (RawClassfile, Set[FullyQualifiedName])

    Permalink

    file

    to index

    returns

    the parsed version of the classfile and FQNs referenced within

    Definition Classes
    ClassfileIndexer
  23. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  24. lazy val log: Logger

    Permalink
    Definition Classes
    SLF4JLogging
  25. final def ne(arg0: AnyRef): Boolean

    Permalink
    Definition Classes
    AnyRef
  26. final def notify(): Unit

    Permalink
    Definition Classes
    AnyRef
  27. final def notifyAll(): Unit

    Permalink
    Definition Classes
    AnyRef
  28. def persist(check: FileCheck, symbols: List[FqnSymbol], commitIndex: Boolean, boost: Boolean): Future[Int]

    Permalink
  29. def refresh(): Future[(Int, Int)]

    Permalink

    Indexes everything, making best endeavours to avoid scanning what is unnecessary (e.g.

    Indexes everything, making best endeavours to avoid scanning what is unnecessary (e.g. we already know that a jar or classfile has been indexed).

    returns

    the number of rows (removed, indexed) from the database.

  30. def refreshResolver(): Unit

    Permalink
  31. def searchClasses(query: String, max: Int): List[FqnSymbol]

    Permalink

    free-form search for classes

  32. def searchClassesMethods(terms: List[String], max: Int): List[FqnSymbol]

    Permalink

    free-form search for classes and methods

  33. val semaphore: Semaphore

    Permalink
  34. def shutdown(): Future[Unit]

    Permalink
  35. final def synchronized[T0](arg0: ⇒ T0): T0

    Permalink
    Definition Classes
    AnyRef
  36. def toString(): String

    Permalink
    Definition Classes
    AnyRef → Any
  37. final def wait(): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  38. final def wait(arg0: Long, arg1: Int): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  39. final def wait(arg0: Long): Unit

    Permalink
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )

Inherited from SLF4JLogging

Inherited from FileChangeListener

Inherited from ClassfileIndexer

Inherited from AnyRef

Inherited from Any

Ungrouped