クラス TcpNioConnection

java.lang.ObjectSE
org.springframework.integration.ip.tcp.connection.TcpConnectionSupport
org.springframework.integration.ip.tcp.connection.TcpNioConnection
実装されたすべてのインターフェース:
RunnableSETcpConnection
既知の直属サブクラス
TcpNioSSLConnection

public class TcpNioConnection extends TcpConnectionSupport
SocketChannelSE を使用および基礎とする TcpConnection。
導入:
2.0
作成者:
Gary Russell, John Anderson, Artem Bilan, David Herschler Shvo, Christian Tzolov
  • コンストラクターの詳細

    • TcpNioConnection

      public TcpNioConnection(SocketChannelSE socketChannel, boolean server, boolean lookupHost, @Nullable ApplicationEventPublisher applicationEventPublisher, @Nullable StringSE connectionFactoryName)
      SocketChannel の TcpNetConnection を作成します。
      パラメーター:
      socketChannel - socketChannel。
      server - true の場合、この接続は受信リクエストの結果として作成されました。
      lookupHost - 逆ルックアップを実行する場合は true。
      applicationEventPublisher - イベント発行者。
      connectionFactoryName - この接続を作成する接続ファクトリの名前。
  • メソッドの詳細

    • setPipeTimeout

      public void setPipeTimeout(long pipeTimeout)
    • close

      public void close()
      クラスからコピーされた説明: TcpConnectionSupport
      この接続を閉じます。
      次で指定:
      インターフェース TcpConnectionclose 
      オーバーライド:
      クラス TcpConnectionSupportclose 
    • isOpen

      public boolean isOpen()
      戻り値:
      接続が開いている場合は true。
    • send

      public void send(Message<?> message)
      インターフェースからコピーされた説明: TcpConnection
      メッセージを変換して送信します。
      パラメーター:
      message - メッセージ
    • getPayload

      public ObjectSE getPayload()
      インターフェースからコピーされた説明: TcpConnection
      デシリアライザーを使用して、接続の入力ストリームからメッセージペイロードを取得します。
      戻り値:
      ペイロード。
    • getPort

      public int getPort()
      戻り値:
    • getDeserializerStateKey

      public ObjectSE getDeserializerStateKey()
      戻り値:
      この接続の状態を維持する Deserializer の状態を参照するために使用できるキー。現在、これは接続に関連付けられている InputStream ですが、オブジェクトは不透明として扱われ、キーとしてのみ使用される必要があります。
    • getSslSession

      @Nullable public SSLSessionSE getSslSession()
      戻り値:
      SSL が使用されている場合、この接続に関連付けられている SSLSessionSE。そうでない場合は null
    • inputStream

      protected InputStreamSE inputStream()
      たとえば、入力ストリームをラップするために、サブクラスでこれをオーバーライドできます。
      戻り値:
      入力ストリーム。
      導入:
      5.0
    • allocate

      protected ByteBufferSE allocate(int length)
      usingDirectBuffers フィールドに応じて、通常バッファーまたは直接バッファーを使用して、リクエストされた長さの ByteBuffer を割り当てます。
      パラメーター:
      length - バッファー長。
      戻り値:
      バッファ。
    • run

      public void run()
      リスナーがない場合、このメソッドは終了します。リスナーがある場合、このメソッドは、入力ストリームにデータがあるたびに convertAndSend を呼び出してデータをメッセージに組み立てます。メッセージが完了し、データがなくなるとメソッドは終了し、スレッドが他のソケットで作業できるようになります。
    • sendToPipe

      protected void sendToPipe(ByteBufferSE rawBufferToSend) throws IOExceptionSE
      例外:
      IOExceptionSE
    • readPacket

      public void readPacket()
      読み込むデータがあるときに、ファクトリによって呼び出されます。
    • setTaskExecutor

      public void setTaskExecutor(ExecutorSE taskExecutor)
      パラメーター:
      taskExecutor - 設定する taskExecutor
    • setUsingDirectBuffers

      public void setUsingDirectBuffers(boolean usingDirectBuffers)
      true の場合、接続は可能な限りダイレクトバッファーの使用を試みます。
      パラメーター:
      usingDirectBuffers - usingDirectBuffers を設定します。
    • isUsingDirectBuffers

      protected boolean isUsingDirectBuffers()
    • getChannelOutputStream

      protected org.springframework.integration.ip.tcp.connection.TcpNioConnection.ChannelOutputStream getChannelOutputStream()
    • getLastRead

      public long getLastRead()
      戻り値:
      最後の読み取りの時間。
    • setLastRead

      public void setLastRead(long lastRead)
      パラメーター:
      lastRead - 最後の読み取りの時間。
    • getLastSend

      public long getLastSend()
      戻り値:
      最後の送信の時刻
    • shutdownInput

      public void shutdownInput() throws IOExceptionSE
      ソケットの入力ストリームをストリームの終わりに設定します。
      例外:
      IOExceptionSE - IO 例外。
      導入:
      5.2
      関連事項:
    • shutdownOutput

      public void shutdownOutput() throws IOExceptionSE
      ソケットの出力ストリームを無効にします。
      例外:
      IOExceptionSE - IO 例外
      導入:
      5.2
      関連事項: