public abstract class SSLContextSpi extends Object
SSLContext
class.
All the abstract methods in this class must be implemented by each cryptographic service provider who wishes to supply the implementation of a particular SSL context.
SSLContext
Constructor and Description |
---|
SSLContextSpi() |
Modifier and Type | Method and Description |
---|---|
protected abstract SSLEngine |
engineCreateSSLEngine()
Creates a new
SSLEngine using this context. |
protected abstract SSLEngine |
engineCreateSSLEngine(String host,
int port)
Creates a
SSLEngine using this context. |
protected abstract SSLSessionContext |
engineGetClientSessionContext()
Returns a client
SSLSessionContext object for
this context. |
protected SSLParameters |
engineGetDefaultSSLParameters()
Returns a copy of the SSLParameters indicating the default
settings for this SSL context.
|
protected abstract SSLSessionContext |
engineGetServerSessionContext()
Returns a server
SSLSessionContext object for
this context. |
protected abstract SSLServerSocketFactory |
engineGetServerSocketFactory()
Returns a
ServerSocketFactory object for
this context. |
protected abstract SSLSocketFactory |
engineGetSocketFactory()
Returns a
SocketFactory object for this
context. |
protected SSLParameters |
engineGetSupportedSSLParameters()
Returns a copy of the SSLParameters indicating the maximum supported
settings for this SSL context.
|
protected abstract void |
engineInit(KeyManager[] km,
TrustManager[] tm,
SecureRandom sr)
Initializes this context.
|
protected abstract void engineInit(KeyManager[] km, TrustManager[] tm, SecureRandom sr) throws KeyManagementException
km
- the sources of authentication keystm
- the sources of peer authentication trust decisionssr
- the source of randomnessKeyManagementException
- if this operation failsSSLContext.init(KeyManager [], TrustManager [], SecureRandom)
protected abstract SSLSocketFactory engineGetSocketFactory()
SocketFactory
object for this
context.SocketFactory
objectIllegalStateException
- if the SSLContextImpl requires
initialization and the engineInit()
has not been calledSSLContext.getSocketFactory()
protected abstract SSLServerSocketFactory engineGetServerSocketFactory()
ServerSocketFactory
object for
this context.ServerSocketFactory
objectIllegalStateException
- if the SSLContextImpl requires
initialization and the engineInit()
has not been calledSSLContext.getServerSocketFactory()
protected abstract SSLEngine engineCreateSSLEngine()
SSLEngine
using this context.
Applications using this factory method are providing no hints
for an internal session reuse strategy. If hints are desired,
engineCreateSSLEngine(String, int)
should be used
instead.
Some cipher suites (such as Kerberos) require remote hostname information, in which case this factory method should not be used.
SSLEngine
ObjectIllegalStateException
- if the SSLContextImpl requires
initialization and the engineInit()
has not been calledSSLContext.createSSLEngine()
protected abstract SSLEngine engineCreateSSLEngine(String host, int port)
SSLEngine
using this context.
Applications using this factory method are providing hints for an internal session reuse strategy.
Some cipher suites (such as Kerberos) require remote hostname information, in which case peerHost needs to be specified.
host
- the non-authoritative name of the hostport
- the non-authoritative portSSLEngine
ObjectIllegalStateException
- if the SSLContextImpl requires
initialization and the engineInit()
has not been calledSSLContext.createSSLEngine(String, int)
protected abstract SSLSessionContext engineGetServerSessionContext()
SSLSessionContext
object for
this context.SSLSessionContext
objectSSLContext.getServerSessionContext()
protected abstract SSLSessionContext engineGetClientSessionContext()
SSLSessionContext
object for
this context.SSLSessionContext
objectSSLContext.getClientSessionContext()
protected SSLParameters engineGetDefaultSSLParameters()
The parameters will always have the ciphersuite and protocols arrays set to non-null values.
The default implementation obtains the parameters from an SSLSocket created by calling the SocketFactory.createSocket() method of this context's SocketFactory.
UnsupportedOperationException
- if the default SSL parameters
could not be obtained.protected SSLParameters engineGetSupportedSSLParameters()
The parameters will always have the ciphersuite and protocols arrays set to non-null values.
The default implementation obtains the parameters from an SSLSocket created by calling the SocketFactory.createSocket() method of this context's SocketFactory.
UnsupportedOperationException
- if the supported SSL parameters
could not be obtained. Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 1993, 2022, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.