class AsyncExtRunner extends AbstractExtRunner with AsyncJSRunner
- Attributes
- protected
- Alphabetic
- By Inheritance
- AsyncExtRunner
- AsyncJSRunner
- AbstractExtRunner
- JSInitFiles
- AnyRef
- Any
- Hide All
- Show All
- Public
- All
Instance Constructors
- new AsyncExtRunner(files: Seq[VirtualJSFile])
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
-
final
def
await(atMost: Duration): Unit
Await completion of the started Run for the duration specified by
atMost
.Await completion of the started Run for the duration specified by
atMost
. Strictly equivalent to:Await.result(future, atMost)
- Definition Classes
- AsyncJSRunner
-
final
def
await(): Unit
Await completion of the started Run.
Await completion of the started Run. Strictly equivalent to
Await.result(future, Duration.Inf)
- Definition Classes
- AsyncJSRunner
-
final
def
awaitOrStop(atMost: Duration): Unit
Awaits completion of the started Run for the duration specified by
atMost
, or force it to stop.Awaits completion of the started Run for the duration specified by
atMost
, or force it to stop.If any exception is thrown while awaiting completion (including a TimeoutException), forces the runner to stop by calling
stop()
before rethrowing the exception.Strictly equivalent to:
try await(atMost) finally stop()
- Definition Classes
- AsyncJSRunner
-
def
clone(): AnyRef
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( ... )
-
def
console: JSConsole
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
customInitFiles(): Seq[VirtualJSFile]
Custom initialization scripts, defined by the environment.
Custom initialization scripts, defined by the environment.
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
eq(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
def
equals(arg0: Any): Boolean
- Definition Classes
- AnyRef → Any
-
val
files: Seq[VirtualJSFile]
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
finalize(): Unit
- Attributes
- protected[java.lang]
- Definition Classes
- AnyRef
- Annotations
- @throws( classOf[java.lang.Throwable] )
-
def
future: Future[Unit]
A future that completes when the associated run has terminated.
A future that completes when the associated run has terminated.
- Definition Classes
- AsyncExtRunner → AsyncJSRunner
-
final
def
getClass(): Class[_]
- Definition Classes
- AnyRef → Any
-
def
getJSFiles(): Seq[VirtualJSFile]
All the JS files that are passed to the VM.
All the JS files that are passed to the VM.
This method can overridden to provide custom behavior in subclasses.
The default value in
ExternalJSEnv
isinitFiles() ++ customInitFiles() ++ files
.- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
getVMArgs(): Seq[String]
VM arguments excluding executable.
VM arguments excluding executable. Override to adapt.
The default value in
ExternalJSEnv
isargs
.- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
getVMEnv(): Map[String, String]
VM environment.
VM environment. Override to adapt.
The default value in
ExternalJSEnv
isSystem.getenv().asScala.toMap ++ env
.- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
hashCode(): Int
- Definition Classes
- AnyRef → Any
-
def
initFiles(): Seq[VirtualJSFile]
JS files used to setup VM
JS files used to setup VM
- Attributes
- protected
- Definition Classes
- JSInitFiles
-
final
def
isInstanceOf[T0]: Boolean
- Definition Classes
- Any
-
final
def
isRunning(): Boolean
Checks whether this async runner is still running.
Checks whether this async runner is still running. Strictly equivalent to
!future.isCompleted
- Definition Classes
- AsyncJSRunner
-
def
logger: Logger
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
ne(arg0: AnyRef): Boolean
- Definition Classes
- AnyRef
-
final
def
notify(): Unit
- Definition Classes
- AnyRef
-
final
def
notifyAll(): Unit
- Definition Classes
- AnyRef
-
final
def
pipeToConsole(in: InputStream, console: JSConsole): Unit
pipe lines from input stream to JSConsole
pipe lines from input stream to JSConsole
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
pipeVMData(vmInst: Process): Unit
Pipe stdin and stdout from/to VM
Pipe stdin and stdout from/to VM
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
sendJS(files: Seq[VirtualJSFile], out: Writer): Unit
send a bunch of JS files to a writer
send a bunch of JS files to a writer
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
final
def
sendJS(files: Seq[VirtualJSFile], out: OutputStream): Unit
send a bunch of JS files to an output stream
send a bunch of JS files to an output stream
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
sendVMStdin(out: OutputStream): Unit
Sends required data to VM Stdin (can throw)
Sends required data to VM Stdin (can throw)
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
setupLoggerAndConsole(logger: Logger, console: JSConsole): Unit
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
start(logger: Logger, console: JSConsole): Future[Unit]
Start the associated run and returns a Future that completes when the run terminates.
Start the associated run and returns a Future that completes when the run terminates. The returned Future is equivalent to the one returned by future.
- Definition Classes
- AsyncExtRunner → AsyncJSRunner
-
def
startExternalJSEnv(): Unit
Core functionality of start.
Core functionality of start.
Same as start but without a call to setupLoggerAndConsole and not returning future. Useful to be called in overrides of start.
- Attributes
- protected
-
def
startVM(): Process
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
-
def
stop(): Unit
Aborts the associated run.
Aborts the associated run.
There is no guarantee that the runner will be effectively terminated by the time this method returns. If necessary, this call can be followed by a call to
await()
.If the run has already completed, this does nothing. Similarly, subsequent calls to
stop()
will do nothing.This method cannot be called before
start()
has been called.- Definition Classes
- AsyncExtRunner → AsyncJSRunner
-
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( ... )
-
final
def
waitForVM(vmInst: Process): Unit
Wait for the VM to terminate, verify exit code
Wait for the VM to terminate, verify exit code
- Attributes
- protected
- Definition Classes
- AbstractExtRunner
- Exceptions thrown
ExternalJSEnv.NonZeroExitException
if VM returned a non-zero code
-
def
writeJSFile(file: VirtualJSFile, writer: Writer): Unit
write a single JS file to a writer using an include fct if appropriate
write a single JS file to a writer using an include fct if appropriate
- Attributes
- protected
- Definition Classes
- AbstractExtRunner