クラス SimpSessionScope

java.lang.ObjectSE
org.springframework.messaging.simp.SimpSessionScope
実装されたすべてのインターフェース:
Scope

public class SimpSessionScope extends ObjectSE implements Scope
SiMP セッション(WebSocket セッションなど)の属性を公開する Scope 実装。

SimpAnnotationMethodMessageHandler によってエクスポートされたスレッドバインド SimpAttributes インスタンスに依存します。

導入:
4.1
作成者:
Rossen Stoyanchev
  • コンストラクターのサマリー

    コンストラクター
    コンストラクター
    説明
  • メソッドのサマリー

    修飾子と型
    メソッド
    説明
    get(StringSE name, ObjectFactory<?> objectFactory)
    基になるスコープから指定された名前のオブジェクトを返します。基になるストレージメカニズムで見つからない場合は creating it
    存在する場合、現在の基礎となるスコープの会話 ID を返します。
    void
    スコープ内の指定されたオブジェクトの破棄(またはスコープが個々のオブジェクトを破棄せず、その全体で終了する場合はスコープ全体の破棄)で実行されるコールバックを登録します。
    指定された name を持つオブジェクトを基になるスコープから削除します。
    指定されたキーがある場合、そのコンテキストオブジェクトを解決します。

    クラス java.lang.ObjectSE から継承されたメソッド

    clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, toString, wait, waitSE, waitSE
  • コンストラクターの詳細

    • SimpSessionScope

      public SimpSessionScope()
  • メソッドの詳細

    • get

      public ObjectSE get(StringSE name, ObjectFactory<?> objectFactory)
      インターフェースからコピーされた説明: Scope
      基になるスコープから指定された名前のオブジェクトを返します。基になるストレージメカニズムで見つからない場合は creating it

      これは、Scope の中心的な操作であり、絶対に必要な唯一の操作です。

      次で指定:
      インターフェース Scopeget 
      パラメーター:
      name - 取得するオブジェクトの名前
      objectFactory - 基になるストレージメカニズムに存在しない場合、スコープオブジェクトの作成に使用する ObjectFactory
      戻り値:
      目的のオブジェクト (非 null)
    • remove

      @Nullable public ObjectSE remove(StringSE name)
      インターフェースからコピーされた説明: Scope
      指定された name を持つオブジェクトを基になるスコープから削除します。

      オブジェクトが見つからなかった場合、null を返します。それ以外の場合は、削除された Object を返します。

      実装は、指定されたオブジェクトの登録された破棄コールバックも削除する必要があることに注意してください。ただし、この場合、登録された破棄コールバックを実行する必要ありません。オブジェクトは呼び出し元によって破棄されるためです(適切な場合)。

      注: これはオプションの操作です。実装は、オブジェクトの明示的な削除をサポートしていない場合、UnsupportedOperationExceptionSE をスローする場合があります。

      次で指定:
      インターフェース Scoperemove 
      パラメーター:
      name - 削除するオブジェクトの名前
      戻り値:
      削除されたオブジェクト、またはオブジェクトが存在しない場合は null 
      関連事項:
    • registerDestructionCallback

      public void registerDestructionCallback(StringSE name, RunnableSE callback)
      インターフェースからコピーされた説明: Scope
      スコープ内の指定されたオブジェクトの破棄(またはスコープが個々のオブジェクトを破棄せず、その全体で終了する場合はスコープ全体の破棄)で実行されるコールバックを登録します。

      注: これはオプションの操作です。このメソッドは、実際の破棄構成(DisposableBean、destroy-method、DestructionAwareBeanPostProcessor)を持つスコープ付き Bean に対してのみ呼び出されます。実装は、適切なタイミングで特定のコールバックを実行するために最善を尽くす必要があります。そのようなコールバックが基礎となるランタイム環境によってまったくサポートされていない場合、コールバックは無視され、対応する警告がログに記録される必要があります

      「破棄」とは、アプリケーションによって明示的に削除された個々のスコープオブジェクトではなく、スコープ自体のライフサイクルの一部としてオブジェクトを自動的に破棄することです。スコープ付きオブジェクトがこのファサードの Scope.remove(String) メソッドを介して削除された場合、削除されたオブジェクトが再利用されるか手動で破棄されると仮定して、登録されている破棄コールバックも削除する必要があります。

      次で指定:
      インターフェース ScoperegisterDestructionCallback 
      パラメーター:
      name - 破棄コールバックを実行するオブジェクトの名前
      callback - 実行される破棄コールバック。渡された Runnable は例外をスローしないため、try-catch ブロックを囲むことなく安全に実行できることに注意してください。さらに、Runnable は通常、そのターゲットオブジェクトも直列化可能であれば、直列化可能です。
      関連事項:
    • resolveContextualObject

      @Nullable public ObjectSE resolveContextualObject(StringSE key)
      インターフェースからコピーされた説明: Scope
      指定されたキーがある場合、そのコンテキストオブジェクトを解決します。例: キー「リクエスト」の HttpServletRequest オブジェクト。
      次で指定:
      インターフェース ScoperesolveContextualObject 
      パラメーター:
      key - コンテキストキー
      戻り値:
      対応するオブジェクト。見つからない場合は null 
    • getConversationId

      public StringSE getConversationId()
      インターフェースからコピーされた説明: Scope
      存在する場合、現在の基礎となるスコープの会話 ID を返します。

      会話 ID の正確な意味は、基礎となるストレージメカニズムによって異なります。セッションスコープのオブジェクトの場合、会話 ID は通常 session IDEE と等しい(または派生する)でしょう。セッション全体に含まれるカスタム会話の場合、現在の会話の特定の ID が適切です。

      注: これはオプションの操作です。基になるストレージメカニズムにこのような ID の明らかな候補がない場合、このメソッドの実装で null を返すことは完全に有効です。

      次で指定:
      インターフェース ScopegetConversationId 
      戻り値:
      会話 ID、または現在のスコープに会話 ID がない場合は null