Table of Contents Previous Next


Table of Contents

Introduction to CORBA Request-Level Interceptors
Interceptor Architecture
Capabilities and Limitations
Execution Flow
Client-side Execution
Client-side Exception Handling
Target-side Execution
Target-side Exception Handling
The exception_occurred Method
About Short-circuit Behavior
Using Multiple Request-Level Interceptors
Multiple Client-side Interceptors
Multiple Target-side Interceptors
Interceptors and Meta-Operations
Developing CORBA Request-Level Interceptors
Step 1: Identify the Interfaces of Your CORBA Application
Step 2: Write the Interceptor Implementation Code
Starting the Implementation File
Initializing the Interceptor at Run Time
Obtaining the Interface Name from a Request
Identifying Operations in the Request
Implementing the Interceptor’s Response Operation
Reading Parameters Out of a Data Input Stream
Exceptions
Step 3: Create the Interceptor Header File
Step 4: Build the Interceptor
Step 5: Test the Interceptor
Deploying CORBA Request-Level Interceptors
Registering an Interceptor
Unregistering an Interceptor
Changing the Order in Which Interceptors Are Called
PersonQuery Sample Application
How the PersonQuery Sample Application Works
PersonQuery Database
Client Application Command-line Interface
The OMG IDL for the PersonQuery Sample Application
Building and Running the PersonQuery Sample Application
Copying the Files for the PersonQuery Sample Application
Changing the Protection on PersonQuery Application Files
Setting the Environment Variables
Building the CORBA Client and Server Applications
Start the PersonQuery Client and Server Applications
Running the PersonQuery Sample Application
Stopping the PersonQuery Sample Application
InterceptorSimp Sample Interceptors
How the PersonQuery Sample Interceptors Work
Registering and Running the PersonQuery Interceptors
Examining the Output of the Interceptors
Unregistering the Interceptors
Unregistering the Interceptors
InterceptorSec Sample Interceptors
How the PersonQuery Sample Interceptors Work
How the InterceptorSec Target-side Interceptor Works
Using the SecurityCurrent Object
Obtaining the SecurityCurrent Object
Creating the List of User Attributes
Registering and Running the PersonQuery Interceptors
Examining the Interceptor Output
Unregistering the Interceptors
InterceptorData Sample Interceptors
InterceptorDataClient Interceptor
InterceptorDataTarget Interceptor
Implementing the InterceptorData Interceptors
Registering and Running the InterceptorData Interceptors
Examining the Interceptor Output
Unregistering the Interceptors
Request-Level Interceptor API
Interceptor Hierarchy
Interceptor Hierarchy
Note on Unused Interfaces
Interceptors::Interceptor Interface
Interceptor::id
Interceptor::shutdown
RequestLevelInterceptor::RequestInterceptor Interface
RequestContext Structure
ReplyContext Structure
RequestInterceptor::exception_occurred
RequestLevelInterceptor::ClientRequestInterceptor Interface
ClientRequestInterceptor::client_invoke
ClientRequestInterceptor::client_response
RequestLevelInterceptor::TargetRequestInterceptor Interface
TargetRequestInterceptor::target_invoke
TargetRequestInterceptor::target_response
AppRequestInterceptorInit
CORBA::DataInputStream Interface
DataInputStream::read_<primitive>
DataInputStream::read_array_<primitive>
Starter Request-Level Interceptor Files
Starter Implementation Code
Starter Header File Code

Copyright © 1994, 2017, Oracle and/or its affiliates. All rights reserved.