Presentation is loading. Please wait.

Presentation is loading. Please wait.

OpenCCM MdC Philippe Merle LIFL - INRIA (soon)http://www.objectweb.org/OpenCCM/

Similar presentations


Presentation on theme: "OpenCCM MdC Philippe Merle LIFL - INRIA (soon)http://www.objectweb.org/OpenCCM/"— Presentation transcript:

1 www.objectweb.org OpenCCM MdC Philippe Merle LIFL - INRIA Philippe.Merle@lifl.fr http://corbaweb.lifl.fr/OpenCCM/ http://www.objectweb.org/OpenCCM/ (soon)http://www.objectweb.org/OpenCCM/

2 www.objectweb.org (OpenCCM) - D2 - 30/10/2001 OpenCCM è The Open CORBA Component Model Platform è 1st public available implementation of the OMG CCM  Few partial Java & C++ Open Source implementations already available  No commercial products planned è An Open Source project  Started since 2000  1st releases since Q1 2001  Done by LIFL è Available at http://corbaweb.lifl.fr/OpenCCM/http://corbaweb.lifl.fr/OpenCCM/ è Dedicated to research & experimental activities around next Distributed Component Computing and Middleware technologies

3 www.objectweb.org (OpenCCM) - D3 - 30/10/2001 The CORBA Component Model è 1 st open standard for Distributed Component Computing  Multi-languages, multi-OSs, multi-ORBs, multi-vendors, etc. è Like Entreprise Java Beans (EJB)  Components created and managed by homes  Running into containers managing system services transparently  Hosted by application component servers è But one component could  Have several input and output interfaces (operations & events) via the extended OMG Interface Definition Language (OMG IDL3)  Be implemented by several classes via the Component Implementation Definition Language (CIDL) è One CCM application could be deployed and run on several distributed servers simultaneously!

4 www.objectweb.org (OpenCCM) - D4 - 30/10/2001 A Distributed CCM Application (The OpenCCM demo3) ConsumerHome ServerHome ClientHome Server Client Consumer Home Component Implementation Base reference Facet Receptacle Event Source Event Sink ORB Notification Service

5 www.objectweb.org (OpenCCM) - D5 - 30/10/2001 An OMG Component IDL Example interface Service {... business operations... }; eventtype Event {... business data... }; component Client { uses Service to_server; }; component Server { provides Service the_service; publishes Event to_consumers; }; component Consumer { consumes Event from_servers; }; valuetype Key {... }; home ServerHome manages Server primarykey Key { factory create_server(... );... other business home operations... };

6 www.objectweb.org (OpenCCM) - D6 - 30/10/2001 Current OpenCCM Features è Fully written in Java  portability, maintenance and support  Linux, Solaris, and Windows supported  ORBacus 4.x, OpenORB 1.x, and VisiBroker 4.5 supported è An open compilation & generation tool chain  An OMG IDL3 Compiler  An OMG IDL3 Repository  A generator for equivalent OMG IDL2  A generator for extended Java skeleton classes extended skeletons ~ JOnAS interposition classes è A flexible distributed deployment & execution middleware infrastructure  A generic Java server to host Java components  API to start component servers and download component archives  Deployment driven by OMG IDLscript

7 www.objectweb.org (OpenCCM) - D7 - 30/10/2001 The OpenCCM Compilation & Generation Tool Chain OMG IDL3 Compiler IR3 Visitor Framework OMG IDL3 File OMG IDL3 Repository OMG IDL2 File OMG IDL3 Generator OMG IDL3 File JavaCC Parser Adapter Layout OMG IDL2 Generator Java Skeleton Generator Extended Java skeleton è A component framework for OMG IDL3 compilation and code generation

8 www.objectweb.org (OpenCCM) - D8 - 30/10/2001 Distributed Deployment with OpenCCM è Could be done by any CCM program at any time  serverActivator = NS.resolve_str(«AnHost»)  componentServer = serverActivator. create_component_server(«language=Java and ORB=ORBacus and...»)  container = componentServer.create_container(...)  home = container.install_home («http://www.lifl.fr/~merle/server.jar»,...)  server = home.create_server(...) è Dynamic control of distributed deployment! è Deployment does not imply code generation!

9 www.objectweb.org (OpenCCM) - D9 - 30/10/2001 Distributed Deployment with OpenCCM è Could be done by any CCM program at any time  service = server.get_the_service()  client.connect_to_server(service)  sink = consumer.get_from_servers()  server.subscribe_to_consumers(sink) è Dynamic control of component interconnections! è Build distributed application architectures! Server Client Server Consumer to_serverthe_service to_consumersfrom_servers

10 www.objectweb.org (OpenCCM) - D10 - 30/10/2001 Some Main Current Uses è French RNRT CESURE project  Distributed component based application deployment  Driven by Gemplus smart cards (i.e. Java Card + RMI)  Component replication, load balancing, and trading  Also running inside Compact iPAQ & SmartLife Gemplus PDA IBM J9 + ORBacus 4.1 + OpenCCM server ~ 5 Mo  See http://www.gemplus.fr/cesurehttp://www.gemplus.fr/cesure è Thales ATM  OMG IDL3 -> XMI -> Objecteering UML tool è Parallel components for GRID metacomputing  PARIS team at IRISA Rennes è Around 500 downloads

11 www.objectweb.org (OpenCCM) - D11 - 30/10/2001 Future Work: Related to CCM è Component Implementation Definition Language (CIDL) è Component Implementation Framework (CIF) è Containers for system services  security, persistence, transactions, and notification services è Persistent State Definition Language (PSDL) è ZIP archives and XML DTDs for packaging and deployment è Lastest CCM deployment APIs è JacORB 1.4 and Orbix 2000 support è Generator and runtime for C++ components

12 www.objectweb.org (OpenCCM) - D12 - 30/10/2001 Future Work: Related to ObjectWeb è Integration with other ObjectWeb projects  Jonathan for its CORBA personality  JOnAS for its distributed transaction service  JORM for its persistence service  JORAM for its reliable asynchronous middleware ... è Reusing most of basic common component frameworks like MonoLog, etc. è Providing input for next common component frameworks  open containers and application servers  distributed deployment infrastructure  component repositories ... è Available soon at http://www.objectweb.org/OpenCCM/http://www.objectweb.org/OpenCCM/

13 www.objectweb.org (OpenCCM) - D13 - 30/10/2001 Future Work: Advanced features è Open, adaptive, and extensible container framework  Applied to fault-tolerance, load balancing, real-time services  In cooperation with Thales è Composite design and execution (CODeX) è Trading-based deployment and supervision (TOSCA) è Component scripting engine inside è Various Graphical User Interfaces (GUI)  for designing, assembling, deployment, and management

14 www.objectweb.org (OpenCCM) - D14 - 30/10/2001 Other LIFL’s Projects è CorbaScript  The OMG CORBA Scripting Language Specification  Running on top of major C++ ORB products  http://corbaweb.lifl.fr/CorbaScript/ http://corbaweb.lifl.fr/CorbaScript/ è Java IDLscript  An OMG IDLscript + Java scripting engine  http://www.lifl.fr/~roos/jidlscript/ http://www.lifl.fr/~roos/jidlscript/ è TORBA  Trader Oriented Request Broker Architecture  Generation and runtime for safe trading components  http://www.lifl.fr/~leblanc/TORBA/ http://www.lifl.fr/~leblanc/TORBA/ è Perhaps, some future ObjectWeb projects?


Download ppt "OpenCCM MdC Philippe Merle LIFL - INRIA (soon)http://www.objectweb.org/OpenCCM/"

Similar presentations


Ads by Google