Tuscany Runtime Launching

This page describes the different usage scenarios on Tuscany runtime is launched to run the SCA applications.

User Type 1:

Wants to run a contribution/composite with not further coding and have a container that already embeds the Tuscany runtime to allow them to do this.

Supported mechanisms:

User Type 2:

Wants to run a contribution/composite with not further coding. I.e. They don't want to write a mainline to start a node instead they want to treat Tuscany as a pre-compiled application. They will have downloaded a binary Tuscany distribution

Supported mechanisms:

Command line. There are a number of variables we need to take account of here.

Two obvious approaches

  1. Different launcher classes to do different things.
  2. One launcher that is parameterized based on what you want it to do.

User Type 3

Wants to start the runtime from code as they want to embed it for some reason. Their reason could range from just wanting to automate testing right through to wanting to extend some existing software with SCA runtime capabilities. Will have downloaded a binary distribution. The pre-condition here is they have written some kind of mainline that uses Tuscany classes. It could fire up nodes using the NodeFactory or other parts Tuscany such as the model processing.

Supported mechanisms:

User Type 4

Wants to contribute to the Tuscany project or build extensions to Tuscany. Will have a source distribution. They may use various means to test infrastructure changes including the mechanisms used by User Types 1, 2 & 3.

Supported mechanisms: