public class SendToMethodReturnValueHandler extends ObjectSE implements HandlerMethodReturnValueHandler
SendTo
または SendToUser
メソッドレベルのアノテーションで指定された宛先に送信するための HandlerMethodReturnValueHandler
。 メソッドから返された値は変換され、Message
に変換され、提供された MessageChannel
を介して送信されます。メッセージは、入力メッセージのセッション ID とアノテーションからの宛先で強化されます。複数の宛先が指定されている場合、メッセージのコピーが各宛先に送信されます。
コンストラクターと説明 |
---|
SendToMethodReturnValueHandler(SimpMessageSendingOperations messagingTemplate, boolean annotationRequired) |
修飾子と型 | メソッドと説明 |
---|---|
StringSE | getDefaultDestinationPrefix() 設定されたデフォルトの宛先プレフィックスを返します。 |
StringSE | getDefaultUserDestinationPrefix() 設定されたデフォルトのユーザー宛先プレフィックスを返します。 |
MessageHeaderInitializer | getHeaderInitializer() 設定済みのヘッダー初期化子を返します。 |
protected StringSE[] | getTargetDestinations(AnnotationSE annotation, Message<?> message, StringSE defaultPrefix) |
protected StringSE | getUserName(Message<?> message, MessageHeaders headers) |
void | handleReturnValue(ObjectSE returnValue, MethodParameter returnType, Message<?> message) 指定された戻り値を処理します。 |
void | setDefaultDestinationPrefix(StringSE defaultDestinationPrefix) メソッドに @SendTo アノテーションが付けられていない場合、またはアノテーションの value 属性で宛先が指定されていない場合に、メッセージの宛先に追加するデフォルトのプレフィックスを構成します。 |
void | setDefaultUserDestinationPrefix(StringSE prefix) メソッドに @SendToUser アノテーションが付けられているが、アノテーションの value 属性を通じて宛先が指定されていない場合に、メッセージの宛先に追加するデフォルトのプレフィックスを設定します。 |
void | setHeaderInitializer(MessageHeaderInitializer headerInitializer) MessageHeaderInitializer を構成して、クライアント送信チャネルに送信されるすべてのメッセージのヘッダーに適用します。 |
boolean | supportsReturnType(MethodParameter returnType) 指定されたメソッドの戻り型がこのハンドラーでサポートされているかどうか。 |
StringSE | toString() |
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
public SendToMethodReturnValueHandler(SimpMessageSendingOperations messagingTemplate, boolean annotationRequired)
public void setDefaultDestinationPrefix(StringSE defaultDestinationPrefix)
@SendTo
アノテーションが付けられていない場合、またはアノテーションの value 属性で宛先が指定されていない場合に、メッセージの宛先に追加するデフォルトのプレフィックスを構成します。デフォルトでは、プレフィックスは "/topic" に設定されています。
public StringSE getDefaultDestinationPrefix()
public void setDefaultUserDestinationPrefix(StringSE prefix)
@SendToUser
アノテーションが付けられているが、アノテーションの value 属性を通じて宛先が指定されていない場合に、メッセージの宛先に追加するデフォルトのプレフィックスを設定します。デフォルトでは、プレフィックスは "/queue" に設定されています。
public StringSE getDefaultUserDestinationPrefix()
public void setHeaderInitializer(@Nullable MessageHeaderInitializer headerInitializer)
MessageHeaderInitializer
を構成して、クライアント送信チャネルに送信されるすべてのメッセージのヘッダーに適用します。デフォルトでは、このプロパティは設定されていません。
@Nullable public MessageHeaderInitializer getHeaderInitializer()
public boolean supportsReturnType(MethodParameter returnType)
HandlerMethodReturnValueHandler
HandlerMethodReturnValueHandler
の supportsReturnType
returnType
- チェックするメソッドの戻り値の型 true
。それ以外の場合は false
public void handleReturnValue(@Nullable ObjectSE returnValue, MethodParameter returnType, Message<?> message) throws ExceptionSE
HandlerMethodReturnValueHandler
HandlerMethodReturnValueHandler
の handleReturnValue
returnValue
- ハンドラーメソッドから返された値 returnType
- 戻り値の型。この型は以前に HandlerMethodReturnValueHandler.supportsReturnType(org.springframework.core.MethodParameter)
に渡されていて、true
を返している必要があります。message
- このメソッドが呼び出される原因となったメッセージ ExceptionSE
- 戻り値の処理がエラーになる場合 @Nullable protected StringSE getUserName(Message<?> message, MessageHeaders headers)
protected StringSE[] getTargetDestinations(@Nullable AnnotationSE annotation, Message<?> message, StringSE defaultPrefix)
public StringSE toString()
ObjectSE
の toStringSE