CORBA EXPLAINED SIMPLY
A concise book for people who want a technical understanding of the concepts and terminology of CORBA without learning the low-level details
Ciaran McHale
Table of contents
Availability and Copyright
Availability
Copyright
Trademarks
Dedication
Preface
Intended Audience
How to Read this Book
About the Author
About the Contributing Author
Disclaimer
Acknowledgments
Part I
Introduction to CORBA
Core Concepts and Terminology
Object Management Group (OMG)
CORBA
Client and Server
Interface Definition Language (IDL)
Interoperable Object Reference (IOR)
CORBA Services
Benefits of CORBA
Maturity
Open standard
Wide platform support
Wide language support
Efficiency
Scalability
CORBA Success Stories
Part II
Application Development
Development of CORBA Applications
Development of a Traditional Application
Development of a CORBA Application
Critique of CORBA Application Development
Miscellaneous Notes
The Naming Service
Basic Concepts
Imperfections in the IDL
Practical Usage of the Naming Service
Concepts for Server-side Programming
Object
Servant
Why are Object and Servant Different Concepts?
Object Adapters
Portable Object Adapter (POA)
Different Kinds of POA
POA Managers
POA Policies
Available POA Policies
Creating Policy Objects and POAs
Part III
Application Deployment
Implementation Repository (IMR)
Introduction
IMR Concepts
Examples of Implementation Repositories
Comparison of Different IMRs
Deploying CORBA Applications
Deploying CORBA Clients
Deploying CORBA Servers
The Naming Service and the IMR
Part IV
CORBA Infrastructure
More Details on IDL
Pseudo-IDL,
local
and
native
types
Objects By Value (OBV)
Versioning
Repository IDs
Miscellaneous New Keywords
Interoperable Object Reference (IOR)
Introduction
IDL Definition of an IOR
Proxy
On-the-wire Protocols
GIOP, IIOP and the Protocol Stack
Marshaling IDL Types
GIOP Message Types
GIOP Redirection
Active Connection Management (ACM)
Service Contexts
Codeset Negotiation
Bidirectional GIOP/IIOP
The
corbaloc
and
corbaname
URLs
Introduction
The
corbaloc
URL
The
corbaname
URL
Architectural Support for
corbaloc
Bootstrapping Interoperability Problems
Current Objects
The Concept of Thread-local Data
Current Objects Provide Thread-local Data
Portable Interceptors
IOR Interceptors
Request Interceptors
The PICurrent Object
Meta-information Programming
What is Meta-information Programming?
TypeCodes and the Interface Repository
The
any
and
DynAny
Types
Dynamic Invocation Interface (DII)
Dynamic Server Interface (DSI)
CORBA Messaging
Quality of Service (Policy Objects)
Asynchronous Messaging Interface (AMI)
Time Independent Invocations (TII)
Further Reading
Proprietary Fault Tolerance
Basic Issues in Fault Tolerance
Example Products
Miscellaneous Issues
CORBA Fault Tolerance
Terminology and Basic Infrastructure
Writing CORBA-FT Servers
CORBA-FT Support in Clients
Logging and Recovery Infrastructure
Fault Notifiers
Critique
Other CORBA Infrastructure
Real-time CORBA
CORBA for Embedded Systems
CORBA Component Model (CCM)
Part V
CORBA Services
Trading Service
The
ServiceTypeRepository
Interface
The
Register
Interface
The
Lookup
Interface
Other Capabilities of the Trading Service
Using the Trading Service
Quality of Service
Object Transaction Service
Associating CORBA Objects with Database Records
Per-operation Transactions
Overview of Distributed Transactions
CORBA Object Transaction Service (OTS)
The Raw API of OTS
How OTS Builds on Top of Other Parts of CORBA
Publish and Subscribe Services
What is Publish and Subscribe?
Event Service
Notification Service
Telecom Log Service
Security
Features of CORBASEC
CORBASEC Conformance Levels
Issues Not Covered by CORBASEC
Evaluating CORBASEC Implementations
Final Comments
Further Reading
Services not Discussed in this Book
Persistent State Service (PSS)
Other CORBA Services and Domain Specifications
Part VI
Final Issues
Portability of CORBA Applications
CORBA Portability Issues
Non-CORBA Portability Issues with C++
Other CORBA Resources
Books and Articles
The CORBA Utilities Package
Internet Resources
Consultancy and Training Courses
References