CPI-C Reference


Part 1. CPI-C 2.0 Architecture

Partial Table-of-Contents

  • Chapter 1. Introduction
  • CPI-C and the Conversational Model
  • Who Should Read This Book
  • What Is New in This Book
  • Relationship to CPI-C 2.1 Specification
  • Relationship to Products
  • Additional Information Sources
  • Previous Editions of this Reference
  • Related APPC/LU 6.2 Publications
  • CD-ROM
  • Solution Developers Organization
  • Online Information--CPI-C, APPC, and APPN
  • CompuServe
  • OS/2 BBS
  • Internet
  • Functional Levels of CPI Communications
  • CPI-C 1.0
  • CPI-C 1.1
  • X/Open CPI-C
  • CPI-C 1.2
  • CPI-C 2.0
  • X/Open CPI-C 2.0
  • CPI-C 2.1
  • Call Table for Functional Levels of CPI-C
  • Naming Conventions--Calls, Characteristics, Variables, and Values
  • Chapter 2. CPI Communications Terms and Concepts
  • Communication across a Network
  • Conversation Types
  • Send-Receive Modes
  • Program Partners
  • Identifying the Partner Program
  • Operating Environment
  • Node Services
  • Side Information
  • Distributed Directory
  • CPI Communications Directory Object
  • Using the Distributed Directory
  • Interaction with Side Information and Set Calls
  • Distributed Security
  • Operating System
  • Program Calls
  • Starter Set Calls
  • Establishing a Conversation
  • Multiple Conversations
  • Partner Program Names
  • Multiple Outbound Conversations
  • Multiple Inbound Conversations
  • Contexts and Context Management
  • Relationship between Contexts and Conversations
  • Relationship between Contexts and Security Parameters
  • Inbound and Outbound Conversations
  • Conversation Characteristics
  • Modifying and Viewing Characteristics
  • Characteristic Values and CRMs
  • Characteristic Values and Send-Receive Modes
  • Automatic Conversion of Characteristics
  • Automatic Data Conversion
  • Data Conversion
  • Data Buffering and Transmission
  • Concurrent Operations
  • Using Multiple Program Threads
  • Non-Blocking Operations
  • Conversation-Level Non-Blocking
  • Queue-Level Non-Blocking
  • Working with Wait Facility
  • Wait Facility Scenario
  • Using Callback Function
  • Canceling Outstanding Operations
  • Non-Blocking Calls and Context Management
  • Conversation Security
  • Program Flow--States and Transitions
  • Support for Resource Recovery Interfaces
  • Coordination with Resource Recovery Interfaces
  • Take-Commit and Take-Backout Notifications
  • The Backout-Required Condition
  • Responses to Take-Commit and Take-Backout Notifications
  • Chained and Unchained Transactions
  • Joining a Transaction
  • Superior and Subordinate Programs
  • Additional CPI Communications States
  • Valid States for Resource Recovery Calls
  • TX Extensions for CPI Communications
  • Chapter 3. Program-to-Program Communication Example Flows
  • Interpreting the Flow Diagrams
  • Starter-Set Flows
  • Example 1: Data Flow in One Direction
  • Example 2: Data Flow in Both Directions
  • Controlling Data Flow Direction
  • Example 3: The Sending Program Changes the Data Flow Direction
  • Example 4: The Receiving Program Changes the Data Flow Direction
  • Verifying Receipt of Data
  • Example 5: Validation of Data Receipt
  • Reporting Errors to Partner
  • Example 6: Reporting Errors
  • Example 7: Error Direction and Send-Pending State
  • Using Full-Duplex Conversations
  • Example 8: Establishing a Full-Duplex Conversation
  • Example 9: Using a Full-Duplex Conversation
  • Example 10: Terminating a Full-Duplex Conversation
  • Using Queue-Level Non-Blocking
  • Example 11: Queue-Level Non-Blocking
  • Accepting Multiple Conversations
  • Example 12: Accepting Multiple Conversations Using Blocking Calls
  • Example 13: Accepting Multiple Conversations Using Conversation-Level Non-Blocking Calls
  • Using the Distributed Directory
  • Example 14: Using the Distributed Directory to Find the Partner Program
  • Resource Recovery Flows
  • Example 15: Sending Program Issues a Commit
  • Example 16: Successful Commit with Conversation State Change
  • Example 17: Conversation Deallocation before the Commit Call


  • [ Top of Page | Previous Page | Next Page | Table of Contents ]