クラス UnicastSendingMessageHandler
java.lang.ObjectSE
org.springframework.integration.context.IntegrationObjectSupport
org.springframework.integration.handler.MessageHandlerSupport
org.springframework.integration.handler.AbstractMessageHandler
org.springframework.integration.ip.AbstractInternetProtocolSendingMessageHandler
org.springframework.integration.ip.udp.UnicastSendingMessageHandler
- 実装されたすべてのインターフェース:
RunnableSE
、org.reactivestreams.Subscriber<Message<?>>
、Aware
、BeanFactoryAware
、BeanNameAware
、DisposableBean
、InitializingBean
、ApplicationContextAware
、Lifecycle
、Ordered
、ExpressionCapable
、Orderable
、IntegrationPattern
、CommonSocketOptions
、NamedComponent
、IntegrationManagement
、ManageableLifecycle
、TrackableComponent
、MessageHandler
、reactor.core.CoreSubscriber<Message<?>>
- 既知の直属サブクラス
MulticastSendingMessageHandler
public class UnicastSendingMessageHandler
extends AbstractInternetProtocolSendingMessageHandler
implements RunnableSE
メッセージを UDP データグラムパケットにマップし、それを指定されたホストとポートに送信する
MessageHandler
実装。メッセージは、信頼性をサポートしていない基本的なものにすることができ、受信側が切り捨てを検出できるように長さをプレフィックスとして付けることができ、配信を確認するために UDP 確認応答を要求することができます。
- 導入:
- 2.0
- 作成者:
- Gary Russell, Marcin Pilaczynski, Artem Bilan, Christian Tzolov
ネストされたクラスのサマリー
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたネストクラス / インターフェース
IntegrationManagement.ManagementOverrides
フィールドサマリー
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたフィールド
EXPRESSION_PARSER, logger
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたフィールド
METER_PREFIX, RECEIVE_COUNTER_NAME, SEND_TIMER_NAME
インターフェース org.springframework.core.Ordered から継承されたフィールド
HIGHEST_PRECEDENCE, LOWEST_PRECEDENCE
コンストラクターのサマリー
コンストラクター説明UnicastSendingMessageHandler
(StringSE destinationExpression) 宛先 SpEL 式に基づいて UnicastSendingMessageHandler を構築し、実行時に requestMessage に対してターゲット宛先を決定します。UnicastSendingMessageHandler
(StringSE host, int port) 基本的なコンストラクター。信頼性なし。確認はありません。UnicastSendingMessageHandler
(StringSE host, int port, boolean lengthCheck) 宛先でチェックできる各パケットに長さを追加するために使用できます。UnicastSendingMessageHandler
(StringSE host, int port, boolean lengthCheck, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) 長さや確認応答リクエストをパケットに追加します。UnicastSendingMessageHandler
(StringSE host, int port, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) 確認応答リクエストをパケットに追加します。UnicastSendingMessageHandler
(Expression destinationExpression) 宛先 SpEL 式に基づいて UnicastSendingMessageHandler を構築し、実行時に requestMessage に対してターゲット宛先を決定します。メソッドのサマリー
修飾子と型メソッド説明protected void
convertAndSend
(Message<?> message) void
doStart()
protected void
doStop()
int
サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。protected DatagramSocketSE
int
protected DatagramSocketSE
void
handleMessageInternal
(Message<?> message) boolean
protected void
onInit()
サブクラスは、初期化ロジック用にこれを実装できます。void
MBean として公開されている場合、JVM をバウンスせずに、致命的な(バインド)エラーが発生した場合に ack スレッドを再起動するために使用できます。void
run()
リクエストされた場合は、確認応答を処理します。void
setAckCounter
(int ackCounter) void
setLengthCheck
(boolean lengthCheck) void
setLocalAddress
(StringSE localAddress) マルチホームシステムでは、通信に使用されるネットワークインターフェースの IP アドレスを指定します。protected final void
setReliabilityAttributes
(boolean lengthCheck, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) protected void
setSocket
(DatagramSocketSE socket) protected void
setSocketAttributes
(DatagramSocketSE socket) void
setSocketCustomizer
(SocketCustomizer socketCustomizer) 作成後にソケットをさらに構成するようにカスタマイザーを設定します。void
setSocketExpression
(Expression socketExpression) void
setSocketExpressionString
(StringSE socketExpression) void
setSoReceiveBufferSize
(int size) void
setTaskExecutor
(ExecutorSE taskExecutor) void
protected void
クラス org.springframework.integration.ip.AbstractInternetProtocolSendingMessageHandler から継承されたメソッド
getDestinationAddress, getHost, getPort, getSoSendBufferSize, getSoTimeout, isRunning, setSoSendBufferSize, setSoTimeout, start, stop
クラス org.springframework.integration.handler.AbstractMessageHandler から継承されたメソッド
handleMessage, onComplete, onError, onNext, onSubscribe, setObservationConvention
クラス org.springframework.integration.handler.MessageHandlerSupport から継承されたメソッド
buildSendTimer, destroy, getIntegrationPatternType, getManagedName, getManagedType, getMetricsCaptor, getObservationRegistry, getOrder, getOverrides, isLoggingEnabled, isObserved, registerMetricsCaptor, registerObservationRegistry, sendTimer, setLoggingEnabled, setManagedName, setManagedType, setOrder, setShouldTrack, shouldTrack
クラス org.springframework.integration.context.IntegrationObjectSupport から継承されたメソッド
afterPropertiesSet, extractTypeIfPossible, generateId, getApplicationContext, getApplicationContextId, getBeanDescription, getBeanFactory, getBeanName, getChannelResolver, getComponentName, getConversionService, getExpression, getIntegrationProperties, getMessageBuilderFactory, getTaskScheduler, isInitialized, setApplicationContext, setBeanFactory, setBeanName, setChannelResolver, setComponentName, setConversionService, setMessageBuilderFactory, setPrimaryExpression, setTaskScheduler, toString
クラス java.lang.ObjectSE から継承されたメソッド
clone, equalsSE, finalize, getClass, hashCode, notify, notifyAll, wait, waitSE, waitSE
インターフェース reactor.core.CoreSubscriber から継承されたメソッド
currentContext
インターフェース org.springframework.integration.support.management.IntegrationManagement から継承されたメソッド
getThisAs
インターフェース org.springframework.integration.support.context.NamedComponent から継承されたメソッド
getBeanName, getComponentName
フィールドの詳細
lock
コンストラクターの詳細
UnicastSendingMessageHandler
基本的なコンストラクター。信頼性なし。確認はありません。- パラメーター:
host
- 宛先ホスト。port
- 宛先ポート。
UnicastSendingMessageHandler
宛先 SpEL 式に基づいて UnicastSendingMessageHandler を構築し、実行時に requestMessage に対してターゲット宛先を決定します。- パラメーター:
destinationExpression
- 実行時にターゲットの宛先を評価するための SpEL 式。String
SE、URI
SE、SocketAddress
SE に評価する必要があります。- 導入:
- 4.3
UnicastSendingMessageHandler
宛先 SpEL 式に基づいて UnicastSendingMessageHandler を構築し、実行時に requestMessage に対してターゲット宛先を決定します。- パラメーター:
destinationExpression
- 実行時にターゲットの宛先を評価するための SpEL 式。String
SE、URI
SE、SocketAddress
SE に評価する必要があります。- 導入:
- 4.3
UnicastSendingMessageHandler
宛先でチェックできる各パケットに長さを追加するために使用できます。- パラメーター:
host
- 宛先ホスト。port
- 宛先ポート。lengthCheck
- true の場合、パケットには長さが含まれます。
UnicastSendingMessageHandler
public UnicastSendingMessageHandler(StringSE host, int port, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) 確認応答リクエストをパケットに追加します。- パラメーター:
host
- 宛先ホスト。port
- 宛先ポート。acknowledge
- true の場合、パケットは確認応答をリクエストします。ackHost
- ack の送信先となるホスト。ack が true の場合に必要です。ackPort
- ack の送信先のポート。ackTimeout
- ack を待つ時間(ミリ秒)。
UnicastSendingMessageHandler
public UnicastSendingMessageHandler(StringSE host, int port, boolean lengthCheck, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) 長さや確認応答リクエストをパケットに追加します。- パラメーター:
host
- 宛先ホスト。port
- 宛先ポート。lengthCheck
- true の場合、パケットには長さが含まれます。acknowledge
- true の場合、パケットは確認応答をリクエストします。ackHost
- ack の送信先となるホスト。ack が true の場合に必要です。ackPort
- ack の送信先のポート。ackTimeout
- ack を待つ時間(ミリ秒)。
メソッドの詳細
setLengthCheck
public void setLengthCheck(boolean lengthCheck) - パラメーター:
lengthCheck
- true の場合、4 バイトのバイナリ長ヘッダーがパケットに追加され、受信者がデータの切り捨てをチェックできるようになります。- 導入:
- 5.0
setSocketCustomizer
作成後にソケットをさらに構成するようにカスタマイザーを設定します。- パラメーター:
socketCustomizer
- カスタマイザー。- 導入:
- 5.3.3
setReliabilityAttributes
protected final void setReliabilityAttributes(boolean lengthCheck, boolean acknowledge, StringSE ackHost, int ackPort, int ackTimeout) doStart
public void doStart()- 次で指定:
- クラス
AbstractInternetProtocolSendingMessageHandler
のdoStart
doStop
protected void doStop()- 次で指定:
- クラス
AbstractInternetProtocolSendingMessageHandler
のdoStop
handleMessageInternal
- 次で指定:
- クラス
AbstractMessageHandler
のhandleMessageInternal
startAckThread
public void startAckThread()convertAndSend
setSocket
getTheSocket
getSocket
updateAckAddress
protected void updateAckAddress()setSoReceiveBufferSize
public void setSoReceiveBufferSize(int size) - 次で指定:
- インターフェース
CommonSocketOptions
のsetSoReceiveBufferSize
- オーバーライド:
- クラス
AbstractInternetProtocolSendingMessageHandler
のsetSoReceiveBufferSize
- パラメーター:
size
- 受信バッファサイズ。- 関連事項:
setLocalAddress
インターフェースからコピーされた説明:CommonSocketOptions
マルチホームシステムでは、通信に使用されるネットワークインターフェースの IP アドレスを指定します。受信アダプターおよびゲートウェイの場合、受信接続用にリストされているインターフェースを指定します。省略した場合、エンドポイントは使用可能なすべてのアダプターをリッスンします。UDP マルチキャスト送信アダプターの場合、マルチキャストパケットの送信先のインターフェースを指定します。UDP ユニキャストおよびマルチキャストアダプターの場合、確認応答ソケットがバインドされるインターフェースを指定します。TCP 送信アダプターおよびゲートウェイには適用されません。- 次で指定:
- インターフェース
CommonSocketOptions
のsetLocalAddress
- パラメーター:
localAddress
- ローカルアドレス。
setTaskExecutor
setAckCounter
public void setAckCounter(int ackCounter) - パラメーター:
ackCounter
- 設定する ackCounter
setSocketExpression
- パラメーター:
socketExpression
- 実行時にターゲットソケットを決定するためのソケット式。- 導入:
- 4.3
setSocketExpressionString
- パラメーター:
socketExpression
- 実行時にターゲットソケットを決定するためのソケット SpEL 式。- 導入:
- 4.3
getComponentType
クラスからコピーされた説明:IntegrationObjectSupport
サブクラスはこのメソッドを実装して、コンポーネント型情報を提供できます。- 次で指定:
- インターフェース
NamedComponent
のgetComponentType
- オーバーライド:
- クラス
MessageHandlerSupport
のgetComponentType
isAcknowledge
public boolean isAcknowledge()- 戻り値:
- 承認
getAckPort
public int getAckPort()- 戻り値:
- ackPort
getSoReceiveBufferSize
public int getSoReceiveBufferSize()- 戻り値:
- soReceiveBufferSize
onInit
protected void onInit()クラスからコピーされた説明:IntegrationObjectSupport
サブクラスは、初期化ロジック用にこれを実装できます。- オーバーライド:
- クラス
IntegrationObjectSupport
のonInit
setSocketAttributes
run
public void run()リクエストされた場合は、確認応答を処理します。- 次で指定:
- インターフェース
RunnableSE
のrun
restartAckThread
public void restartAckThread()MBean として公開されている場合、JVM をバウンスせずに、致命的な(バインド)エラーが発生した場合に ack スレッドを再起動するために使用できます。