次の方法で共有


EventProcessorClientBuilder クラス

  • java.lang.Object
    • com.azure.messaging.eventhubs.EventProcessorClientBuilder

実装

public class EventProcessorClientBuilder
implements TokenCredentialTrait<EventProcessorClientBuilder>, AzureNamedKeyCredentialTrait<EventProcessorClientBuilder>, ConnectionStringTrait<EventProcessorClientBuilder>, AzureSasCredentialTrait<EventProcessorClientBuilder>, AmqpTrait<EventProcessorClientBuilder>, ConfigurationTrait<EventProcessorClientBuilder>

このクラスは、 の構成とインスタンス化に役立つ fluent builder API を提供します EventProcessorClient。 を呼び出すと buildEventProcessorClient() 、 の新しいインスタンスが EventProcessorClient構築されます。

EventProcessorClientインスタンスを作成するには、 次のフィールドが必要です

このドキュメントに示す例では、認証に DefaultAzureCredential という名前の資格情報オブジェクトを使用します。これは、ローカルの開発環境や運用環境を含むほとんどのシナリオに適しています。 さらに、運用環境での認証に マネージド ID を 使用することをお勧めします。 認証のさまざまな方法とそれに対応する資格情報の種類の詳細については、 Azure ID のドキュメントを参照してください

サンプル: を構築する EventProcessorClient

次のコード サンプルは、プロセッサ クライアントの作成を示しています。 プロセッサ クライアントは、複数の実行中のインスタンス間で負荷分散を行い、チェックポイント処理を実行でき、ネットワーク障害などの一時的な障害時に再接続できるため、運用シナリオに推奨されます。 次のサンプルではメモリCheckpointStore内を使用していますが、azure-messaging-eventhubs-checkpointstore-blob は、Azure Blob Storageによってサポートされるチェックポイント ストアを提供します。

TokenCredential credential = new DefaultAzureCredentialBuilder().build();

 // "<<fully-qualified-namespace>>" will look similar to "{your-namespace}.servicebus.windows.net"
 // "<<event-hub-name>>" will be the name of the Event Hub instance you created inside the Event Hubs namespace.
 EventProcessorClient eventProcessorClient = new EventProcessorClientBuilder()
     .consumerGroup("<< CONSUMER GROUP NAME >>")
     .credential("<<fully-qualified-namespace>>", "<<event-hub-name>>",
         credential)
     .checkpointStore(new SampleCheckpointStore())
     .processEvent(eventContext -> {
         System.out.printf("Partition id = %s and sequence number of event = %s%n",
             eventContext.getPartitionContext().getPartitionId(),
             eventContext.getEventData().getSequenceNumber());
     })
     .processError(errorContext -> {
         System.out.printf("Error occurred in partition processor for partition %s, %s%n",
             errorContext.getPartitionContext().getPartitionId(),
             errorContext.getThrowable());
     })
     .buildEventProcessorClient();

フィールドの概要

修飾子と型 フィールドと説明
static final Duration DEFAULT_LOAD_BALANCING_UPDATE_INTERVAL

既定の負荷分散の更新間隔。

static final Duration DEFAULT_OWNERSHIP_EXPIRATION_INTERVAL

既定の所有権の有効期限。

コンストラクターの概要

コンストラクター 説明
EventProcessorClientBuilder()

EventProcessorClientBuilder の新しいインスタンスを作成します。

メソッドの概要

修飾子と型 メソッドと説明
EventProcessorClient buildEventProcessorClient()

これにより、このビルダーで設定されたオプションで構成された新しい EventProcessorClient が作成されます。

EventProcessorClientBuilder checkpointStore(CheckpointStore checkpointStore)

パーティションのCheckpointStoreEventProcessorClient所有権とチェックポイント情報の格納に使用する を設定します。

EventProcessorClientBuilder clientOptions(ClientOptions clientOptions)

プロセッサ クライアントのクライアント オプションを設定します。

EventProcessorClientBuilder configuration(Configuration configuration)

サービス クライアントの構築中に使用される構成ストアを設定します。

EventProcessorClientBuilder connectionString(String connectionString)

接続文字列を指定した資格情報を Event Hub インスタンスに設定します。

EventProcessorClientBuilder connectionString(String connectionString, String eventHubName)

接続文字列に指定された資格情報を Event Hubs 名前空間に設定し、名前を特定の Event Hub インスタンスに設定します。

EventProcessorClientBuilder consumerGroup(String consumerGroup)

イベントを使用するコンシューマー グループ名を EventProcessorClient 設定します。

EventProcessorClientBuilder credential(AzureNamedKeyCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

EventProcessorClientBuilder credential(AzureSasCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

EventProcessorClientBuilder credential(TokenCredential credential)

サービスに TokenCredential 送信された要求を承認するために使用される を設定します。

EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, AzureNamedKeyCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, AzureSasCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, TokenCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

EventProcessorClientBuilder customEndpointAddress(String customEndpointAddress)

Event Hubs サービスに接続するときのカスタム エンドポイント アドレスを設定します。

EventProcessorClientBuilder eventHubName(String eventHubName)

クライアントを接続するイベント ハブの名前を設定します。

EventProcessorClientBuilder fullyQualifiedNamespace(String fullyQualifiedNamespace)

Event Hubs 名前空間の完全修飾名を設定します。

EventProcessorClientBuilder initialPartitionEventPosition(Map<String,EventPosition> initialPartitionEventPosition)

パーティションのチェックポイントが に存在しない場合に、各パーティションで使用するイベント位置を含むマップを CheckpointStore設定します。

EventProcessorClientBuilder initialPartitionEventPosition(Function<String,EventPosition> initialEventPositionProvider)

そのパーティションのチェックポイントが に存在しない場合は、各パーティションの既定の開始位置を設定します CheckpointStore

EventProcessorClientBuilder loadBalancingStrategy(LoadBalancingStrategy loadBalancingStrategy)

EventProcessorClientLoadBalancingStrategy、パーティションの所有権の要求に使用されます。

EventProcessorClientBuilder loadBalancingUpdateInterval(Duration loadBalancingUpdateInterval)

負荷分散の更新サイクルから次のサイクルまでの期間。

EventProcessorClientBuilder partitionOwnershipExpirationInterval(Duration partitionOwnershipExpirationInterval)

所有するプロセッサ インスタンスによって更新されない場合にパーティションの所有権が期限切れになるまでの時間。

EventProcessorClientBuilder prefetchCount(int prefetchCount)

受信操作が現在アクティブかどうかに関係なく、各コンシューマーがローカルでアクティブに受信およびキューに入れるイベントの数を制御するために受信側が使用する数を設定します。

EventProcessorClientBuilder processError(Consumer<ErrorContext> processError)

イベントの処理中にエラーが発生したときに呼び出される関数。

EventProcessorClientBuilder processEvent(Consumer<EventContext> processEvent)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。

EventProcessorClientBuilder processEvent(Consumer<EventContext> processEvent, Duration maxWaitTime)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。

EventProcessorClientBuilder processEventBatch(Consumer<EventBatchContext> processEventBatch, int maxBatchSize)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。

EventProcessorClientBuilder processEventBatch(Consumer<EventBatchContext> processEventBatch, int maxBatchSize, Duration maxWaitTime)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。

EventProcessorClientBuilder processPartitionClose(Consumer<CloseContext> closePartition)

パーティションの処理が停止したときに呼び出される関数。

EventProcessorClientBuilder processPartitionInitialization(Consumer<InitializationContext> initializePartition)

パーティションの処理が開始される前に呼び出される関数。

EventProcessorClientBuilder proxyOptions(ProxyOptions proxyOptions)

に使用するプロキシ構成を設定します EventHubAsyncClient

EventProcessorClientBuilder retry(AmqpRetryOptions retryOptions)

非推奨

retryOptions(AmqpRetryOptions retryOptions)で置き換えられます。

の再試行ポリシーを設定します EventHubAsyncClient

EventProcessorClientBuilder retryOptions(AmqpRetryOptions retryOptions)

の再試行ポリシーを設定します EventHubAsyncClient

EventProcessorClientBuilder trackLastEnqueuedEventProperties(boolean trackLastEnqueuedEventProperties)

イベント プロセッサが、関連付けられたパーティションで最後にエンキューされたイベントに関する情報を要求し、イベントの受信時にその情報を追跡するかどうかを設定します。

EventProcessorClientBuilder transportType(AmqpTransportType transport)

Azure Event Hubsとの通信がすべて行われるトランスポートの種類を設定します。

メソッドの継承元: java.lang.Object

フィールドの詳細

DEFAULT_LOAD_BALANCING_UPDATE_INTERVAL

public static final Duration DEFAULT_LOAD_BALANCING_UPDATE_INTERVAL

既定の負荷分散の更新間隔。 分散間隔は、クライアントとストレージ アカウントの間の待機時間を考慮する必要があります。

DEFAULT_OWNERSHIP_EXPIRATION_INTERVAL

public static final Duration DEFAULT_OWNERSHIP_EXPIRATION_INTERVAL

既定の所有権の有効期限。

コンストラクターの詳細

EventProcessorClientBuilder

public EventProcessorClientBuilder()

EventProcessorClientBuilder の新しいインスタンスを作成します。

メソッドの詳細

buildEventProcessorClient

public EventProcessorClient buildEventProcessorClient()

これにより、このビルダーで設定されたオプションで構成された新しい EventProcessorClient が作成されます。 このメソッドを呼び出すたびに、 の EventProcessorClient新しいインスタンスが返されます。

これにより EventProcessorClient 処理されるすべてのパーティションは、それぞれのパーティションで使用可能なイベントから earliest() 処理を開始します。

Returns:

EventProcessorClient の新しいインスタンス。

checkpointStore

public EventProcessorClientBuilder checkpointStore(CheckpointStore checkpointStore)

パーティションのCheckpointStoreEventProcessorClient所有権とチェックポイント情報の格納に使用する を設定します。

ユーザーは、必要に応じて、所有権とチェックポイント情報を格納する 独自の CheckpointStore 実装を提供できます。

Parameters:

checkpointStore - CheckpointStore の実装です。

Returns:

更新された EventProcessorClientBuilder インスタンス。

clientOptions

public EventProcessorClientBuilder clientOptions(ClientOptions clientOptions)

プロセッサ クライアントのクライアント オプションを設定します。 クライアント オプションに設定されているアプリケーション ID は、トレースに使用されます。 に ClientOptions 設定されたヘッダーは現在使用されていませんが、AMQP メッセージに追加するために、以降のリリースで使用できます。

Parameters:

clientOptions - クライアント オプション。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

configuration

public EventProcessorClientBuilder configuration(Configuration configuration)

サービス クライアントの構築中に使用される構成ストアを設定します。 指定しない場合は、既定の構成ストアを使用して を構成します EventHubAsyncClient。 構築中に構成設定を使用してバイパスするには、 を使用 NONE します。

Parameters:

configuration - を構成するために使用される構成 EventHubAsyncClientストア。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

connectionString

public EventProcessorClientBuilder connectionString(String connectionString)

接続文字列を指定した資格情報を Event Hub インスタンスに設定します。

接続文字列が Event Hubs 名前空間からコピーされる場合、必要な目的の Event Hub への名前が含まれていない可能性があります。 この場合、接続文字列の末尾に "EntityPath=EVENT_HUB_NAME" を追加することで、名前を手動で追加できます。 たとえば、"EntityPath=telemetry-hub" などです。

共有アクセス ポリシーを Event Hub 自体に直接定義した場合、そのイベント ハブから接続文字列をコピーすると、名前を含む接続文字列が生成されます。

Parameters:

connectionString - Event Hub インスタンスへの接続に使用する接続文字列。 この接続文字列には、イベント ハブ名と共有アクセス キーのプロパティが含まれている必要があります。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

connectionString

public EventProcessorClientBuilder connectionString(String connectionString, String eventHubName)

接続文字列に指定された資格情報を Event Hubs 名前空間に設定し、名前を特定の Event Hub インスタンスに設定します。

Parameters:

connectionString - Event Hubs 名前空間への接続に使用する接続文字列。共有アクセス キーのプロパティがこの接続文字列に含まれていることが予想されますが、イベント ハブ名には含まれません。
eventHubName - クライアントを接続するイベント ハブの名前。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

consumerGroup

public EventProcessorClientBuilder consumerGroup(String consumerGroup)

イベントを使用するコンシューマー グループ名を EventProcessorClient 設定します。

Parameters:

consumerGroup - イベントを使用するコンシューマー グループ名 EventProcessorClient

Returns:

更新された EventProcessorClientBuilder インスタンス。

credential

public EventProcessorClientBuilder credential(AzureNamedKeyCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

Parameters:

credential - 承認に使用する共有アクセス名とキー資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

credential

public EventProcessorClientBuilder credential(AzureSasCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

Parameters:

credential - 承認に使用する共有アクセス署名資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

credential

public EventProcessorClientBuilder credential(TokenCredential credential)

サービスに TokenCredential 送信された要求を承認するために使用される を設定します。 型の適切な使用方法の詳細については、Azure SDK for Java の ID と認証 に関するドキュメントを TokenCredential 参照してください。

Parameters:

credential - 承認に使用するトークン資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

credential

public EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, AzureNamedKeyCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

Parameters:

fullyQualifiedNamespace - Event Hubs 名前空間の完全修飾名。 これは 、"{your-namespace}.servicebus.windows.net" に似ている可能性があります。
eventHubName - クライアントを接続するイベント ハブの名前。
credential - 承認に使用する共有アクセス名とキー資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

credential

public EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, AzureSasCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

Parameters:

fullyQualifiedNamespace - Event Hubs 名前空間の完全修飾名。 これは 、"{your-namespace}.servicebus.windows.net" に似ている可能性があります。
eventHubName - クライアントを接続するイベント ハブの名前。
credential - 承認に使用する共有アクセス署名資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

credential

public EventProcessorClientBuilder credential(String fullyQualifiedNamespace, String eventHubName, TokenCredential credential)

接続する Event Hub インスタンスの資格情報と、それに対する承認方法を設定します。

Parameters:

fullyQualifiedNamespace - Event Hubs 名前空間の完全修飾名。 これは 、"{your-namespace}.servicebus.windows.net" に似ている可能性があります。
eventHubName - クライアントを接続するイベント ハブの名前。
credential - 承認に使用するトークン資格情報。 アクセス制御は、Azure の構成に応じて、Event Hubs 名前空間または要求されたイベント ハブによって指定できます。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

customEndpointAddress

public EventProcessorClientBuilder customEndpointAddress(String customEndpointAddress)

Event Hubs サービスに接続するときのカスタム エンドポイント アドレスを設定します。 これは、ネットワークが標準のAzure Event Hubs エンドポイント アドレスへの接続は許可していないけれど、中継局経由での接続を許可している場合に便利です。 (例: https://my.custom.endpoint.com:55300)。

ポートが指定されていない場合は、 の既定の transportType(AmqpTransportType transport) ポートが使用されます。

Parameters:

customEndpointAddress - カスタム エンドポイント アドレス。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

eventHubName

public EventProcessorClientBuilder eventHubName(String eventHubName)

クライアントを接続するイベント ハブの名前を設定します。

Parameters:

eventHubName - クライアントを接続するイベント ハブの名前。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

fullyQualifiedNamespace

public EventProcessorClientBuilder fullyQualifiedNamespace(String fullyQualifiedNamespace)

Event Hubs 名前空間の完全修飾名を設定します。

Parameters:

fullyQualifiedNamespace - Event Hubs 名前空間の完全修飾名。 これは 、"{your-namespace}.servicebus.windows.net" に似ている可能性があります。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

initialPartitionEventPosition

public EventProcessorClientBuilder initialPartitionEventPosition(Map initialPartitionEventPosition)

パーティションのチェックポイントが に存在しない場合に、各パーティションで使用するイベント位置を含むマップを CheckpointStore設定します。 このマップは、パーティション ID からキーが設定されます。

の構築時には、 のinitialPartitionEventPositionオーバーロードを EventProcessorClient1 つだけ使用する必要があります。

Parameters:

initialPartitionEventPosition - パーティション ID の初期イベント位置のマップ。

Returns:

更新された EventProcessorClientBuilder インスタンス。

initialPartitionEventPosition

public EventProcessorClientBuilder initialPartitionEventPosition(Function initialEventPositionProvider)

そのパーティションのチェックポイントが に存在しない場合は、各パーティションの既定の開始位置を設定します CheckpointStore

の構築時には、 のinitialPartitionEventPositionオーバーロードを EventProcessorClient1 つだけ使用する必要があります。

Parameters:

initialEventPositionProvider - 指定 partitionId された を にマップする EventPosition関数。

Returns:

更新された EventProcessorClientBuilder インスタンス。

loadBalancingStrategy

public EventProcessorClientBuilder loadBalancingStrategy(LoadBalancingStrategy loadBalancingStrategy)

EventProcessorClientLoadBalancingStrategy、パーティションの所有権の要求に使用されます。 既定では、 BALANCED アプローチが使用されます。

Parameters:

loadBalancingStrategy - 使用する LoadBalancingStrategy

Returns:

更新された EventProcessorClientBuilder インスタンス。

loadBalancingUpdateInterval

public EventProcessorClientBuilder loadBalancingUpdateInterval(Duration loadBalancingUpdateInterval)

負荷分散の更新サイクルから次のサイクルまでの期間。 これは通常、パーティションの所有権が更新される間隔でもあります。 既定では、この間隔は 10 秒に設定されています。

Parameters:

loadBalancingUpdateInterval - 負荷分散更新サイクル間の期間。

Returns:

更新された EventProcessorClientBuilder インスタンス。

partitionOwnershipExpirationInterval

public EventProcessorClientBuilder partitionOwnershipExpirationInterval(Duration partitionOwnershipExpirationInterval)

所有するプロセッサ インスタンスによって更新されない場合にパーティションの所有権が期限切れになるまでの時間。 これは、非アクティブなプロセッサによって以前に所有されていたパーティションの所有権を引き継ぐ前に、このプロセッサ インスタンスが待機する期間です。 既定では、この期間は 1 分に設定されます。

Parameters:

partitionOwnershipExpirationInterval - パーティションの所有権が期限切れになるまでの期間。

Returns:

更新された EventProcessorClientBuilder インスタンス。

prefetchCount

public EventProcessorClientBuilder prefetchCount(int prefetchCount)

受信操作が現在アクティブかどうかに関係なく、各コンシューマーがローカルでアクティブに受信およびキューに入れるイベントの数を制御するために受信側が使用する数を設定します。

Parameters:

prefetchCount - ローカルにキューに登録するイベントの数。

Returns:

更新後の EventHubClientBuilder オブジェクト。

processError

public EventProcessorClientBuilder processError(Consumer processError)

イベントの処理中にエラーが発生したときに呼び出される関数。 入力には、エラーが発生したパーティション情報が含まれています。

Parameters:

processError - イベントの処理中にエラーが発生したときに呼び出されるコールバック。

Returns:

更新された EventProcessorClientBuilder インスタンス。

processEvent

public EventProcessorClientBuilder processEvent(Consumer processEvent)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。 入力には、パーティション コンテキストとイベント データが含まれます。

Parameters:

processEvent - この EventProcessorClientによってイベントが受信されたときに呼び出されるコールバック。

Returns:

更新された EventProcessorClientBuilder インスタンス。

processEvent

public EventProcessorClientBuilder processEvent(Consumer processEvent, Duration maxWaitTime)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。 入力には、パーティション コンテキストとイベント データが含まれます。 最大待機時間が設定されている場合、受信はその期間のイベントの受信を待機し、 がイベントを受信していない場合、コンシューマーは null イベント データを使用して呼び出されます。

Parameters:

processEvent - イベント EventProcessorClient がによって受信されたとき、または最大待機時間の有効期限が切れたときに呼び出されるコールバック。
maxWaitTime - このハンドラーを呼び出す前にイベントの受信を待機する最大時間。

Returns:

更新された EventProcessorClient インスタンス。

processEventBatch

public EventProcessorClientBuilder processEventBatch(Consumer processEventBatch, int maxBatchSize)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。 入力には、パーティション コンテキストとイベント データが含まれます。 最大待機時間が設定されている場合、受信はその期間のイベントの受信を待機し、 がイベントを受信していない場合、コンシューマーは null イベント データを使用して呼び出されます。

Parameters:

processEventBatch - イベント EventProcessorClient がによって受信されたとき、または最大待機時間の有効期限が切れたときに呼び出されるコールバック。
maxBatchSize - このコールバックが呼び出されたときにリストに含まれるイベントの最大数。

Returns:

更新された EventProcessorClient インスタンス。

processEventBatch

public EventProcessorClientBuilder processEventBatch(Consumer processEventBatch, int maxBatchSize, Duration maxWaitTime)

この EventProcessorClientによって受信された各イベントに対して呼び出される関数。 入力には、パーティション コンテキストとイベント データが含まれます。 最大待機時間が設定されている場合、受信はその期間のイベントの受信を待機し、 がイベントを受信していない場合、コンシューマーは null イベント データを使用して呼び出されます。

TokenCredential credential = new DefaultAzureCredentialBuilder().build();

 // "<<fully-qualified-namespace>>" will look similar to "{your-namespace}.servicebus.windows.net"
 // "<<event-hub-name>>" will be the name of the Event Hub instance you created inside the Event Hubs namespace.
 EventProcessorClient eventProcessorClient = new EventProcessorClientBuilder()
     .consumerGroup(EventHubClientBuilder.DEFAULT_CONSUMER_GROUP_NAME)
     .checkpointStore(new SampleCheckpointStore())
     .processEventBatch(eventBatchContext -> {
         eventBatchContext.getEvents().forEach(eventData -> {
             System.out.printf("Partition id = %s and sequence number of event = %s%n",
                 eventBatchContext.getPartitionContext().getPartitionId(),
                 eventData.getSequenceNumber());
         });
     }, 50, Duration.ofSeconds(30))
     .processError(errorContext -> {
         System.out.printf("Error occurred in partition processor for partition %s, %s%n",
             errorContext.getPartitionContext().getPartitionId(),
             errorContext.getThrowable());
     })
     .buildEventProcessorClient();

Parameters:

processEventBatch - イベントを受信したとき、または最大待機時間の有効期限が切れたときに呼び出されるコールバック。
maxBatchSize - このコールバックが呼び出されたときにリストに含まれるイベントの最大数。
maxWaitTime - このコールバックを呼び出す前に、最大バッチ サイズまでのイベントのバッチの受信を待機する最大時間。

Returns:

更新された EventProcessorClient インスタンス。

processPartitionClose

public EventProcessorClientBuilder processPartitionClose(Consumer closePartition)

パーティションの処理が停止したときに呼び出される関数。 入力には、パーティション情報と、このパーティションのイベント処理を停止する理由が含まれます。

Parameters:

closePartition - パーティションの処理後に呼び出されるコールバックが停止します。

Returns:

更新された EventProcessorClientBuilder インスタンス。

processPartitionInitialization

public EventProcessorClientBuilder processPartitionInitialization(Consumer initializePartition)

パーティションの処理が開始される前に呼び出される関数。 入力には、パーティション情報と、 でチェックポイントが使用できない CheckpointStore場合に使用されるイベントを処理するための既定の開始位置が含まれます。 別の開始位置が優先される場合、ユーザーはこの位置を更新できます。

Parameters:

initializePartition - パーティションの処理が開始される前に呼び出されるコールバック

Returns:

更新された EventProcessorClientBuilder インスタンス。

proxyOptions

public EventProcessorClientBuilder proxyOptions(ProxyOptions proxyOptions)

に使用するプロキシ構成を設定します EventHubAsyncClient。 プロキシが構成されている場合は、 AMQP_WEB_SOCKETS トランスポートの種類に を使用する必要があります。

Parameters:

proxyOptions - 使用するプロキシ オプション。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

retry

@Deprecated
public EventProcessorClientBuilder retry(AmqpRetryOptions retryOptions)

非推奨

retryOptions(AmqpRetryOptions retryOptions)で置き換えられます。

の再試行ポリシーを設定します EventHubAsyncClient。 指定しない場合は、既定の再試行オプションが使用されます。

Parameters:

retryOptions - 使用する再試行ポリシー。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

retryOptions

public EventProcessorClientBuilder retryOptions(AmqpRetryOptions retryOptions)

の再試行ポリシーを設定します EventHubAsyncClient。 指定しない場合は、既定の再試行オプションが使用されます。

Parameters:

retryOptions - 使用する再試行オプション。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

trackLastEnqueuedEventProperties

public EventProcessorClientBuilder trackLastEnqueuedEventProperties(boolean trackLastEnqueuedEventProperties)

イベント プロセッサが、関連付けられたパーティションで最後にエンキューされたイベントに関する情報を要求し、イベントの受信時にその情報を追跡するかどうかを設定します。

パーティションの最後のエンキュー イベントに関する情報が追跡されている場合、Event Hubs サービスから受信した各イベントは、それ以外の場合は行わないパーティションに関するメタデータを保持します。 これにより、Event Hub クライアントを使用してパーティション プロパティの要求を定期的に行うことを考慮すると、通常は有利なトレードオフとなる、追加のネットワーク帯域幅消費が少なくなります。

Parameters:

trackLastEnqueuedEventProperties - true 結果のイベントが、そのパーティションの最後のエンキューされた情報を追跡する場合。 false それ以外の場合は 。

Returns:

更新された EventProcessorClientBuilder インスタンス。

transportType

public EventProcessorClientBuilder transportType(AmqpTransportType transport)

Azure Event Hubsとの通信がすべて行われるトランスポートの種類を設定します。 既定値は AMQP です。

Parameters:

transport - 使用するトランスポートの種類。

Returns:

更新後の EventProcessorClientBuilder オブジェクト。

適用対象