class RequestHelper[E <: Event, EI <: EventInfo, RequestArgs, CounterKey] extends AnyRef
Represents the base request that abstracts functionality common among all requests.
- E
The JDI event
- EI
The event info type to transform the JDI event into
- RequestArgs
The arguments used to create a request
- CounterKey
The key to use when looking up a pipeline counter to increment or decrement
- Alphabetic
- By Inheritance
- RequestHelper
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
-
new
RequestHelper(scalaVirtualMachine: ScalaVirtualMachine, eventManager: EventManager, etInstance: EventType, _newRequestId: () ⇒ String, _newRequest: (String, RequestArgs, Seq[JDIRequestArgument]) ⇒ Try[String], _hasRequest: (RequestArgs) ⇒ Boolean, _removeRequestById: (String) ⇒ Unit, _newEventInfo: (ScalaVirtualMachine, E, Seq[JDIArgument]) ⇒ EI, _retrieveRequestInfo: (String) ⇒ Option[RequestInfo], _includeUniqueId: Boolean = true)
- scalaVirtualMachine
The destination for the requests
- eventManager
The low-level event manager to listen to events
- etInstance
The type of event to
- _newRequestId
Generates a new request id
- _newRequest
Creates a new request using the provided request id, request arguments, and collection of JDI arguments
- _hasRequest
Determines whether a request exists with the provided request arguments
- _removeRequestById
Removes a request using its id
- _newEventInfo
Creates a new event info pipeline using the provided Scala virtual machine, JDI event, and collection of JDI arguments
- _retrieveRequestInfo
Retrieves the information for a request using its request id, returning Some(info) if found
- _includeUniqueId
If true, includes a unique id on each new request and filters the generated pipelines using the unique id property filter (should be set to false for events without requests such as VM Start)
Type Members
-
type
EventAndData = (EI, Seq[JDIEventDataResult])
Represents the combination of event and data returned.
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
-
final
def
asInstanceOf[T0]: T0
- Definition Classes
- Any
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
eventManager: EventManager
- Attributes
- protected
-
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
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
newEventPipeline(requestId: String, eventArgs: Seq[JDIEventArgument], counterKey: CounterKey): Try[IdentityPipeline[EventAndData]]
Creates a new pipeline of events and data using the given arguments.
Creates a new pipeline of events and data using the given arguments. The pipeline is NOT memoized; therefore, each call creates a new pipeline with a new underlying event handler feeding the pipeline. This means that the pipeline needs to be properly closed to remove the event handler.
- requestId
The id of the request whose events to stream through the new pipeline
- counterKey
The key used to increment and decrement the underlying pipeline counter
- returns
Success containing new event and data pipeline, otherwise a failure
-
def
newRequest(requestArgs: RequestArgs, jdiRequestArgs: Seq[JDIRequestArgument]): Try[String]
Creates a new request using the given arguments.
Creates a new request using the given arguments. The request is memoized, meaning that the same request will be returned for the same arguments. The memoized result will be thrown out if the underlying request storage indicates that the request has been removed.
- requestArgs
The custom request arguments
- jdiRequestArgs
The JDI request arguments
- returns
Success containing the event id, otherwise a failure
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
val
scalaVirtualMachine: ScalaVirtualMachine
- Attributes
- protected
-
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( ... )