Basic implementation of a 'continuable runner' that will execute the
continuable objects and correctly handle the continuations-related
exceptions that are triggered.
This runner is probably only applicable to the most simple of use-cases,
but by reading its source it should be relatively easy to adapt of extend
it for purposes that don't fall inside its scope.
author: Geert Bevin (gbevin[remove] at uwyn dot com) version: $Revision: 3850 $ since: 1.6
Create a new runner instance.
Parameters: configInstrument - the instance of the instrumentationconfiguration that will be used for the transformation since: 1.6
Create a new runner instance with a custom classloader.
Parameters: configInstrument - the instance of the instrumentationconfiguration that will be used for the transformation Parameters: classloader - the classloader that will be used to load thecontinuable classes, this is for example an instance ofBasicContinuableClassLoader since: 1.6
Resumes the execution of a call continuation.
Parameters: continuationId - the ID of the continuation that will be resumed Parameters: callAnswer - the call answer object the ID of the resulting paused continuation; or
null if no continuation was paused or if the provided IDcouldn't be found throws: Throwable - when an error occurs since: 1.6.1
Hook method that will be executed right before executing the entry
method of a continuable object, when the default implementation of
BasicContinuableRunner.executeContinuable is used.
Executes the continuable object by looking up the entrance method and
invoking it.
This method can be overridden in case the default behavior isn't
approriate.
Parameters: object - the continuatioble that will be executed throws: Throwable - when an unexpected error occurs since: 1.6.1
Resumes the execution of a paused continuation.
Parameters: continuationId - the ID of the continuation that will be resumed the ID of the resulting paused continuation; or
null if no continuation was paused or if the provided IDcouldn't be found throws: Throwable - when an error occurs since: 1.6
Executes a continuation whether it's paused or not. This is supposed to
only be used for answer continuations.
Parameters: continuationId - the ID of the existing continuation context thatwill be executed the ID of the resulting paused continuation; or
null if no continuation was paused or if the provided IDcouldn't be found throws: Throwable - when an error occurs since: 1.6
Starts the execution of a new instance of the provided class.
Parameters: className - the name of the class that will be executed the ID of the resulting paused continuation; or
null if no continuation was paused throws: Throwable - when an error occurs since: 1.6