クラス TransactionalEventPublisher

java.lang.ObjectSE
org.springframework.transaction.reactive.TransactionalEventPublisher

public class TransactionalEventPublisher extends ObjectSE
リアクティブセットアップでトランザクションイベントを公開するためのデリゲート。現在の Reactor 管理の TransactionContext を、公開されるすべての ApplicationEvent のソースオブジェクトとして含めます。

このデリゲートは単なる便宜的なものです。現在の TransactionContext をイベントソースとして直接含めて、Spring ApplicationContext などの ApplicationEventPublisher を通じて発行することもできます。

 TransactionContextManager.currentContext()
     .map(source -> new PayloadApplicationEvent<>(source, "myPayload"))
     .doOnSuccess(this.eventPublisher::publishEvent)
 
導入:
6.1
作成者:
Juergen Hoeller
関連事項:
  • コンストラクターの詳細

    • TransactionalEventPublisher

      public TransactionalEventPublisher(ApplicationEventPublisher eventPublisher)
      リアクティブセットアップでトランザクションイベントを公開するための新しいデリゲートを作成します。
      パラメーター:
      eventPublisher - 使用する実際のイベント発行者、通常は Spring ApplicationContext
  • メソッドの詳細

    • publishEvent

      public reactor.core.publisher.Mono<VoidSE> publishEvent(FunctionSE<TransactionContext,ApplicationEvent> eventCreationFunction)
      トランザクションソースオブジェクト ( TransactionContext ) をイベントインスタンスにマップする、指定された関数を通じて作成されたイベントを発行します。
      パラメーター:
      eventCreationFunction - ソースオブジェクトをイベントインスタンスにマッピングする関数。例: source -> new PayloadApplicationEvent&lt;&gt;(source, "myPayload")
      戻り値:
      トランザクションイベントパブリケーション用の Reactor Mono 
    • publishEvent

      public reactor.core.publisher.Mono<VoidSE> publishEvent(ObjectSE payload)
      指定されたペイロードに対して作成されたイベントを公開します。
      パラメーター:
      payload - イベントとして公開するペイロード
      戻り値:
      トランザクションイベントパブリケーション用の Reactor Mono