この文章は Salesforce 機械翻訳システムを使用して翻訳されました。詳細はこちらをご参照ください。
英語に切り替える

Apex 公開コールバッククラス

Apex 公開コールバックには、Apex の非同期公開操作の結果が含まれます。公開操作が完了して、最終結果の準備が整うと、コールバックが返されます。実装できるインターフェースは、EventBus.EventPublishFailureCallbackEventBus.EventPublishSuccessCallback のいずれか 1 つです。前者は公開が失敗した場合、後者は公開が成功した場合に使用します。

イベント公開の失敗の追跡

非同期公開操作の失敗の最終結果を追跡するには、Apex クラスに EventBus.EventPublishFailureCallback インターフェースを実装します。実装では、公開が失敗した場合に実行するアクションを決定できます。たとえば、失敗をログに記録したり、イベントの再公開を試みたりすることができます。

1public class FailureCallback implements EventBus.EventPublishFailureCallback {
2      
3   public void onFailure(EventBus.FailureResult result) {
4       // Your implementation.
5       // Get event UUIDs from the result
6       List<String> eventUuids = result.getEventUuids();
7       // ...
8   }        
9}
10

非同期の公開操作に失敗すると、onFailure メソッドが呼び出されます。実装した onFailure メソッドで、公開操作の最終的な結果に対応して機能するロジックを作成できます。onFailure メソッドでは、公開操作の結果である EventBus.FailureResult result を含むパラメータが使用されます。この結果には、失敗した各イベントの EventUuid 項目値が含まれますが、イベントのデータは含まれません。イベントのユニバーサル一意識別子 (UUID) を取得するには、getEventUuids メソッドを使用します。それぞれのイベント UUID は、イベントメッセージを識別する UUID です。

イベント公開の成功の追跡

非同期公開操作の成功の最終結果を追跡するには、Apex クラスに EventBus.EventPublishSuccessCallback インターフェースを実装します。ほとんどの公開コールは通常成功するため、成功イベント公開の処理は懸念にならない可能性があります。また、大量のイベントが公開に成功する可能性があるため、結果を処理するときはパフォーマンスや Apex の制限の影響に注意してください。

1public class SuccessCallback implements EventBus.EventPublishSuccessCallback {
2      
3   public void onSuccess(EventBus.SuccessResult result) {
4       // Your implementation.
5       // Get event UUIDs from the result
6       List<String> eventUuids = result.getEventUuids();
7       // …
8   }        
9}
10

非同期の公開操作に成功すると、onSuccess メソッドが呼び出されます。実装した onSuccess メソッドで、公開操作の最終的な結果に対応して機能するロジックを作成できます。onSuccess メソッドでは、公開操作の結果である EventBus.SuccessResult result を含むパラメータが使用されます。この結果には、公開に成功した各イベントの EventUuid 項目値が含まれますが、イベントのデータは含まれません。イベントの UUID を取得するには、getEventUuids メソッドを使用します。それぞれのイベント UUID は、イベントメッセージを識別する UUID です。

1 回のコールバックでのイベント公開の失敗と成功の追跡

失敗した公開結果と成功した公開結果を 1 つの Apex クラスで処理することもできます。同じ Apex クラスに EventBus.EventPublishFailureCallback および EventBus.EventPublishSuccessCallback インターフェースを実装します。このインターフェースには、メソッドとして onFailureonSuccess が含まれています。

失敗と成功の両方のコールバックを実装するのは、両者を処理するための有効な使用事例がある場合のみにしてください。ほとんどの公開コールは通常成功するため、成功イベント公開の処理は懸念にならない可能性があります。また、大量のイベントが公開に成功する可能性があるため、onSuccess メソッドの結果を処理するときは、パフォーマンスや Apex の制限の影響に注意してください。

メモ

1public class FailureAndSuccessCallback implements EventBus.EventPublishFailureCallback,
2    EventBus.EventPublishSuccessCallback {
3
4   public void onFailure(EventBus.FailureResult result) {
5       // Your implementation.
6       // Get event UUIDs from the result
7       List<String> eventUuids = result.getEventUuids();
8       // …
9   } 
10      
11   public void onSuccess(EventBus.SuccessResult result) {
12       // Your implementation.
13       // Get event UUIDs from the result
14       List<String> eventUuids = result.getEventUuids();
15       // …
16   }        
17}
18