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

Newer Version Available

This content describes an older version of this product. View Latest

EventBus クラス

プラットフォームイベントを公開するためのメソッドが含まれます。

名前空間

System

EventBus のメソッド

EventBus のメソッドは次のとおりです。すべてのメソッドが静的です。

getOperationId(result)

渡された SaveResult に基づいて、非同期イベント公開操作の ID を返します。この ID を使用して、/event/AsyncOperationEvent チャネルで送信された非同期公開結果を相関付けます。

署名

public static String getOperationId(Object result)

パラメータ

result
型: Object
EventBus.publish コールによって返される SaveResult。

戻り値

型: String

publish(event)

指定されたプラットフォームイベントを公開します。

署名

public static Database.SaveResult publish(SObject event)

パラメータ

event
型: SObject
プラットフォームイベントのインスタンス。たとえば、MyEvent__e のインスタンスなどです。最初に組織でプラットフォームイベントオブジェクトを定義する必要があります。

戻り値

型: Database.SaveResult

指定されたイベントの公開結果。Database.SaveResult には、操作の成功とエラーの発生に関する情報が含まれます。isSuccess() メソッドが true を返す場合、標準イベントのイベントが公開されています。大規模イベントの場合、公開要求が Salesforce のキューに入れられ、イベントメッセージがすぐに公開されないことがあります。詳細は、「大規模プラットフォームイベントの保持」を参照してください。isSuccess()false を返す場合、イベント公開操作でエラーが発生しており、エラーは Database.Error オブジェクトに返されています。このメソッドは、公開操作の失敗による例外を発生させません。

Database.SaveResult には、Id システム項目も含まれます。Id 項目値は、登録者に配信されるイベントメッセージには含まれません。これは、イベントメッセージの識別に使用されず、必ずしも一意ではありません。

使用方法

  • プラットフォームイベントメッセージは、プラットフォームイベント定義で設定した公開動作に応じて、ただちに、またはトランザクションがコミットされた後に公開されます。詳細は、『プラットフォームイベント開発者ガイド��「プラットフォームイベント項目」を参照してください。
  • DML 制限を含む Apex ガバナ制限が適用されます。各メソッドの実行は、1 つの DML ステートメントとしてカウントされます。

publish(events)

指定されたプラットフォームイベントのリストを公開します。

署名

public static List<Database.SaveResult> publish(List<SObject> events)

パラメータ

events
型: List<sObject>
プラットフォームイベントインスタンスのリスト。たとえば、MyEvent__e オブジェクトのリストなどです。最初に組織でプラットフォームイベントオブジェクトを定義する必要があります。

戻り値

型: List<Database.SaveResult>

それぞれが 1 つのイベントの公開結果に対応する、結果のリスト。各イベントの Database.SaveResult には、操作の成功とエラーの発生に関する情報が含まれます。isSuccess() メソッドが true を返す場合、標準イベントのイベントが公開されています。大規模イベントの場合、公開要求が Salesforce のキューに入れられ、イベントメッセージがすぐに公開されないことがあります。詳細は、「大規模プラットフォームイベントの保持」を参照してください。isSuccess()false を返す場合、イベント公開操作でエラーが発生しており、エラーは Database.Error オブジェクトに返されています。EventBus.publish() は、渡されたイベントを、エラーで公開できないものを除いて部分的に公開できます。EventBus.publish() メソッドは、失敗した公開操作による例外を発生させません。これは、Apex の Database.insert メソッドが部分的な完了オプションを指定してコールされたときの動作に似ています。

Database.SaveResult には、Id システム項目も含まれます。Id 項目値は、登録者に配信されるイベントメッセージには含まれません。これは、イベントメッセージの識別に使用されず、必ずしも一意ではありません。

使用方法

  • プラットフォームイベントメッセージは、プラットフォームイベント定義で設定した公開動作に応じて、ただちに、またはトランザクションがコミットされた後に公開されます。詳細は、『プラットフォームイベント開発者ガイド』「プラットフォームイベント項目」を参照してください。
  • DML 制限を含む Apex ガバナ制限が適用されます。各メソッドの実行は、1 つの DML ステートメントとしてカウントされます。