uTools-Manuals/docs/java/javax/net/ssl/SSLContextSpi.html

456 lines
20 KiB
HTML
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<div class="header">
<div class="subTitle">
compact1, compact2, compact3
</div>
<div class="subTitle">
javax.net.ssl
</div>
<h2 class="title" title="Class SSLContextSpi">Class SSLContextSpi</h2>
</div><div class="contentContainer">
<ul class="inheritance">
<li><a href="../../../java/lang/Object.html" title="class in java.lang">java.lang.Object</a></li>
<li>
<ul class="inheritance">
<li>javax.net.ssl.SSLContextSpi</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">SSLContextSpi</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></pre>
<div class="block">
<span>这个类定义的 <span>SPI</span> <code>SSLContext</code>类。</span>
<p> <span>该类中的所有抽象方法必须由希望提供特定SSL上下文的实现的每个加密服务提供商来实现。</span> </p>
</div>
<dl>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.4
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../javax/net/ssl/SSLContext.html" title="javax.net.ssl中的类"><code>SSLContext</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ======== CONSTRUCTOR SUMMARY ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.summary">
<!-- --> </a> <h3>构造方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Constructor Summary table, listing constructors, and an explanation">
<caption>
<span>构造方法</span>
<span class="tabEnd"> </span>
</caption>
<tbody>
<tr>
<th class="colOne" scope="col">Constructor and Description</th>
</tr>
<tr class="altColor">
<td class="colOne"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#SSLContextSpi--">SSLContextSpi</a></span>()</code> </td>
</tr>
</tbody>
</table> </li>
</ul>
<!-- ========== METHOD SUMMARY =========== -->
<ul class="blockList">
<li class="blockList"><a name="method.summary">
<!-- --> </a> <h3>方法摘要</h3>
<table border="0" cellpadding="3" cellspacing="0" class="memberSummary" summary="Method Summary table, listing methods, and an explanation">
<caption>
<span class="activeTableTab" id="t0"><span>所有方法</span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t2"><span><a href="javascript:show(2);">接口方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t3"><span><a href="javascript:show(4);">抽象方法</a></span><span class="tabEnd"> </span></span>
<span class="tableTab" id="t4"><span><a href="javascript:show(8);">具体的方法</a></span><span class="tabEnd"> </span></span>
</caption>
<tbody>
<tr>
<th class="colFirst" scope="col">Modifier and Type</th>
<th class="colLast" scope="col">Method and Description</th>
</tr>
<tr class="altColor" id="i0">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLEngine.html" title="class in javax.net.ssl">SSLEngine</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineCreateSSLEngine--">engineCreateSSLEngine</a></span>()</code>
<div class="block">
使用这个上下文创建一个新的
<code>SSLEngine</code>
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLEngine.html" title="class in javax.net.ssl">SSLEngine</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineCreateSSLEngine-java.lang.String-int-">engineCreateSSLEngine</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> host, int port)</code>
<div class="block">
使用这个上下文创建一个
<code>SSLEngine</code>
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLSessionContext.html" title="interface in javax.net.ssl">SSLSessionContext</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetClientSessionContext--">engineGetClientSessionContext</a></span>()</code>
<div class="block">
返回此上下文的客户端
<code>SSLSessionContext</code>对象。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>protected <a href="../../../javax/net/ssl/SSLParameters.html" title="class in javax.net.ssl">SSLParameters</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetDefaultSSLParameters--">engineGetDefaultSSLParameters</a></span>()</code>
<div class="block">
返回指示此SSL上下文默认设置的SSLParameters的副本。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLSessionContext.html" title="interface in javax.net.ssl">SSLSessionContext</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetServerSessionContext--">engineGetServerSessionContext</a></span>()</code>
<div class="block">
返回此上下文的服务器
<code>SSLSessionContext</code>对象。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLServerSocketFactory.html" title="class in javax.net.ssl">SSLServerSocketFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetServerSocketFactory--">engineGetServerSocketFactory</a></span>()</code>
<div class="block">
返回此上下文的
<code>ServerSocketFactory</code>对象。
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>protected abstract <a href="../../../javax/net/ssl/SSLSocketFactory.html" title="class in javax.net.ssl">SSLSocketFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetSocketFactory--">engineGetSocketFactory</a></span>()</code>
<div class="block">
返回此上下文的
<code>SocketFactory</code>对象。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>protected <a href="../../../javax/net/ssl/SSLParameters.html" title="class in javax.net.ssl">SSLParameters</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineGetSupportedSSLParameters--">engineGetSupportedSSLParameters</a></span>()</code>
<div class="block">
返回指示此SSL上下文支持的最大设置的SSLParameters的副本。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code>protected abstract void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../javax/net/ssl/SSLContextSpi.html#engineInit-javax.net.ssl.KeyManager:A-javax.net.ssl.TrustManager:A-java.security.SecureRandom-">engineInit</a></span>(<a href="../../../javax/net/ssl/KeyManager.html" title="interface in javax.net.ssl">KeyManager</a>[] km, <a href="../../../javax/net/ssl/TrustManager.html" title="interface in javax.net.ssl">TrustManager</a>[] tm, <a href="../../../java/security/SecureRandom.html" title="class in java.security">SecureRandom</a> sr)</code>
<div class="block">
初始化此上下文。
</div> </td>
</tr>
</tbody>
</table>
<ul class="blockList">
<li class="blockList"><a name="methods.inherited.from.class.java.lang.Object">
<!-- --> </a> <h3>Methods inherited from class java.lang.<a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></h3> <code><a href="../../../java/lang/Object.html#clone--">clone</a>, <a href="../../../java/lang/Object.html#equals-java.lang.Object-">equals</a>, <a href="../../../java/lang/Object.html#finalize--">finalize</a>, <a href="../../../java/lang/Object.html#getClass--">getClass</a>, <a href="../../../java/lang/Object.html#hashCode--">hashCode</a>, <a href="../../../java/lang/Object.html#notify--">notify</a>, <a href="../../../java/lang/Object.html#notifyAll--">notifyAll</a>, <a href="../../../java/lang/Object.html#toString--">toString</a>, <a href="../../../java/lang/Object.html#wait--">wait</a>, <a href="../../../java/lang/Object.html#wait-long-">wait</a>, <a href="../../../java/lang/Object.html#wait-long-int-">wait</a></code></li>
</ul> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ========= CONSTRUCTOR DETAIL ======== -->
<ul class="blockList">
<li class="blockList"><a name="constructor.detail">
<!-- --> </a> <h3>构造方法详细信息</h3> <a name="SSLContextSpi--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>SSLContextSpi</h4> <pre>public SSLContextSpi()</pre> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="engineInit-javax.net.ssl.KeyManager:A-javax.net.ssl.TrustManager:A-java.security.SecureRandom-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineInit</h4> <pre>protected abstract void engineInit(<a href="../../../javax/net/ssl/KeyManager.html" title="interface in javax.net.ssl">KeyManager</a>[] km,
<a href="../../../javax/net/ssl/TrustManager.html" title="interface in javax.net.ssl">TrustManager</a>[] tm,
<a href="../../../java/security/SecureRandom.html" title="class in java.security">SecureRandom</a> sr)
throws <a href="../../../java/security/KeyManagementException.html" title="class in java.security">KeyManagementException</a></pre>
<div class="block">
初始化此上下文。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>km</code> - 认证密钥的来源
</dd>
<dd>
<code>tm</code> - 对等认证信任决策的来源
</dd>
<dd>
<code>sr</code> -
<code>sr</code>的来源
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/security/KeyManagementException.html" title="class in java.security">KeyManagementException</a></code> - 如果此操作失败
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#init-javax.net.ssl.KeyManager:A-javax.net.ssl.TrustManager:A-java.security.SecureRandom-"><code>SSLContext.init(KeyManager [], TrustManager [], SecureRandom)</code></a>
</dd>
</dl> </li>
</ul> <a name="engineGetSocketFactory--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineGetSocketFactory</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLSocketFactory.html" title="class in javax.net.ssl">SSLSocketFactory</a> engineGetSocketFactory()</pre>
<div class="block">
返回此上下文的一个
<code>SocketFactory</code>对象。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>SocketFactory</code>对象
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果SSLContextImpl需要初始化并且尚未调用
<code>engineInit()</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#getSocketFactory--"><code>SSLContext.getSocketFactory()</code></a>
</dd>
</dl> </li>
</ul> <a name="engineGetServerSocketFactory--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineGetServerSocketFactory</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLServerSocketFactory.html" title="class in javax.net.ssl">SSLServerSocketFactory</a> engineGetServerSocketFactory()</pre>
<div class="block">
返回此上下文的一个
<code>ServerSocketFactory</code>对象。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>ServerSocketFactory</code>对象
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果SSLContextImpl需要初始化并且尚未调用
<code>engineInit()</code>
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#getServerSocketFactory--"><code>SSLContext.getServerSocketFactory()</code></a>
</dd>
</dl> </li>
</ul> <a name="engineCreateSSLEngine--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineCreateSSLEngine</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLEngine.html" title="class in javax.net.ssl">SSLEngine</a> engineCreateSSLEngine()</pre>
<div class="block">
<span>使用这个上下文创建一个新的<code>SSLEngine</code></span>
<p> <span>使用此工厂方法的应用程序不提供内部会话重用策略的提示。</span> <span>如果需要提示,应该使用<a href="../../../javax/net/ssl/SSLContextSpi.html#engineCreateSSLEngine-java.lang.String-int-"><code>engineCreateSSLEngine(String, int)</code></a></span> </p>
<p> <span>某些密码套件如Kerberos需要远程主机名信息在这种情况下不应使用此工厂方法。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>SSLEngine</code>对象
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果SSLContextImpl需要初始化并且尚未调用
<code>engineInit()</code>
</dd>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.5
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#createSSLEngine--"><code>SSLContext.createSSLEngine()</code></a>
</dd>
</dl> </li>
</ul> <a name="engineCreateSSLEngine-java.lang.String-int-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineCreateSSLEngine</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLEngine.html" title="class in javax.net.ssl">SSLEngine</a> engineCreateSSLEngine(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> host,
int port)</pre>
<div class="block">
<span>使用此上下文创建一个<code>SSLEngine</code></span>
<p> <span>使用此工厂方法的应用程序正在为内部会话重用策略提供提示。</span> </p>
<p> <span>某些密码套件如Kerberos需要远程主机名信息在这种情况下需要指定peerHost。</span> </p>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>host</code> - 主机的非权威名称
</dd>
<dd>
<code>port</code> - 非权威端口
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>SSLEngine</code>对象
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/IllegalStateException.html" title="class in java.lang">IllegalStateException</a></code> - 如果SSLContextImpl需要初始化并且尚未调用
<code>engineInit()</code>
</dd>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.5
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#createSSLEngine-java.lang.String-int-"><code>SSLContext.createSSLEngine(String, int)</code></a>
</dd>
</dl> </li>
</ul> <a name="engineGetServerSessionContext--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineGetServerSessionContext</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLSessionContext.html" title="interface in javax.net.ssl">SSLSessionContext</a> engineGetServerSessionContext()</pre>
<div class="block">
返回此上下文的服务器
<code>SSLSessionContext</code>对象。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>SSLSessionContext</code>对象
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#getServerSessionContext--"><code>SSLContext.getServerSessionContext()</code></a>
</dd>
</dl> </li>
</ul> <a name="engineGetClientSessionContext--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineGetClientSessionContext</h4> <pre>protected abstract <a href="../../../javax/net/ssl/SSLSessionContext.html" title="interface in javax.net.ssl">SSLSessionContext</a> engineGetClientSessionContext()</pre>
<div class="block">
返回此上下文的客户端
<code>SSLSessionContext</code>对象。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>SSLSessionContext</code>对象
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<a href="../../../javax/net/ssl/SSLContext.html#getClientSessionContext--"><code>SSLContext.getClientSessionContext()</code></a>
</dd>
</dl> </li>
</ul> <a name="engineGetDefaultSSLParameters--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>engineGetDefaultSSLParameters</h4> <pre>protected <a href="../../../javax/net/ssl/SSLParameters.html" title="class in javax.net.ssl">SSLParameters</a> engineGetDefaultSSLParameters()</pre>
<div class="block">
<span>返回指示此SSL上下文默认设置的SSLParameters的副本。</span>
<p> <span>参数将始终将密码和协议数组设置为非空值。</span> </p>
<p> <span>默认实现通过调用此上下文的SocketFactory的<a href="../../../javax/net/SocketFactory.html#createSocket--">SocketFactory.createSocket()</a>方法从SSLSocket获取参数。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
具有默认设置的SSLParameters对象的副本
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/UnsupportedOperationException.html" title="class in java.lang">UnsupportedOperationException</a></code> - 如果无法获取默认SSL参数。
</dd>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.6
</dd>
</dl> </li>
</ul> <a name="engineGetSupportedSSLParameters--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>engineGetSupportedSSLParameters</h4> <pre>protected <a href="../../../javax/net/ssl/SSLParameters.html" title="class in javax.net.ssl">SSLParameters</a> engineGetSupportedSSLParameters()</pre>
<div class="block">
<span>返回指示此SSL上下文支持的最大设置的SSLParameters的副本。</span>
<p> <span>参数将始终将密码和协议数组设置为非空值。</span> </p>
<p> <span>默认实现通过调用此上下文的SocketFactory的<a href="../../../javax/net/SocketFactory.html#createSocket--">SocketFactory.createSocket()</a>方法从SSLSocket获取参数。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
具有最大支持设置的SSLParameters对象的副本
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../java/lang/UnsupportedOperationException.html" title="class in java.lang">UnsupportedOperationException</a></code> - 如果无法获得支持的SSL参数。
</dd>
<dt>
<span class="simpleTagLabel">从以下版本开始:</span>
</dt>
<dd>
1.6
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>