CORBA Programming Reference
This document is intended for application developers interested in using the BEA Tuxedo CORBA C++ API to write client and joint client/server applications and object implementations. It assumes a familiarity with CORBA, and with C++ and Java programming.
OMG IDL Syntax and the C++ IDL Compiler
OMG IDL Compiler Extensions
C++ IDL Compiler Constraints
Implementation Configuration File (ICF)
ICF Syntax
Sample ICF File
Creating the ICF File
TP Framework
A Simple Programming Model
Control Flow
Object State Management
Transaction Integration
Object Housekeeping
High-level Services
State Management
Activation Policy
Application-controlled Activation and Deactivation
Servant Lifetime
Saving and Restoring Object State
Transactions
Transaction Policies
Transaction Initiation
Transaction Termination
Transaction Suspend and Resume
Restrictions on Transactions
SQL and Global Transactions
Voting on Transaction Outcome
Transaction Timeouts
Parallel Objects
TP Framework API
Server Interface
ServerBase Interface
Server::create_servant()
ServerBase::create_servant_with_id()
Server::initialize()
ServerBase::thread_initialize()
Server::release()
ServerBase::thread_release()
Tobj_ServantBase Interface
Tobj_ServantBase:: activate_object()
Tobj_ServantBase::_add_ref()
Tobj_ServantBase::deactivate_object()
Tobj_ServantBase::_is_reentrant()
Tobj_ServantBase::_remove_ref()
TP Interface
TP::application_responsibility()
TP::bootstrap()
TP::close_xa_rm()
TP::create_active_object_reference()
TP::create_object_reference()
TP::deactivateEnable()
TP::get_object_id ()
TP::get_object_reference()
TP::open_xa_rm()
TP::orb()
TP::register_factory()
TP::unregister_factory()
TP::userlog()
CosTransactions::TransactionalObject Interface Not Enforced
Error Conditions, Exceptions, and Error Messages
Exceptions Raised by the TP Framework
Exceptions in the Server Application Code
Exceptions and Transactions
Restriction of Nested Calls on CORBA Objects
CORBA Bootstrapping Programming Reference
Why Bootstrapping Is Needed
Supported Bootstrapping Mechanisms
BEA Bootstrapping Mechanism
How Bootstrap Objects Work
Types of BEA Remote Clients Supported
Capabilities and Limitations
Bootstrap Object API
Tobj Module
C++ Mapping
Java Mapping
Microsoft Desktop Client Mapping
Automation Mapping
C++ Member Functions
Tobj_Bootstrap
Tobj_Bootstrap::register_callback_port
Tobj_Bootstrap::resolve_initial_references
Tobj_Bootstrap::destroy_current()
Java Methods
Automation Methods
Initialize
CreateObject
DestroyCurrent
Bootstrap Object Programming Examples
Java Client Example: Getting a SecurityCurrent Object
Visual Basic Client Example: Using the Bootstrap Object
Interoperable Naming Service Bootstrapping Mechanism
Introduction
INS Object References
INS Command-line Options
INS Initialization Operations
INS Object URL Schemes
Getting a FactoryFinder Object Reference Using INS
Getting a PrincipalAuthenticator Object Reference Using INS
Getting a TransactionFactory Object Reference Using INS
FactoryFinder Interface
Capabilities, Limitations, and Requirements
Functional Description
Locating a FactoryFinder
Registering a Factory
Locating a Factory
Creating Application Factory Keys
C++ Member Functions and Java Methods
CosLifeCycle::FactoryFinder::find_factories
Tobj::FactoryFinder::find_one_factory
Tobj::FactoryFinder::find_one_factory_by_id
Tobj::FactoryFinder::find_factories_by_id
Tobj::Factoryfinder::list_factories
Automation Methods
DITobj_FactoryFinder.find_one_factory
DITobj_FactoryFinder.find_one_factory_by_id
DITobj_FactoryFinder.find_factories_by_id
DITobj_FactoryFinder.find_factories
DITobj_FactoryFinder.list_factories
Programming Examples
Using the FactoryFinder Object
Using Extensions to the FactoryFinder Object
Security Service
Transactions Service
Notification Service
Request-Level Interceptors
CORBA Interface Repository Interfaces
Structure and Usage
Programming Information
Performance Implications
Building Client Applications
Getting Initial References to the InterfaceRepository Object
Interface Repository Interfaces
Supporting Type Definitions
IRObject Interface
Contained Interface
Container Interface
IDLType Interface
Repository Interface
ModuleDef Interface
ConstantDef Interface
TypedefDef Interface
StructDef
UnionDef
EnumDef
AliasDef
PrimitiveDef
StringDef
WstringDef
ExceptionDef
AttributeDef
OperationDef
InterfaceDef
Joint Client/Servers
Introduction
Main Program and Server Initialization
Servants
Servant Inheritance from Skeletons
Callback Object Models Supported
Configuring Servers to Call Remote Joint Client/Server Objects
Preparing Callback Objects Using CORBA (C++ Joint Client/Servers Only)
Preparing Callback Objects Using BEAWrapper Callbacks
Java Joint Client/Server Programming Considerations
C++ BEAWrapper Callbacks Interface API
Callbacks
start_transient
start_persistent_systemid
restart_persistent_systemid
start_persistent_userid
stop_object
stop_all_objects
get_string_oid
~Callbacks
Java BEAWrapper Callbacks Interface API
Development Commands
Mapping of OMG IDL Statements to C++
Mappings
Data Types
Strings
wchars
wstrings
Constants
Enums
Structs
Unions
Sequences
Arrays
Exceptions
Mapping of Pseudo-objects to C++
Usage
Mapping Rules
Relation to the C PIDL Mapping
Typedefs
Implementing Interfaces
Implementing Operations
PortableServer Functions
Modules
Interfaces
Generated Static Member Functions
Object Reference Types
Attributes
Any Type
Value Type
Fixed-length Versus Variable-length User-defined Types
Using var Classes
Sequence vars
Array vars
String vars
Using out Classes
Object Reference out Parameter
Sequence outs
Array outs
String outs
Argument Passing Considerations
Operation Parameters and Signatures
CORBA API
Global Classes
Pseudo-objects
Any Class Member Functions
CORBA::Any::Any()
CORBA::Any::Any(const CORBA::Any & InitAny)
CORBA::Any::Any(TypeCode_ptr TC, void * Value, Boolean Release)
CORBA::Any::~Any()
CORBA::Any & CORBA::Any::operator=(const CORBA::Any & InitAny)
void CORBA::any::operator<<=()
CORBA::Boolean CORBA::Any::operator>>=()
CORBA::Any::operator<<=()
CORBA::Boolean CORBA::Any::operator>>=()
CORBA::TypeCode_ptr CORBA::Any::type() const
void CORBA::Any::replace()
Context Member Functions
Memory Management
CORBA::Context::context_name
CORBA::Context::create_child
CORBA::Context::delete_values
CORBA::Context::get_values
CORBA::Context::parent
CORBA::Context::set_one_value
CORBA::Context::set_values
ContextList Member Functions
CORBA::ContextList:: count
CORBA::ContextList::add
CORBA::ContextList::add_consume
CORBA::ContextList::item
CORBA::ContextList::remove
NamedValue Member Functions
Memory Management
CORBA::NamedValue::flags
CORBA::NamedValue::name
CORBA::NamedValue::value
NVList Member Functions
Memory Management
CORBA::NVList::add
CORBA::NVList::add_item
CORBA::NVList::add_value
CORBA::NVList::count
CORBA::NVList::item
CORBA::NVList::remove
Object Member Functions
CORBA::Object::_create_request
CORBA::Object::_duplicate
CORBA::Object::_get_interface
CORBA::Object::_is_a
CORBA::Object::_is_equivalent
CORBA::Object::_nil
CORBA::Object::_non_existent
CORBA::Object::_request
CORBA Member Functions
CORBA::release
CORBA::is_nil
CORBA::hash
CORBA::resolve_initial_references
ORB Member Functions
CORBA::ORB::clear_ctx
CORBA::ORB::create_context_list
CORBA::ORB::create_environment
CORBA::ORB::create_exception_list
CORBA::ORB::create_list
CORBA::ORB::create_named_value
CORBA::ORB::create_operation_list
CORBA::ORB::create_policy
CORBA::ORB::destroy
CORBA::ORB::get_ctx
CORBA::ORB::get_default_context
CORBA::ORB::get_next_response
CORBA::ORB::inform_thread_exit
CORBA::ORB::list_initial_services
CORBA::ORB::object_to_string
CORBA::ORB::perform_work
CORBA::ORB::poll_next_response
CORBA::ORB::resolve_initial_references
CORBA::ORB::send_multiple_requests_deferred
CORBA::ORB::send_multiple_requests_oneway
CORBA::ORB::set_ctx
CORBA::ORB::string_to_object
CORBA::ORB::work_pending
ORB Initialization Member Function
CORBA::ORB_init
ORB
Policy Member Functions
CORBA:Policy::copy
CORBA::Policy::destroy
PortableServer Member Functions
PortableServer::POA::activate_object
PortableServer::POA::activate_object_with_id
PortableServer::POA::create_id_assignment_policy
PortableServer::POA::create_lifespan_policy
PortableServer::POA::create_POA
PortableServer::POA::create_reference
PortableServer::POA::create_reference_with_id
PortableServer::POA::deactivate_object
PortableServer::POA::destroy
PortableServer::POA::find_POA
PortableServer::POA::reference_to_id
PortableServer::POA::the_POAManager
PortableServer::ServantBase::_default_POA
POA Current Member Functions
PortableServer::Current::get_object_id
PortableServer::Current::get_POA
POAManager Member Functions
PortableServer::POAManager::activate
PortableServer::POAManager::deactivate
POA Policy Member Objects
PortableServer::LifespanPolicy
PortableServer::IdAssignmentPolicy
Request Member Functions
CORBA::Request::arguments
CORBA::Request::ctx(Context_ptr)
CORBA::Request::get_response
CORBA::Request::invoke
CORBA::Request::operation
CORBA::Request::poll_response
CORBA::Request::result
CORBA::Request::env
CORBA::Request::ctx
CORBA::Request::contexts
CORBA::Request::exceptions
CORBA::Request::target
CORBA::Request::send_deferred
CORBA::Request::send_oneway
Strings
CORBA::string_alloc
CORBA::string_dup
CORBA::string_free
Wide Strings
TypeCode Member Functions
Memory Management
CORBA::TypeCode::equal
CORBA::TypeCode::id
CORBA::TypeCode::kind
CORBA::TypeCode::param_count
CORBA::TypeCode::parameter
Exception Member Functions
Standard Exceptions
Exception Definitions
Object Nonexistence
Transaction Exceptions
ExceptionList Member Functions
CORBA::ExceptionList::count
CORBA::ExceptionList::add
CORBA::ExceptionList::add_consume
CORBA::ExceptionList::item
CORBA::ExceptionList::remove
Server-side Mapping
Implementing Interfaces
Inheritance-based Interface Implementation
Delegation-based Interface Implementation
Implementing Operations
|
Copyright © 2001 BEA Systems, Inc. All rights reserved.
Required browser: Netscape 4.0 or higher, or Microsoft Internet Explorer 4.0 or higher.
|