...
There are three contributions in the tutorial:
- assets.jar containing most implementation artifacts
- store.jar containing the main store components
- cloud.jar containing utility components in the service "cloud"
Both store.jar and cloud.jar import artifacts from assets.jar.
...
5. List the deployable composites, find http://store#store under
store.jar. Open it in my browser to check it's what I want.
6. Mark http://store#store as deployed. Store has a reference to a
CurrencyConverter service (from composite http://cloud#cloud which is
not in my domain yet) so it shows a red-x and appears disabled.
7. Upload cloud.jar, find deployable composite http://cloud#cloud in it,
mark it deployed. The red-x on deployed composite http://store#store is
now gone.
8. Assuming I have 2 machines for running SCA in my network and have
already declared these 2 machines to my domain, allocate composites to
them. Select http://store#store and associate it with machine1.
Store.jar and assets.jar are downloaded to machine1 and machine1
configured with http://store#store.
9. Select http://cloud#cloud and associate it with machine2. Cloud.jar
and assets.jar are downloaded to machine2 and machine2 is configured
with http://cloud#cloud.
10. Display the list of deployed composites, select http://store#store,
click the start button, select http://cloud#cloud, click start.
...
A) Contribution workspace (containing installed contributions):
- Contribution model representing a contribution
- Reader for the contribution model
- Workspace model representing a collection of contributions
- Reader/writer for the workspace model
- HTTP based service for accessing the workspace
- Web browser client for the workspace service
- Command line client for the workspace service
- Validator for contributions in a workspace
B) Domain composite (containing deployed composites):
- We can just reuse the existing composite model
- HTTP based service for accessing the domain composite
- Web browser client for the domain composite service
- Command line client for the domain composite service
- Validator for composites deployed in the domain composite
- Function for processing wiring in the domain
C) Node configuration
- Implementation.node model
- Reader/writer for the implementation.node model
- Function for configuring composites assigned to nodes
- Function for pushing contributions and composites to nodes
D) Node runtime
- Runtime that loads a set of contributions and a composite
- HTTP based service for starting/stopping a node
- A node runtime needs to provide a way to monitor its status.
Contribution Features/Phases?
From ML thread http://www.mail-archive.com/tuscany-dev%40ws.apache.org/msg28311.html
- add/list/remove contributions/composites/nodes
- analyze/resolve/validate contributions and their dependencies
- associate composites with nodes/apply physical binding defaults/propogate physical addresses based on domain level wiring
- read/compile-build/write composites without requiring a runtime