Packages

c

bloop.data.ClientInfo

BspClientInfo

final case class BspClientInfo(name: String, version: String, bspVersion: String, bspClientClassesRootDir: Option[AbsolutePath], isConnected: () ⇒ Boolean) extends ClientInfo with Product with Serializable

Linear Supertypes
Ordering
  1. Alphabetic
  2. By Inheritance
Inherited
  1. BspClientInfo
  2. Serializable
  3. Serializable
  4. Product
  5. Equals
  6. ClientInfo
  7. AnyRef
  8. Any
  1. Hide All
  2. Show All
Visibility
  1. Public
  2. All

Instance Constructors

  1. new BspClientInfo(name: String, version: String, bspVersion: String, bspClientClassesRootDir: Option[AbsolutePath], isConnected: () ⇒ Boolean)

Value Members

  1. final def !=(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  2. final def ##(): Int
    Definition Classes
    AnyRef → Any
  3. final def ==(arg0: Any): Boolean
    Definition Classes
    AnyRef → Any
  4. final def asInstanceOf[T0]: T0
    Definition Classes
    Any
  5. val bspClientClassesRootDir: Option[AbsolutePath]
  6. val bspVersion: String
  7. def clone(): AnyRef
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )
  8. final def eq(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  9. def finalize(): Unit
    Attributes
    protected[java.lang]
    Definition Classes
    AnyRef
    Annotations
    @throws( classOf[java.lang.Throwable] )
  10. final def getClass(): Class[_]
    Definition Classes
    AnyRef → Any
    Annotations
    @native()
  11. def getConnectionTimestamp: Long

    Returns the connection timestamp that was registered the first time the client established a connection with the build server.

    Returns the connection timestamp that was registered the first time the client established a connection with the build server.

    Definition Classes
    BspClientInfoClientInfo
  12. def getUniqueClassesDirFor(project: Project, forceGeneration: Boolean): AbsolutePath

    Gets a unique classes directory to store classes and any kind of compilation products.

    Gets a unique classes directory to store classes and any kind of compilation products. This classes directory can be freely accessed and managed by the client without any further intervention except its deletion when the client exits.

    Definition Classes
    BspClientInfoClientInfo
  13. def hasAnActiveConnection: Boolean

    Returns true if the client is currently connected to the server, otherwise false.

    Returns true if the client is currently connected to the server, otherwise false. This entrypoint is important for debugging purposes and managing some state related to BSP clients.

    Definition Classes
    BspClientInfoClientInfo
  14. def hasManagedClassesDirectories: Boolean

    Tells the caller whether this client manages its own client classes directories or whether bloop should take care of any created resources.

    Tells the caller whether this client manages its own client classes directories or whether bloop should take care of any created resources.

    Definition Classes
    BspClientInfoClientInfo
  15. final def isInstanceOf[T0]: Boolean
    Definition Classes
    Any
  16. val name: String
  17. final def ne(arg0: AnyRef): Boolean
    Definition Classes
    AnyRef
  18. final def notify(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  19. final def notifyAll(): Unit
    Definition Classes
    AnyRef
    Annotations
    @native()
  20. def parentForClientClassesDirectories(project: Project): Either[AbsolutePath, AbsolutePath]

    Selects the parent root directory where all client classes directories will be created.

    Selects the parent root directory where all client classes directories will be created. The root classes directory can be derived from either the project or a classes directory specified by the bsp client in its initialization handshake. The semantics for the management of these directories change depending on how the root dir for client classes directories is derived.

    If bloop uses the parent of the generic classes directory as the root of all client classes directories, then it also manages its contents and can remove these classes directories as it sees fits (typically after the client shuts down the connection). A managed directory is always created inside a project-specific directory so internal directories can use a format directory that already assumes the project id.

    Else, if the client passes its own root classes directory, then Bloop only creates new directories but it doesn't remove them at all and instead leaves the management of the contents of these directories to the client. Bloop will still write compilation products in the client directories when a client compile happens, but it's the responsibility of the client to remove them from disk. An unmanaged directory is global and it must contain classes directories for every project/build target in such a way that there's no clash among them.

  21. final def synchronized[T0](arg0: ⇒ T0): T0
    Definition Classes
    AnyRef
  22. def toString(): String
    Definition Classes
    BspClientInfo → AnyRef → Any
  23. val uniqueId: String
  24. val version: String
  25. final def wait(): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  26. final def wait(arg0: Long, arg1: Int): Unit
    Definition Classes
    AnyRef
    Annotations
    @throws( ... )
  27. final def wait(arg0: Long): Unit
    Definition Classes
    AnyRef
    Annotations
    @native() @throws( ... )

Inherited from Serializable

Inherited from Serializable

Inherited from Product

Inherited from Equals

Inherited from ClientInfo

Inherited from AnyRef

Inherited from Any

Ungrouped