trait Debugger extends Logging
Represents the generic interface that all debugger instances implement.
- Alphabetic
- By Inheritance
- Debugger
- Logging
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Type Members
-
implicit
class
LoggerExtras
extends AnyRef
- Definition Classes
- Logging
Abstract Value Members
-
abstract
def
isRunning: Boolean
Indicates whether or not the debugger is running.
Indicates whether or not the debugger is running.
- returns
True if it is running, otherwise false
-
abstract
def
start[T](defaultProfile: String, startProcessingEvents: Boolean, newVirtualMachineFunc: (ScalaVirtualMachine) ⇒ T): Unit
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- T
The return type of the callback function
- defaultProfile
The default profile to use with the new VMs
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- newVirtualMachineFunc
The function that will be called when a new virtual machine connection is created as a result of this debugger
-
abstract
def
stop(): Unit
Shuts down the debugger, releasing any connected virtual machines.
Concrete Value Members
-
final
def
!=(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
final
def
##(): Int
- Definition Classes
- AnyRef → Any
-
final
def
==(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
addPendingScalaVirtualMachine(scalaVirtualMachine: ScalaVirtualMachine): Option[ScalaVirtualMachine]
Adds a new Scala virtual machine whose pending operations will be applied to any new Scala virtual machine resulting from this debugger.
Adds a new Scala virtual machine whose pending operations will be applied to any new Scala virtual machine resulting from this debugger.
- scalaVirtualMachine
The Scala virtual machine to add
- returns
Some Scala virtual machine if added, otherwise None
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
assertJdiLoaded(): Unit
Attempts to load the JDI, asserting that it can be and is loaded.
Attempts to load the JDI, asserting that it can be and is loaded.
- Attributes
- protected
- Annotations
- @throws( classOf[AssertionError] )
- Exceptions thrown
AssertionError
If failed to load the JDI
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
connectedScalaVirtualMachines: Seq[ScalaVirtualMachine]
Retrieves the connected virtual machines for the debugger.
Retrieves the connected virtual machines for the debugger. Does not include any dummy virtual machines.
- returns
The collection of connected virtual machines
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
getPendingScalaVirtualMachines: Seq[ScalaVirtualMachine]
Retrieves the collection of Scala virtual machines whose pending operations will be applied to any new Scala virtual machine resulting from this debugger.
Retrieves the collection of Scala virtual machines whose pending operations will be applied to any new Scala virtual machine resulting from this debugger.
- returns
The collection of Scala virtual machines
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
def
isAvailable: Boolean
Determines whether or not the debugger is available for use.
Determines whether or not the debugger is available for use.
- returns
True if the debugger is available, otherwise false
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
val
jdiLoader: JDILoader
- Attributes
- protected
-
val
logger: Logger
- Attributes
- protected
- Definition Classes
- Logging
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
newDummyScalaVirtualMachine(): ScalaVirtualMachine
Creates a new dummy Scala virtual machine instance that can be used to prepare pending requests to apply to the Scala virtual machines generated by the debugger once it starts.
Creates a new dummy Scala virtual machine instance that can be used to prepare pending requests to apply to the Scala virtual machines generated by the debugger once it starts.
- returns
The new dummy (no-op) Scala virtual machine instance
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
def
removePendingScalaVirtualMachine(scalaVirtualMachineId: String): Option[ScalaVirtualMachine]
Removes a Scala virtual machine from the list whose pending operations would be applied to any new Scala virtual machine resulting from this debugger.
Removes a Scala virtual machine from the list whose pending operations would be applied to any new Scala virtual machine resulting from this debugger.
- scalaVirtualMachineId
The id of the Scala virtual machine to remove
- returns
Some Scala virtual machine if removed, otherwise None
-
def
scalaVirtualMachineManager: ScalaVirtualMachineManager
Retrieves the Scala virtual machine manager associated with this debugger.
Retrieves the Scala virtual machine manager associated with this debugger.
- returns
The Scala virtual machine manager.
- Note
Currently, this manager is global, meaning that all debuggers have the same manager. Because of this, any operations dependent on the manager will be associated with all debuggers (such as getting a list of connected virtual machines).
-
def
start[T](startProcessingEvents: Boolean, newVirtualMachineFunc: (ScalaVirtualMachine) ⇒ T): Unit
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- T
The return type of the callback function
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- newVirtualMachineFunc
The function that will be called when a new virtual machine connection is created as a result of this debugger
-
def
start[T](defaultProfile: String, newVirtualMachineFunc: (ScalaVirtualMachine) ⇒ T): Unit
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- T
The return type of the callback function
- defaultProfile
The default profile to use with the new VMs
- newVirtualMachineFunc
The function that will be called when a new virtual machine connection is created as a result of this debugger
-
def
start[T](newVirtualMachineFunc: (ScalaVirtualMachine) ⇒ T): Unit
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- T
The return type of the callback function
- newVirtualMachineFunc
The function that will be called when a new virtual machine connection is created as a result of this debugger
-
def
start(defaultProfile: String, startProcessingEvents: Boolean): Future[ScalaVirtualMachine]
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- defaultProfile
The default profile to use with the new VMs
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- returns
The future representing the connected Scala virtual machine
- Note
Returned future represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(startProcessingEvents: Boolean): Future[ScalaVirtualMachine]
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- returns
The future representing the connected Scala virtual machine
- Note
Returned future represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(defaultProfile: String): Future[ScalaVirtualMachine]
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- defaultProfile
The default profile to use with the new VMs
- returns
The future representing the connected Scala virtual machine
- Note
Returned future represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(): Future[ScalaVirtualMachine]
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- returns
The future representing the connected Scala virtual machine
- Note
Returned future represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(timeout: Duration, defaultProfile: String, startProcessingEvents: Boolean): ScalaVirtualMachine
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- timeout
The maximum time to wait for the JVM to connect
- defaultProfile
The default profile to use with the new VMs
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- returns
The connected Scala virtual machine
- Note
Returned Scala virtual machine represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(timeout: Duration, startProcessingEvents: Boolean): ScalaVirtualMachine
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- timeout
The maximum time to wait for the JVM to connect
- startProcessingEvents
If true, events are immediately processed by the VM as soon as it is connected
- returns
The connected Scala virtual machine
- Note
Returned Scala virtual machine represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(timeout: Duration, defaultProfile: String): ScalaVirtualMachine
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
- timeout
The maximum time to wait for the JVM to connect
- defaultProfile
The default profile to use with the new VMs
- returns
The connected Scala virtual machine
- Note
Returned Scala virtual machine represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
def
start(timeout: Duration): ScalaVirtualMachine
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances.
Starts the debugger, performing any necessary setup and ending with an initialized debugger that is or will be capable of connecting to one or more virtual machine instances. Uses the default profile for new VMs.
- timeout
The maximum time to wait for the JVM to connect
- returns
The connected Scala virtual machine
- Note
Returned Scala virtual machine represents next connected Scala virtual machine. All other Scala virtual machines connected after the first one will be ignored.
-
final
def
synchronized[T0](arg0: ⇒ T0): T0
- Definition Classes
- AnyRef
-
def
toString(): String
- Definition Classes
- AnyRef → Any
-
final
def
wait(): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long, arg1: Int): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
wait(arg0: Long): Unit
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
withPending(scalaVirtualMachine: ScalaVirtualMachine): Debugger
Adds a new Scala virtual machine to use for pending operations.
Adds a new Scala virtual machine to use for pending operations. Essentially a wrapper around Debugger.addPendingScalaVirtualMachine).
- scalaVirtualMachine
The Scala virtual machine to add
- returns
The debugger instance updated with the new pending operations
-
def
withoutPending(scalaVirtualMachineId: String): Debugger
Removes a Scala virtual machine used for pending operations.
Removes a Scala virtual machine used for pending operations. Essentially a wrapper around Debugger.removePendingScalaVirtualMachine.
- scalaVirtualMachineId
The id of the Scala virtual machine to remove
- returns
The updated debugger instance