CORBA

This talk is based on:

1 Why CORBA?

2 Object Management Architecture

3 OMA Reference Model

Application Interface Domain Interfaces Common Facilities Object Services
Object Request Broker

4 Object Frameworks

5 CORBA

Client   Object Implementation
Dynamic Invocation IDL Stub   IDL Skeleton
Object Adapter
ORB Core

6 ORB Core

7 OMG Interface Definition Language

7.1 IDL Types

7.2 IDL Template Types

7.3 IDL Example

module EmployeeInfoServer {
  interface Employee;
  interface Department;

  exception EmployeeInfoException {
    string message;
  };

  interface Employee {
    unsigned long getId();    
    Department getDepartment();    
    float authorizeCommission(in float saleVolume)
      raises (EmployeeInfoException);
    attribute string name; 
    attribute string ssn;
  };

  typedef sequence<Employee> EmployeeList;

  interface Department {
    unsigned long getId();    
    attribute string name;
    EmployeeList employees();
  };
};

               

7.4 IDL Object Reference Types

7.5 IDL Interface Inheritance

7.6 IDL Language Mapping

OMG IDL Type C++ Mapping Type
long, short long, short
float, double float, double
enum enum
char char
boolean boolean
octet unsigned char
any Any class
struct struct
union class
string char*
wstring wchar_t*
sequence class
fixed Fixed template class
object reference pointer or object
interface class

8 Interface Repository

9 Stubs and Skeletons

10 Dynamic Invocation

10.1 Dynamic Invocation Interface

10.2 Dynamic Skeleton Interface

11 Adapters

adapter design pattern

11.1 Object Adapter

12 Inter-ORB Protocols

URLs

  1. Douglas C. Schmidt, http://www.cs.wustl.edu/~schmidt/
  2. CORBA Overview, http://www.cs.wustl.edu/~schmidt/corba-overview.html
  3. CORBA Overview, http://www.omg.org/cgi-bin/doc?formal/01-12-40
  4. CORBA 2.6 Formal Specification, http://www.omg.org/technology/documents/formal/corba_2.htm
  5. Steve Vinoski, http://www.iona.com/hyplan/vinoski
  6. CORBA: Integrating Diverse Applications within Distributed Heterogeneous Environments., http://jmvidal.cse.sc.edu/library/vinoski97a.pdf
  7. OMG Interface Definition Language Definition Language, http://www-106.ibm.com/developerworks/webservices/library/co-corbajct3.html
  8. OMG, http://www.omg.org
  9. IDL to Java mapping, http://www.omg.org/technology/documents/formal/java_language_mapping_to_omg_idl.htm
  10. wikipedia:Adapter_pattern, http://www.wikipedia.org/wiki/Adapter_pattern

This talk available at http://jmvidal.cse.sc.edu/talks/corba/
Copyright © 2009 José M. Vidal . All rights reserved.

26 February 2004, 12:30PM