Class/Object

org.ensime.indexer

SearchService

Related Docs: object SearchService | package indexer

Permalink

class SearchService extends 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, AnyRef, Any
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. SearchService
  2. SLF4JLogging
  3. FileChangeListener
  4. AnyRef
  5. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new SearchService(config: EnsimeConfig, resolver: SourceResolver)(implicit actorSystem: ActorSystem, serverConfig: EnsimeServerConfig, 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, grouped: Map[FileName, Set[FileObject]]): Future[List[SourceSymbolInfo]]

    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 findClasses(jdi: String): Seq[ClassDef]

    Permalink
  20. def findClasses(file: EnsimeFile): Seq[ClassDef]

    Permalink
  21. def findUnique(fqn: String): Option[FqnSymbol]

    Permalink

    only for exact fqns

  22. def findUsageLocations(fqn: String): Future[Iterable[UsageLocation]]

    Permalink

    returns locations where given fqn is referred

  23. def findUsages(fqn: String): Future[Iterable[FqnSymbol]]

    Permalink

    returns FqnSymbols where given fqn is referred

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

    Permalink
    Definition Classes
    AnyRef → Any
  25. def getTypeHierarchy(fqn: String, hierarchyType: Direction, levels: Option[Int] = None): Future[Option[Hierarchy]]

    Permalink

    returns hierarchy of a type identified by fqn

  26. def hashCode(): Int

    Permalink
    Definition Classes
    AnyRef → Any
  27. final def isInstanceOf[T0]: Boolean

    Permalink
    Definition Classes
    Any
  28. lazy val log: Logger

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

    Permalink
    Definition Classes
    AnyRef
  30. val noReverseLookups: Boolean

    Permalink
  31. final def notify(): Unit

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

    Permalink
    Definition Classes
    AnyRef
  33. def persist(symbols: List[SourceSymbolInfo], commitIndex: Boolean, boost: Boolean): Future[Int]

    Permalink
  34. 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.

  35. def refreshResolver(): Unit

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

    Permalink

    free-form search for classes

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

    Permalink

    free-form search for classes and methods

  38. def shutdown(): Future[Unit]

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

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

    Permalink
    Definition Classes
    AnyRef → Any
  41. implicit val vfs: EnsimeVFS

    Permalink
  42. final def wait(): Unit

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

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

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

Inherited from SLF4JLogging

Inherited from FileChangeListener

Inherited from AnyRef

Inherited from Any

Ungrouped