public class TcpNetConnection extends TcpConnectionSupport implements SchedulingAwareRunnable
Socket
SE を使用および基礎とする TcpConnection。logger
コンストラクターと説明 |
---|
TcpNetConnection(SocketSE socket, boolean server, boolean lookupHost, ApplicationEventPublisher applicationEventPublisher, StringSE connectionFactoryName) ソケット用の TcpNetConnection を作成します。 |
修飾子と型 | メソッドと説明 |
---|---|
void | close() この接続を閉じます。 |
ObjectSE | getDeserializerStateKey() |
ObjectSE | getPayload() デシリアライザーを使用して、接続の入力ストリームからメッセージペイロードを取得します。 |
int | getPort() |
SSLSessionSE | getSslSession() |
protected boolean | handleReadException(ExceptionSE exception) |
protected InputStreamSE | inputStream() たとえば、入力ストリームをラップするために、サブクラスでこれをオーバーライドできます。 |
boolean | isLongLived() |
boolean | isOpen() |
void | run() リスナーが存在しない場合、このメソッドは終了します。 |
void | send(Message<?> message) メッセージを変換して送信します。 |
void | shutdownInput() ソケットの入力ストリームをストリームの終わりに設定します。 |
void | shutdownOutput() ソケットの出力ストリームを無効にします。 |
closeConnection, enableManualListenerRegistration, getConnectionFactoryName, getConnectionId, getDeserializer, getHostAddress, getHostName, getListener, getMapper, getSender, getSenders, getSerializer, getSocketInfo, incrementAndGetConnectionSequence, isNoReadErrorOnClose, isServer, publishConnectionCloseEvent, publishConnectionExceptionEvent, publishConnectionOpenEvent, publishEvent, registerListener, registerSender, registerSenders, registerTestListener, sendExceptionToListener, setDeserializer, setMapper, setNeedsTest, setNoReadErrorOnClose, setSerializer, toString
cloneSE, equalsSE, finalizeSE, getClassSE, hashCodeSE, notifySE, notifyAllSE, waitSE, waitSE, waitSE
public TcpNetConnection(SocketSE socket, boolean server, boolean lookupHost, @Nullable ApplicationEventPublisher applicationEventPublisher, StringSE connectionFactoryName)
socket
- ソケット server
- true の場合、この接続は受信リクエストの結果として作成されました。lookupHost
- ホスト名のルックアップを実行する必要がある場合は true、それ以外の場合は IP アドレスを使用して接続を識別します。applicationEventPublisher
- OPEN、CLOSE、EXCEPTION イベントが送信される発行元。イベントの公開が不要な場合は null になることがあります。connectionFactoryName
- この接続を作成する接続ファクトリの名前。イベントの発行中に使用され、null の場合があります。その場合、「不明」が使用されます。public boolean isLongLived()
SchedulingAwareRunnable
の isLongLived
public void close()
TcpConnection
の close
TcpConnectionSupport
の close
public boolean isOpen()
TcpConnection
の isOpen
public void send(Message<?> message)
TcpConnection
TcpConnection
の send
message
- メッセージ public ObjectSE getPayload()
TcpConnection
TcpConnection
の getPayload
public int getPort()
TcpConnection
の getPort
@Nullable public ObjectSE getDeserializerStateKey()
TcpConnection
の getDeserializerStateKey
Deserializer
の状態を参照するために使用できるキー。現在、これは接続に関連付けられている InputStream ですが、オブジェクトは不透明として扱われ、キーとしてのみ使用される必要があります。@Nullable public SSLSessionSE getSslSession()
TcpConnection
の getSslSession
SSLSession
SE。そうでない場合は nullprotected InputStreamSE inputStream() throws IOExceptionSE
IOExceptionSE
- 例外が発生した場合。public void run()
Deserializer
を使用してオブジェクトに変換され、リスナーの TcpListener.onMessage(Message)
メソッドが呼び出されます。RunnableSE
の runSE
protected boolean handleReadException(ExceptionSE exception)
public void shutdownInput() throws IOExceptionSE
TcpConnection
の shutdownInput
IOExceptionSE
- IO 例外。Socket.shutdownInput()
SEpublic void shutdownOutput() throws IOExceptionSE
TcpConnection
の shutdownOutput
IOExceptionSE
- IO 例外 Socket.shutdownOutput()
SE