Difference between revisions of "Execution Engine"

From Gcube Wiki
Jump to: navigation, search
(Execution Plan)
(Execution Events)
Line 16: Line 16:
  
 
=Execution Events=
 
=Execution Events=
 +
Every plan created and executed, follows a life cycle which in every point is updated and reported to the client through the use of ''events''. These events follow the Observer / Observable pattern and the defined events that are emitted during the execution life cycle are:
 +
*Execution Started
 +
*:Event emitted when the execution is initiated
 +
*Execution Completed
 +
*:Event emitted when the execution is completed either successfully or not
 +
*Execution Paused
 +
*:Event emitted when the execution is paused by the client
 +
*Execution Resumed
 +
*:Event emitted when the execution is resumed after being paused by the client
 +
*Execution Canceled
 +
*:Event emitted when the execution is canceled by the client
 +
*Progress Report
 +
*:Event emitted from internal [[ExecutionPlan_Elements | Plan Elements]] reporting on the progress of their execution
 +
*External Progress Report
 +
*:Event emitted from external invokable which has been invoked by one of [[ExecutionPlan_Elements#Java_Object_.28POJO.29 | Java Object]] and [[ExecutionPlan_Elements#Web_Service | Web Service]] reporting on the progress of their execution. This is only feasible if the invoked Java object or Web Service is declared and implemented to use an [[ExecutionEngine_ExecutionContext | Execution Context]].
 +
*Performance Report
 +
*:Event emitted from internal [[ExecutionPlan_Elements | Plan Elements]] reporting timing andf performance statistics on their operation

Revision as of 16:08, 10 February 2010

Invokable Profile

Execution Plan

For a client of the ExecutionEngine to be able to formally describe the plan that he wants to execute, the constructs offered by the Execution Plan are used. These constructs have the following main pillars.

  • Configuration
    Every plan is potentially one execution unit for the execution engine. Each plan while executing can request different parametrization.
  • Variables
    Tha variables defined in a plan are the common data placeholders through which the elements of the plan exchange data.
    • Data Types
      Each variable is typed and this type describes the different characteristics of the data exchanged.
    • Parameters
      Each variable is accessed through defined parameters. Parameters are distinguished by their direction and processing.
      • Filters
        Each parameter can provide either direct access to its underlying data or perform a number of elaborate filtering tasks before retrieving or storing data to its underlying Parameter and Data Type
  • Execution Tree
    The plan hierarchy is composed of a number of elements that control the flow and the actions of the plan

Execution Events

Every plan created and executed, follows a life cycle which in every point is updated and reported to the client through the use of events. These events follow the Observer / Observable pattern and the defined events that are emitted during the execution life cycle are:

  • Execution Started
    Event emitted when the execution is initiated
  • Execution Completed
    Event emitted when the execution is completed either successfully or not
  • Execution Paused
    Event emitted when the execution is paused by the client
  • Execution Resumed
    Event emitted when the execution is resumed after being paused by the client
  • Execution Canceled
    Event emitted when the execution is canceled by the client
  • Progress Report
    Event emitted from internal Plan Elements reporting on the progress of their execution
  • External Progress Report
    Event emitted from external invokable which has been invoked by one of Java Object and Web Service reporting on the progress of their execution. This is only feasible if the invoked Java object or Web Service is declared and implemented to use an Execution Context.
  • Performance Report
    Event emitted from internal Plan Elements reporting timing andf performance statistics on their operation