Z2 resource model intro » History » Version 7
Henning Blohm, 21.09.2012 10:04
1 | 1 | Henning Blohm | h1. An introduction to the Z2 component model |
---|---|---|---|
2 | |||
3 | 2 | Henning Blohm | In order to understand Z2 in some depth, it is essential to understand the Z2 component model. |
4 | |||
5 | 7 | Henning Blohm | The true reference on that is "in the documentation":http://www.z2-environment.eu/v21doc#componentsAndComponentRepos. |
6 | 1 | Henning Blohm | |
7 | 7 | Henning Blohm | The one minute overview is: |
8 | |||
9 | Z2 core, at its very heart, knows of these conceptual objects: |
||
10 | |||
11 | 5 | Henning Blohm | !pseudo_uml.png! |
12 | 3 | Henning Blohm | |
13 | *Resource*: The service provider API for extending Z2. If you implement anything that can be looked up, it is implemented as a "Resource":http://www.z2-environment.net/javadoc/com.zfabrik.core.api!2Fjava/api/com/zfabrik/resources/provider/Resource.html. |
||
14 | |||
15 | *Component*: _Components_ bridge between declarations and persistent files and Resources. Components are stored in component repositories. A component has a type. The type is used to resolve a component factory that - at runtime - constructs a Resource representing the component. Components are what Z2 assigns a life-cycle to. A Web application, Java code, data sources, make components. |
||
16 | |||
17 | *Component Type*: A _Component Type_ is identified by a name and implemented as a component. The responsibility of a component type is to turn component declarations of a specified type into Resources at runtime. Component types implement "IComponentFactory":http://www.z2-environment.net/javadoc/com.zfabrik.core.api!2Fjava/api/index.html (implicitly or explicitly). |
||
18 | |||
19 | *Component Repository*: _Component Repositories_ make components available to Z2. That is, on the one hand a component repository has some persistent storage that holds component declarations. On the other hand, a component repository is a component that implements "IComponentRepository":http://www.z2-environment.net/javadoc/com.zfabrik.core.api!2Fjava/api/com/zfabrik/components/provider/IComponentsRepository.html. |
||
20 | |||
21 | *Synchronizer*: A synchronizer checks component repositories for updates and performs invalidations of modified components at runtime. |
||
22 | 1 | Henning Blohm | |
23 | 3 | Henning Blohm | |
24 | 7 | Henning Blohm | Interested? |