3.3. Implementation
An implementation acts as the brain of a service component and it is how implement your application logic. The following implementation options are available:
- Bean : allows a CDI Bean to consume or provide services using annotations
- Camel : EIP-style routing and service composition using the XML or Java DSL in Apache Camel
- BPMN 2 : service orchestration and human task integration expressed as BPMN 2 and executed using jBPM
- BPEL Process : web service orchestration using the OASIS Business Process Execution Language
- Rules : decision services based on Drools
Implementations are private to a component, which means external consumers and providers are not aware of the details of a component's implementation (implementation-hiding). All interactions with other components within an application and with external services are handled through component services and references.
Figure 3.4. Implementation
Example 3.3. Sample Corresponding XML
<sca:component name="Routing"> <camel:implementation.camel> <camel:xml path="RoutingService.xml"/> </camel:implementation.camel> </sca:component>