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

EMP コネクタの詳細

EMP コネクタのコンポーネントを詳しく見てみましょう。

認証

ユーザのログイン情報が login 関数に渡されます。その後、login 関数の戻り値が、メインコネクタクラスに渡されます。

1BayeuxParameters params = login("<username>", "<password>");

OAuth 認証の場合は、BayeuxParameters コンストラクタを使用して BayeuxParameters クラスのメソッドを上書きし、トークンと URL を提供します。

1BayeuxParameters params = new BayeuxParameters() {
2
3    @Override
4    public String bearerToken() {
5        return "<token>";
6    }
7
8    @Override
9    public URL host() {
10        try {
11            return new URL("<URL>");
12        } catch (MalformedURLException e) {
13            throw new IllegalArgumentException(
14                String.format("Unable to create url: %s", argv[0]), e);
15        }
16    }
17};

イベントのリスン

イベントをリスンするために、コネクタはラムダ式の Java イベントを使用します。このステートメントは、受信した各イベント通知のイベントメッセージを出力します。このステートメントをトピックに登録するステートメントの前に配置します。

1Consumer<Map<String, Object>> consumer = event -> System.out.println(
2        String.format("Received:\n%s", event));

トピックへの登録

EmpConnector クラスは、接続と登録を開始するための機能を公開するメインクラスです。このクラスには、接続を作成する関数、トピックに登録する関数、登録をキャンセルする関数、接続を停止する関数が含まれています。

1// Instantiate the EMP connector
2EmpConnector connector = new EmpConnector(params);
3
4// Wait for handshake with Streaming API
5connector.start().get(5, TimeUnit.SECONDS);
6
7// Subscribe to a topic
8// Block and wait for the subscription to succeed for 5 seconds
9TopicSubscription subscription = connector.subscribe("/topic/myTopic", 
10    replayFrom, consumer).get(5, TimeUnit.SECONDS);

登録を終了するには、次の関数をコールします。

1// Cancel a subscription
2subscription.cancel();
3
4// Stop the connector
5connector.stop();