- 型パラメータ:
T
- 公開アイテム型
- 既知のすべてのサブインタフェース:
Flow.Processor<T,
,R> HttpRequest.BodyPublisher
- 既知のすべての実装クラス:
SubmissionPublisher
- 含まれているクラス:
Flow
- 関数型インタフェース:
- これは関数型インタフェースなので、ラムダ式またはメソッド参照の代入先として使用できます。
@FunctionalInterface public static interface Flow.Publisher<T>
サブスクライバが受信したアイテム(および関連する制御メッセージ)のプロデューサ。 現在の各
Flow.Subscriber
は、ドロップまたはエラーが発生しないかぎり、同じ項目(経由メソッドonNext
)を同じ順序で受け取ります。 サブスクライバに対してアイテムを発行できないエラーが発生した場合、そのサブスクライバはonError
を受信し、それ以上のメッセージは受信しません。 それ以外の場合、これ以上メッセージが発行されないことが判明すると、サブスクライバは onComplete
を受け取ります。 パブリッシャは、各サブスクリプションのサブスクライバ・メソッド呼出しがhappens-before順序で厳密に順序付けられていることを確認します。
パブリッシャは、削除(リソースの制限のためにアイテムを発行できない)がリカバリ不能なエラーとして扱われるかどうかに関するポリシーによって異なる場合があります。 パブリッシャは、サブスクライバが、サブスクライブする前に生産されたアイテムまたは使用可能なアイテムを受け取るかどうかも異なります。
-
メソッドのサマリー
-
メソッドの詳細
-
subscribe
void subscribe(Flow.Subscriber<? super T> subscriber) 可能な場合は、指定されたサブスクライバを追加します。 すでにサブスクライブされている場合、またはポリシー違反またはエラーのためにサブスクライブの試行が失敗した場合は、サブスクライバのonError
メソッドがIllegalStateException
で呼び出されます。 それ以外の場合は、サブスクライバのonSubscribe
メソッドが新しいFlow.Subscription
で呼び出されます。 サブスクライバは、このサブスクリプションのrequest
メソッドを呼び出してアイテムを受信できるようにし、cancel
メソッドを呼び出してサブスクライブを解除できます。- パラメータ:
subscriber
- サブスクライバ- 例外:
NullPointerException
- subscriberがnullの場合
-