SCA Platform Specifications
Total Page:16
File Type:pdf, Size:1020Kb
SCA Platform Specifications - Version 2.0 Damien Fournier, Philippe Merle, Gaël Blondelle, Lionel Seinturier, Nicolas Dolet, Christophe Demarey, Vivien Quéma, Valerio Schiavoni, Samir Tata, Djamel Belaïd, et al. To cite this version: Damien Fournier, Philippe Merle, Gaël Blondelle, Lionel Seinturier, Nicolas Dolet, et al.. SCA Plat- form Specifications - Version 2.0. [Research Report] INRIA. 2009. inria-00595502 HAL Id: inria-00595502 https://hal.inria.fr/inria-00595502 Submitted on 24 May 2011 HAL is a multi-disciplinary open access L’archive ouverte pluridisciplinaire HAL, est archive for the deposit and dissemination of sci- destinée au dépôt et à la diffusion de documents entific research documents, whether they are pub- scientifiques de niveau recherche, publiés ou non, lished or not. The documents may come from émanant des établissements d’enseignement et de teaching and research institutions in France or recherche français ou étrangers, des laboratoires abroad, or from public or private research centers. publics ou privés. SCA Platform Specifications - Version 2.0 Funded by http://www.agence-nationale-recherche.fr SCOrWare - SCA Platform Specifications 2.0 Colophon Date May 24, 2011 Deliverable type Specification Version 2.0 Status Final Work Package 1 Access permissions Public Editors INRIA Damien Fournier Philippe Merle Authors EBM WebSourcing Gaël Blondelle INRIA Adam team Philippe Merle Lionel Seinturier Damien Fournier Nicolas Dolet Christophe Demarey INRIA Sardes team Vivien Quema Valerio Schiavoni INT Samir Tata Djamel Belaid IRIT Daniel Hagimont I SCOrWare - SCA Platform Specifications 2.0 II SCOrWare - SCA Platform Specifications 2.0 Table of Contents 1 Introduction......................................................................................................................1 1.1 SCA specification coverage........................................................................................1 1.2 Overview of the SCOrWare Platform..........................................................................2 1.3 Changes with Platform Specifications 1.0..................................................................3 2 Unification of Architecture-based and Service-Oriented Approaches.......................5 2.1 Service-Oriented Vs Architecture-Based Approaches................................................5 2.2 Beyond the war of service-oriented and component models.....................................6 2.3 The SCA Component Model.......................................................................................7 2.3.1 Programming Artifacts................................................................................................................... 8 2.3.2 Java Component Implementation................................................................................................... 9 2.3.3 Example.......................................................................................................................................... 9 2.4 The JBI Component Model.......................................................................................11 2.4.1 JBI, a standard for SOA................................................................................................................ 11 2.4.2 JBI Components............................................................................................................................ 12 2.4.3 Component interactions................................................................................................................ 13 2.4.4 HelloWorldService component..................................................................................................... 16 2.4.5 Install and start a JBI component................................................................................................ 19 2.4.6 Conclusion.................................................................................................................................... 20 2.5 Support SCA in JBI...................................................................................................20 2.5.1 SCA Vs JBI .................................................................................................................................. 20 2.5.2 Design in SCA and run in JBI...................................................................................................... 20 2.5.3 SCA as service engine ................................................................................................................. 21 2.6 The Fractal Component Model.................................................................................21 2.6.1 Components and bindings............................................................................................................ 22 2.6.2 Levels of control........................................................................................................................... 24 2.6.3 Type system................................................................................................................................... 25 2.6.4 Instantiation.................................................................................................................................. 25 2.7 Mapping SCA to Fractal............................................................................................25 2.8 Summary...................................................................................................................26 3 Common Meta Model between Platform and Tooling................................................27 3.1 Objectives.................................................................................................................27 3.2 Architecture...............................................................................................................27 3.3 Specification..............................................................................................................28 3.3.1 Schema validation........................................................................................................................ 28 3.3.2 Model structure............................................................................................................................. 32 3.3.3 Validation Rules............................................................................................................................ 33 3.4 Summary...................................................................................................................35 4 Runtime Environment....................................................................................................37 III SCOrWare - SCA Platform Specifications 2.0 4.1 Tinfi...........................................................................................................................37 4.1.1 Objectives..................................................................................................................................... 37 4.1.2 Specification................................................................................................................................. 37 4.1.3 Architecture.................................................................................................................................. 38 4.1.4 Implementation............................................................................................................................. 43 4.1.5 Summary....................................................................................................................................... 44 4.2 Integration with JBI .................................................................................................44 4.2.1 Objectives..................................................................................................................................... 44 4.2.2 Specification................................................................................................................................. 44 4.2.3 Summary....................................................................................................................................... 47 5 Binding Factory..............................................................................................................49 5.1 Objectives ................................................................................................................49 5.2 Specification..............................................................................................................49 5.2.1 Export........................................................................................................................................... 50 5.2.2 Bind............................................................................................................................................... 50 5.3 Architecture...............................................................................................................51 5.3.1 BindingFactory ........................................................................................................................... 52 5.3.2 PluginResolver ............................................................................................................................ 52 5.4 Core operations........................................................................................................53 5.4.1 Export..........................................................................................................................................