Package org.apache.jmeter.util
Class SlowSSLSocket
java.lang.Object
java.net.Socket
javax.net.ssl.SSLSocket
org.apache.jmeter.util.SlowSSLSocket
- All Implemented Interfaces:
Closeable
,AutoCloseable
"Slow" SSLsocket implementation to emulate dial-up modems etc
WARNING: the class relies on overriding all superclass methods in order to apply them to the input socket.
Any missing methods will access the superclass socket, which will probably be in the wrong state.
-
Constructor Summary
ConstructorDescriptionSlowSSLSocket
(SSLSocket sock, int cps) Wrap an SSLSocket with slow input and output streams -
Method Summary
Modifier and TypeMethodDescriptionvoid
void
bind
(SocketAddress bindpoint) void
close()
void
connect
(SocketAddress endpoint) void
connect
(SocketAddress endpoint, int timeout) String[]
String[]
boolean
boolean
int
boolean
boolean
int
getPort()
int
boolean
int
int
int
String[]
String[]
boolean
int
boolean
boolean
boolean
isBound()
boolean
isClosed()
boolean
boolean
boolean
void
void
sendUrgentData
(int data) void
setEnabledCipherSuites
(String[] arg0) void
setEnabledProtocols
(String[] arg0) void
setEnableSessionCreation
(boolean arg0) void
setKeepAlive
(boolean on) void
setNeedClientAuth
(boolean arg0) void
setOOBInline
(boolean on) void
setReceiveBufferSize
(int size) void
setReuseAddress
(boolean on) void
setSendBufferSize
(int size) void
setSoLinger
(boolean on, int linger) void
setSoTimeout
(int timeout) void
setTcpNoDelay
(boolean on) void
setTrafficClass
(int tc) void
setUseClientMode
(boolean arg0) void
setWantClientAuth
(boolean arg0) void
void
void
toString()
Methods inherited from class javax.net.ssl.SSLSocket
getApplicationProtocol, getHandshakeApplicationProtocol, getHandshakeApplicationProtocolSelector, getHandshakeSession, getSSLParameters, setHandshakeApplicationProtocolSelector, setSSLParameters
Methods inherited from class java.net.Socket
getOption, setOption, setPerformancePreferences, setSocketImplFactory, supportedOptions
-
Constructor Details
-
SlowSSLSocket
Wrap an SSLSocket with slow input and output streams- Parameters:
sock
- SSLSocket to be wrappedcps
- characters per second to emulate
-
-
Method Details
-
getOutputStream
- Overrides:
getOutputStream
in classSocket
- Throws:
IOException
-
getInputStream
- Overrides:
getInputStream
in classSocket
- Throws:
IOException
-
addHandshakeCompletedListener
- Specified by:
addHandshakeCompletedListener
in classSSLSocket
-
getEnableSessionCreation
public boolean getEnableSessionCreation()- Specified by:
getEnableSessionCreation
in classSSLSocket
-
getEnabledCipherSuites
- Specified by:
getEnabledCipherSuites
in classSSLSocket
-
getEnabledProtocols
- Specified by:
getEnabledProtocols
in classSSLSocket
-
getNeedClientAuth
public boolean getNeedClientAuth()- Specified by:
getNeedClientAuth
in classSSLSocket
-
getSession
- Specified by:
getSession
in classSSLSocket
-
getSupportedCipherSuites
- Specified by:
getSupportedCipherSuites
in classSSLSocket
-
getSupportedProtocols
- Specified by:
getSupportedProtocols
in classSSLSocket
-
getUseClientMode
public boolean getUseClientMode()- Specified by:
getUseClientMode
in classSSLSocket
-
getWantClientAuth
public boolean getWantClientAuth()- Specified by:
getWantClientAuth
in classSSLSocket
-
removeHandshakeCompletedListener
- Specified by:
removeHandshakeCompletedListener
in classSSLSocket
-
setEnableSessionCreation
public void setEnableSessionCreation(boolean arg0) - Specified by:
setEnableSessionCreation
in classSSLSocket
-
setEnabledCipherSuites
- Specified by:
setEnabledCipherSuites
in classSSLSocket
-
setEnabledProtocols
- Specified by:
setEnabledProtocols
in classSSLSocket
-
setNeedClientAuth
public void setNeedClientAuth(boolean arg0) - Specified by:
setNeedClientAuth
in classSSLSocket
-
setUseClientMode
public void setUseClientMode(boolean arg0) - Specified by:
setUseClientMode
in classSSLSocket
-
setWantClientAuth
public void setWantClientAuth(boolean arg0) - Specified by:
setWantClientAuth
in classSSLSocket
-
startHandshake
- Specified by:
startHandshake
in classSSLSocket
- Throws:
IOException
-
bind
- Overrides:
bind
in classSocket
- Throws:
IOException
-
close
- Specified by:
close
in interfaceAutoCloseable
- Specified by:
close
in interfaceCloseable
- Overrides:
close
in classSocket
- Throws:
IOException
-
connect
- Overrides:
connect
in classSocket
- Throws:
IOException
-
connect
- Overrides:
connect
in classSocket
- Throws:
IOException
-
getChannel
- Overrides:
getChannel
in classSocket
-
getInetAddress
- Overrides:
getInetAddress
in classSocket
-
getKeepAlive
- Overrides:
getKeepAlive
in classSocket
- Throws:
SocketException
-
getLocalAddress
- Overrides:
getLocalAddress
in classSocket
-
getLocalPort
public int getLocalPort()- Overrides:
getLocalPort
in classSocket
-
getLocalSocketAddress
- Overrides:
getLocalSocketAddress
in classSocket
-
getOOBInline
- Overrides:
getOOBInline
in classSocket
- Throws:
SocketException
-
getPort
public int getPort() -
getReceiveBufferSize
- Overrides:
getReceiveBufferSize
in classSocket
- Throws:
SocketException
-
getRemoteSocketAddress
- Overrides:
getRemoteSocketAddress
in classSocket
-
getReuseAddress
- Overrides:
getReuseAddress
in classSocket
- Throws:
SocketException
-
getSendBufferSize
- Overrides:
getSendBufferSize
in classSocket
- Throws:
SocketException
-
getSoLinger
- Overrides:
getSoLinger
in classSocket
- Throws:
SocketException
-
getSoTimeout
- Overrides:
getSoTimeout
in classSocket
- Throws:
SocketException
-
getTcpNoDelay
- Overrides:
getTcpNoDelay
in classSocket
- Throws:
SocketException
-
getTrafficClass
- Overrides:
getTrafficClass
in classSocket
- Throws:
SocketException
-
isBound
public boolean isBound() -
isClosed
public boolean isClosed() -
isConnected
public boolean isConnected()- Overrides:
isConnected
in classSocket
-
isInputShutdown
public boolean isInputShutdown()- Overrides:
isInputShutdown
in classSocket
-
isOutputShutdown
public boolean isOutputShutdown()- Overrides:
isOutputShutdown
in classSocket
-
sendUrgentData
- Overrides:
sendUrgentData
in classSocket
- Throws:
IOException
-
setKeepAlive
- Overrides:
setKeepAlive
in classSocket
- Throws:
SocketException
-
setOOBInline
- Overrides:
setOOBInline
in classSocket
- Throws:
SocketException
-
setReceiveBufferSize
- Overrides:
setReceiveBufferSize
in classSocket
- Throws:
SocketException
-
setReuseAddress
- Overrides:
setReuseAddress
in classSocket
- Throws:
SocketException
-
setSendBufferSize
- Overrides:
setSendBufferSize
in classSocket
- Throws:
SocketException
-
setSoLinger
- Overrides:
setSoLinger
in classSocket
- Throws:
SocketException
-
setSoTimeout
- Overrides:
setSoTimeout
in classSocket
- Throws:
SocketException
-
setTcpNoDelay
- Overrides:
setTcpNoDelay
in classSocket
- Throws:
SocketException
-
setTrafficClass
- Overrides:
setTrafficClass
in classSocket
- Throws:
SocketException
-
shutdownInput
- Overrides:
shutdownInput
in classSocket
- Throws:
IOException
-
shutdownOutput
- Overrides:
shutdownOutput
in classSocket
- Throws:
IOException
-
toString
-