クラス SseEmitter

java.lang.ObjectSE
org.springframework.web.servlet.mvc.method.annotation.ResponseBodyEmitter
org.springframework.web.servlet.mvc.method.annotation.SseEmitter

public class SseEmitter extends ResponseBodyEmitter
サーバー送信イベントを送信するための ResponseBodyEmitter の特殊化。
導入:
4.2
作成者:
Rossen Stoyanchev, Juergen Hoeller, Sam Brannen, Brian Clozel
  • コンストラクターの詳細

    • SseEmitter

      public SseEmitter()
      新しい SseEmitter インスタンスを作成します。
    • SseEmitter

      public SseEmitter(LongSE timeout)
      カスタムタイムアウト値を使用して SseEmitter を作成します。

      デフォルトでは設定されていません。この場合、MVC Java Config または MVC 名前空間で設定されたデフォルトが使用されます。または、設定されていない場合、タイムアウトは基盤となるサーバーのデフォルトによって異なります。

      パラメーター:
      timeout - ミリ秒単位のタイムアウト値
      導入:
      4.2.2
  • メソッドの詳細

    • extendResponse

      protected void extendResponse(ServerHttpResponse outputMessage)
      クラスからコピーされた説明: ResponseBodyEmitter
      ResponseBodyEmitter が ResponseEntity でラップされている場合、ステータスコードとヘッダーでレスポンスが更新された後で、レスポンスがコミットされる前、つまりレスポンスの本文が書き込まれる前に呼び出されます。

      デフォルトの実装は空です。

      オーバーライド:
      クラス ResponseBodyEmitterextendResponse 
    • send

      public void send(ObjectSE object) throws IOExceptionSE
      単一の SSE「データ」行としてフォーマットされたオブジェクトを送信します。これは次と同等です。
       // static import of SseEmitter.*
      
       SseEmitter emitter = new SseEmitter();
       emitter.send(event().data(myObject));
       

      例外処理に関する重要な注意事項については、parent Javadoc を参照してください。

      オーバーライド:
      クラス ResponseBodyEmittersend 
      パラメーター:
      object - 書き込むオブジェクト
      例外:
      IOExceptionSE - I/O エラーが発生したときに発生します
      IllegalStateExceptionSE - 他のエラーをラップします
    • send

      public void send(ObjectSE object, @Nullable MediaType mediaType) throws IOExceptionSE
      単一の SSE「データ」行としてフォーマットされたオブジェクトを送信します。これは次と同等です。
       // static import of SseEmitter.*
      
       SseEmitter emitter = new SseEmitter();
       emitter.send(event().data(myObject, MediaType.APPLICATION_JSON));
       

      例外処理に関する重要な注意事項については、parent Javadoc を参照してください。

      オーバーライド:
      クラス ResponseBodyEmittersend 
      パラメーター:
      object - 書き込むオブジェクト
      mediaType - HttpMessageConverter を選択するための MediaType ヒント
      例外:
      IOExceptionSE - I/O エラーが発生したときに発生します
    • send

      public void send(SseEmitter.SseEventBuilder builder) throws IOExceptionSE
      指定されたビルダーで準備された SSE イベントを送信します。例:
       // static import of SseEmitter
       SseEmitter emitter = new SseEmitter();
       emitter.send(event().name("update").id("1").data(myObject));
       
      パラメーター:
      builder - SSE 形式のイベントのビルダー。
      例外:
      IOExceptionSE - I/O エラーが発生したときに発生します
    • toString

      public StringSE toString()
      オーバーライド:
      クラス ResponseBodyEmittertoString 
    • event

      public static SseEmitter.SseEventBuilder event()