Freigeben über


Beispiel für eine zugeordnete Konversation (CPI-C)

Das folgende Beispiel einer zugeordneten Unterhaltung zeigt die CPI-C-Aufrufe (Common Programming Interface for Communications), die zum Starten einer Unterhaltung, zum Austauschen von Daten und zum Beenden der Unterhaltung verwendet werden. Aufrufparameter befinden sich in Klammern.

Ausgestellt vom aufrufenden TP Ausgestellt vom aufrufbaren TP
Initialize_Conversation
Zuordnen
Send_Data
Zuordnung aufheben Accept_Conversation
Empfangen
(data_received=
CM_COMPLETE_DATA_RECEIVED)
(return_code=
CM_DEALLOCATED_NORMAL)

In den folgenden Absätzen werden die Aufrufe beschrieben, die in einer zugeordneten Unterhaltung verwendet werden.

Aufrufe zum Starten einer zugeordneten Unterhaltung

Um eine Unterhaltung zu starten, gibt das aufrufende Transaktionsprogramm (TP) die folgenden Aufrufe aus:

  • Initialize_Conversation, die CPI-C anfordert, die Werte festzulegen, die die Merkmale der Unterhaltung definieren. Der Initialize_Conversation-Aufrufs gibt einen symbolischen Zielnamen an, der einem Eintrag in einer Nebeninformationstabelle im Arbeitsspeicher zugeordnet ist. Die Nebeninformationen geben Partner-TP, Partner-LU, Modus, Sicherheit usw. an.

  • Ordnen Sie zu, die anfordert, dass CPI-C eine Konversation zwischen dem aufrufenden TP und dem aufrufbaren TP einrichten soll.

    Der aufrufbare TP gibt den Accept_Conversation Aufruf aus, wodurch CPI-C informiert wird, dass er bereit ist, eine Konversation mit dem aufrufenden TP zu beginnen.

Aufrufe zum Senden von Daten in einer zugeordneten Unterhaltung

Der Send_Data Aufruf legt einen Datensatz (einen Datensatz mit zu übertragenden Anwendungsdaten) in den Sendepuffer der lokalen logischen Einheit (LU) ein. Die Datenübertragung an den Partner-TP erfolgt erst dann, wenn eines der folgenden Ereignisse auftritt:

  • Der Sendepuffer füllt sich.

  • Der sendende TP führt einen Aufruf aus, der CPI-C zwingt, den Puffer zu leeren und Daten an den Partner-TP zu senden.

    Zusätzlich zum Datensatz enthält der Sendepuffer auch die Zuordnungsanforderung (die dem Datensatz vorangeht).

    Im vorherigen Beispiel leert Deallocate den Sendepuffer und sendet die Zuordnungsanforderung und die Daten an den Partner-TP. Andere Aufrufe, die den Puffer leeren, sind Confirm und Flush.

Aufrufe zum Empfangen von Daten in einer zugeordneten Unterhaltung

Der Empfangsaufruf empfängt den Datensatz und status Informationen vom Partner-TP. Wenn derzeit keine Daten oder status Informationen verfügbar sind, wartet der lokale TP standardmäßig, bis die Daten eintreffen.

Der data_received Parameter von Receive teilt dem Programm mit, ob es Daten empfangen hat und wenn ja, ob die Daten vollständig sind.

Aufrufe zum Beenden einer zugeordneten Unterhaltung

Um eine Unterhaltung zu beenden, gibt einer der TPs Deallocate aus, was dazu führt, dass CPI-C die Konversation zwischen den beiden TPs zuordnet.