Skip to main content

OpenCorba: a Reflective Open Broker

  • Conference paper
  • First Online:
Meta-Level Architectures and Reflection (Reflection 1999)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1616))

Included in the following conference series:

Abstract

Today, CORBA architecture brings the major industrial solution for achieving the interoperability between distributed software components in heterogeneous environments. While the CORBA project attempts to federate distributed mechanisms within a unique architecture, its internal model is not very flexible and seems not to be suitable for future evolutions. In this paper, we present OpenCorba, a reflective open broker, enabling users to adapt dynamically the representation and the execution policies of the software bus.

We first expose the reflective foundations underlying the implementation of OpenCorba: i) metaclasses which provide a better separation of concerns in order to improve the class reuse; ii) a protocol which enables the dynamic changing of metaclass in order to allow run-time adaptation of systems.

Based on this reflective environment, OpenCorba enables the adaptability of the internal characteristics of the broker in order to change its run-time behavior (e.g. remote invocation, IDL type checking, IR error handling). OpenCorba gives a clear example of the benefits of reflective middleware.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Bergmans L.Composing Concurrent Objects. PhD thesis, University of Twente, Enschede, Netherlands, June 1994.

    Google Scholar 

  2. Birman K., Schiper A., Stephenson P. — Lightweight Causal and Atomic Group Multicast. In ACM Transactions on Computer Systems, vol.9, no3, p.272–314, 1991.

    Article  Google Scholar 

  3. Blair G.S., Coulson G., Davies N., Robin P., Fitzpatrick T. — Adaptive Middleware for Mobile Multimedia Applications. In Proceedings of the 8th International Workshop on NOSSDAV’97, St-Louis, Missouri, May 1997.

    Google Scholar 

  4. Blair G.S., Coulson G., Robin P., Papathomas M. — An Architecture for Next Generation Middleware. In Proceedings of Middleware’98, Springer-Verlag, p.191–206, N. Davies, K. Raymond, J. Seitz Eds, September 1998.

    Google Scholar 

  5. Brant J., Foote B., Johnson R., Roberts D. — Wrappers to the Rescue. In Proceedings of ECOOP’98, Springer-Verlag, Brussels, Belgium, July 1998.

    Google Scholar 

  6. Briot J.P., Guerraoui R., Löhr K.P. — Concurrency and Distribution in Object-oriented Programming. In ACM Computer Surveys, vol.30, no3, p.291–329, September 1998.

    Article  Google Scholar 

  7. Bouraqadi-Saâdani N., Ledoux T., Rivard F. — Safe Metaclass Programming. In Proceedings of OOPSLA’98, ACM Sigplan Notices, Vancouver, Canada, October 1998.

    Google Scholar 

  8. Chiba S., Masuda T. — Designing an Extensible Distributed Language with a Meta-Level Architecture. In Proceedings of ECOOP’93, p.482–501, LNCS 707, Springer-Verlag, Kaiserslautern, Germany, 1993.

    Google Scholar 

  9. Cointe P. — Metaclasses are First Class: the ObjVlisp Model. In Proceedings of OOPSLA’87, ACM Sigplan Notices, p.156–167, Orlando, Florida, October 1987.

    Google Scholar 

  10. Danforth S., Forman I.R. — Reflections on Metaclass Programming in SOM. In Proceedings of OOPSLA’94, ACM Sigplan Notices, Portland, Oregon, October 1994.

    Google Scholar 

  11. Fabre J.C, Pérennou T. — A metaobject architecture for fault tolerant distributed systems: the FRIENDS approach. In IEEE Transactions on Computers. Special Issue on Dependability of Computing Systems, vol.47, no1, p.78–95, January 1998

    Article  Google Scholar 

  12. Gamma E., Helm R., Johnson R., Vlissides JohnDesign Patterns, Addison-Wesley Reading, Massachusetts, 1995.

    Google Scholar 

  13. Goldberg A., Robson D.Smalltalk-80: The Language, Addison-Wesley, Reading, Massachusetts, 1989.

    MATH  Google Scholar 

  14. Golm M.Design and Implementation of a Meta Architecture for Java. Master’s Thesis, University of Erlangen, Germany, January 1997.

    Google Scholar 

  15. Gosling J., Joy B., Steele G.The Java Language Specification. The Java Series, Addison-Wesley, Reading, Massachusetts, 1996.

    MATH  Google Scholar 

  16. Gowing B., Cahill V. — Meta-Object Protocols for C++: The Iguana Approach. In Proceedings of Reflection’96, Ed. Kiczales, San Francisco, California, April 1996.

    Google Scholar 

  17. Guerraoui R., Schiper A. — Software Based Replication for Fault Tolerance. In IEEE Computer, vol.30(4), April 1997.

    Google Scholar 

  18. Hayton R., Herbert A., Donaldson D. — FlexiNet-A flexible component oriented middleware system. In Proceedings of ACM SIGOPS European Workshop, Sintra, Portugal, September 1998.

    Google Scholar 

  19. Hürsh W.L., Lopes C.V.Separation of Concerns. Technical Report NUCCS-95-03, College of Computer Science, Northeastern University, Boston, MA, February 1995.

    Google Scholar 

  20. Jul E., Levy H., Hutchinson N., Black A. — Fine-grained mobility in the Emerald system. In ACM Transactions on Computer Systems, vol.6(1), p.109–133, February 1988.

    Article  Google Scholar 

  21. Kiczales G., des Rivieres J., Bobrow D.G.The Art of the Metaobject Protocol. The MIT Press, 1991.

    Google Scholar 

  22. Kiczales G., Lamping J., Mendhekar A., Maeda C., Lopes C., Loingtier J.M, Irwin J. — Aspect-Oriented Programming. In Proceedings of ECOOP’97, LNCS 1241, Springer-Verlag, p.220–242, Jyväskyla, Finland, June 1997.

    Google Scholar 

  23. Ledoux T., Cointe P. — Explicit Metaclasses as a Tool for Improving the Design of Class Libraries. In Proceedings of ISOTAS’96, LNCS 1049, p.38–55, Springer-Verlag, Kanazawa, Japan, March 1996.

    Google Scholar 

  24. Ledoux T. — Implementing Proxy Objects in a Reflective ORB. In Workshop CORBA: Implementation, Use and Evaluation, ECOOP’97, Jyväskylä, Finland, June 1997.

    Google Scholar 

  25. Ledoux T.Réflexion dans les systèmes répartis: application à CORBA et Smalltalk. PhD thesis, Université de Nantes, École des Mines de Nantes, March 1998. (in french)

    Google Scholar 

  26. Lieberherr K.J.Adaptive Object-Oriented Software: The Demeter Method with Propagation Patterns. PWS Publishing Company, Boston, 1996.

    Google Scholar 

  27. Maes P. — Concepts and Experiments in Computational Reflection. In Proceedings of OOPSLA’87, ACM Sigplan Notices, p.147–155, Orlando, Florida, October 1987.

    Google Scholar 

  28. Masuhara H., Yonezawa A. — Design and Partial Evaluation of Meta-objects for a Concurrent Reflective Language. In Proceedings of ECOOP’98, LNCS 1445, p.418–439, Springer-Verlag, Brussels, Belgium, July 1998.

    Google Scholar 

  29. Mcaffer J. — Meta-level architecture support for distributed objects. In Proceedings of IWOOOS’95, p.232–241, Lund, Sweden, 1995.

    Google Scholar 

  30. Meyer B.Eiffel: The Language. Prentice Hall, second printing, 1992.

    Google Scholar 

  31. Okamura H., Ishikawa Y. — Object Location Control Using Meta-level Programming. In Proceedings of ECOOP’94, p.299–319, LNCS 821, Springer-Verlag, July 1994.

    Google Scholar 

  32. Object Management GroupObject Management Architecture Guide, Revision 3.0. OMG TC Document ab/97-05-05, June 1995.

    Google Scholar 

  33. Object Management GroupCORBAservices: Common Object Services Specification. OMG TC Document formal/98-07-05, November 1997.

    Google Scholar 

  34. Object Management GroupThe Common Object Request Broker: Architecture and Specification, Revision 2.2. OMG TC Document formal/98-07-01, February 1998.

    Google Scholar 

  35. Rivard F. — A New Smalltalk Kernel Allowing Both Explicit and Implicit Metaclass Programming. In Workshop “Extending the Smalltalk Language”, OOPSLA’96, San Jose, California, October 1996.

    Google Scholar 

  36. Rivard F.Évolution du comportement des objets dans les langages à classes réflexifs. PhD thesis, Université de Nantes, École des Mines de Nantes, June 1997. (in french)

    Google Scholar 

  37. Roman M., Kon F., Campbell R.H. — Design and Implementation of Runtime Reflection in Communication Middleware: the dynamicTAO Case. In Workshop on Middleware, ICDCS’99, Austin, Texas, May 1999.

    Google Scholar 

  38. Schmidt D., Cleeland C. — Applying Patterns to Develop Extensible ORB Middleware. In IEEE Communications Magazine, 1999. (to appear)

    Google Scholar 

  39. Shapiro M. — Structure and Encapsulation in Distributed Systems: The Proxy Principle. In Proceedings of the 6th International Conference on Distributed Computer Systems, p.198–204, Cambridge, MA, May 1986.

    Google Scholar 

  40. Smith B.C.Reflection and Semantics in a Procedural Programming Language. PhD thesis, MIT, January 1982.

    Google Scholar 

  41. Sun MicrosystemsJava Remote Method Invocation (RMI). At http://java.sun.com/products/jdk/rmi/index.html

    Google Scholar 

  42. Watanabe T., Yonezawa A. — Reflection in an Object-Oriented Concurrent Language. In Proceedings of OOPSLA’88, ACM Sigplan Notices, p.306–315, San Diego, California, September 1988.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 1999 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ledoux, T. (1999). OpenCorba: a Reflective Open Broker. In: Cointe, P. (eds) Meta-Level Architectures and Reflection. Reflection 1999. Lecture Notes in Computer Science, vol 1616. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-48443-4_19

Download citation

  • DOI: https://doi.org/10.1007/3-540-48443-4_19

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-66280-8

  • Online ISBN: 978-3-540-48443-1

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics