AMQPセッションイベントハンドラーを実装する
2番目のステップとして、インターフェースIF_AMQP_SESSION_EVENT_HANDLERを実装する必要があります。システムはAMQPクライアントイベントハンドラメソッドを呼び出して、アプリケーションがAMQPセッションオブジェクトの着信確認応答とイベントを処理できるようにします。アプリケーションは、次のイベントハンドラーメソッドを実装できます。
インターフェイスメソッドはON_ACCEPT_SENDER、ON_ACCEPT_RECEIVERAMQPクライアントフレームワークの将来の拡張用に予約されています。それらの実装は空のままにしておく必要があります。
AMQPセッションオブジェクトを作成して使用する
IF_AMQP_CLIENT~CREATE_SESSIONAMQPセッションオブジェクトは、AMQPクライアントオブジェクトのメソッドを使用して作成する必要があります。実装したAMQPセッションイベントハンドラーをメソッドに指定する必要があります。このメソッドは、タイプIF_AMQP_SESSIONのAMQPセッションオブジェクトを提供します。これにより、次のメソッドが提供されます。
このメソッドIF_AMQP_SESSION~BEGINは、AMQP開始フレームをピアに送信します。呼び出しが成功した場合、ピアが開始フレームを確認するとすぐにセッションが確立されます。この場合、ON_BEGIN指定されたイベントハンドラーのメソッドが呼び出されます。ON_BEGINイベントを処理するには、ABAPセッションがアイドル状態または待機状態である必要があります。
同様に、このメソッドIF_AMQP_SESSION~ENDはAMQPエンドフレームをピアに送信します。IF_AMQP_CLIENT~CLOSEAMQPクライアントは、メソッドが呼び出されたときにAMQP終了フレームも送信することに注意してください。したがって、END接続の存続期間全体にわたってAMQPセッションが確立されている場合、この方法は必要ありません。