431 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">
org.omg.PortableServer
</div>
<h2 class="title" title="Class Servant">Class Servant</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>org.omg.PortableServer.Servant</li>
</ul> </li>
</ul>
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
已知直接子类:
</dt>
<dd>
<span><a href="../../../org/omg/CosNaming/BindingIteratorPOA.html" title="org.omg.CosNaming中的类">BindingIteratorPOA</a> <a href="../../../org/omg/PortableServer/DynamicImplementation.html" title="org.omg.PortableServer中的类">DynamicImplementation</a> <a href="../../../org/omg/CosNaming/NamingContextExtPOA.html" title="org.omg.CosNaming中的类">NamingContextExtPOA</a> <a href="../../../org/omg/CosNaming/NamingContextPOA.html" title="org.omg.CosNaming中的类">NamingContextPOA</a> <a href="../../../org/omg/PortableServer/ServantActivatorPOA.html" title="org.omg.PortableServer中的类">ServantActivatorPOA</a> <a href="../../../org/omg/PortableServer/ServantLocatorPOA.html" title="org.omg.PortableServer中的类">ServantLocatorPOA</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public abstract class <span class="typeNameLabel">Servant</span>
extends <a href="../../../java/lang/Object.html" title="class in java.lang">Object</a></pre>
<div class="block">
<span>定义本机<code>Servant</code>类型。</span>
<span>在Java中 <code>Servant</code>类型映射到Java <code>org.omg.PortableServer.Servant</code>类。</span>
<span>它用作所有POA服务器实现的基类并提供了可以由应用程序员调用的多种方法以及由POA自身调用并可被用户覆盖以控制仆人行为方面的方法。</span>
<span>基于IDL到Java规范。</span>
<span>CORBA V2.3.1ptc / 00-01-08.pdf。</span>
</div> </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="../../../org/omg/PortableServer/Servant.html#Servant--">Servant</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>abstract <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_all_interfaces-org.omg.PortableServer.POA-byte:A-">_all_interfaces</a></span>(<a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a> poa, byte[] objectId)</code>
<div class="block">
由ORB用于从仆人获取完整的类型信息。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code><a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_default_POA--">_default_POA</a></span>()</code>
<div class="block">
从与服务器关联的ORB实例返回根POA。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code><a href="../../../org/omg/PortableServer/portable/Delegate.html" title="interface in org.omg.PortableServer.portable">Delegate</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_get_delegate--">_get_delegate</a></span>()</code>
<div class="block">
获取ORB供应商特定的PortableServer::Servant
<code>PortableServer::Servant</code>
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code><a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_get_interface_def--">_get_interface_def</a></span>()</code>
<div class="block">
返回一个
<code>InterfaceDef</code>对象作为
<code>CORBA::Object</code> ,它定义了由
<code>CORBA::Object</code>实现的
<code>Servant</code>的运行时类型。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_is_a-java.lang.String-">_is_a</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> repository_id)</code>
<div class="block">
检查是否指定的
<code>repository_id</code>存在通过返回的列表上
<code>_all_interfaces()</code>或者是
<code>repository_id</code>对通用CORBA对象。
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code>boolean</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_non_existent--">_non_existent</a></span>()</code>
<div class="block">
检查是否存在
<code>Object</code>
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code>byte[]</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_object_id--">_object_id</a></span>()</code>
<div class="block">
允许轻松执行常用方法,相当于调用
<code>PortableServer::Current::get_object_id</code>
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code><a href="../../../org/omg/CORBA/ORB.html" title="class in org.omg.CORBA">ORB</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_orb--">_orb</a></span>()</code>
<div class="block">
返回当前与
<code>Servant</code> (方便方法)
<code>Servant</code>的ORB的实例。
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code><a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_poa--">_poa</a></span>()</code>
<div class="block">
方便执行常用方法,相当于
<code>PortableServer::Current:get_POA</code>
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_set_delegate-org.omg.PortableServer.portable.Delegate-">_set_delegate</a></span>(<a href="../../../org/omg/PortableServer/portable/Delegate.html" title="interface in org.omg.PortableServer.portable">Delegate</a> delegate)</code>
<div class="block">
通过为通过委托支持ORB可移植性的类提供一种方法来设置其委托支持Java ORB可移植性接口。
</div> </td>
</tr>
<tr class="altColor" id="i10">
<td class="colFirst"><code><a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_this_object--">_this_object</a></span>()</code>
<div class="block">
允许仆人获取其针对该请求的目标CORBA对象的对象引用。
</div> </td>
</tr>
<tr class="rowColor" id="i11">
<td class="colFirst"><code><a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableServer/Servant.html#Z:Z_this_object-org.omg.CORBA.ORB-">_this_object</a></span>(<a href="../../../org/omg/CORBA/ORB.html" title="class in org.omg.CORBA">ORB</a> orb)</code>
<div class="block">
允许仆人获取它为该请求所体现的目标CORBA对象的对象引用。
</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="Servant--">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>Servant</h4> <pre>public Servant()</pre> </li>
</ul> </li>
</ul>
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="Z:Z_get_delegate--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_get_delegate</h4> <pre>public final <a href="../../../org/omg/PortableServer/portable/Delegate.html" title="interface in org.omg.PortableServer.portable">Delegate</a> _get_delegate()</pre>
<div class="block">
获取ORB供应商特定的PortableServer::Servant
<code>PortableServer::Servant</code>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>_delegate</code>的ORB供应商具体实现
<code>PortableServer::Servant</code>
</dd>
</dl> </li>
</ul> <a name="Z:Z_set_delegate-org.omg.PortableServer.portable.Delegate-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_set_delegate</h4> <pre>public final void _set_delegate(<a href="../../../org/omg/PortableServer/portable/Delegate.html" title="interface in org.omg.PortableServer.portable">Delegate</a> delegate)</pre>
<div class="block">
通过为通过委托支持ORB可移植性的类提供一种方法来设置其委托支持Java ORB可移植性接口。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>delegate</code> - ORB供应商特定的PortableServer::Servant的
<code>PortableServer::Servant</code>
</dd>
</dl> </li>
</ul> <a name="Z:Z_this_object--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_this_object</h4> <pre>public final <a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> _this_object()</pre>
<div class="block">
允许仆人获取其针对该请求的目标CORBA对象的对象引用。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>this_object</code>
<code>Object</code>与请求
<code>Object</code>联的引用。
</dd>
</dl> </li>
</ul> <a name="Z:Z_this_object-org.omg.CORBA.ORB-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_this_object</h4> <pre>public final <a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> _this_object(<a href="../../../org/omg/CORBA/ORB.html" title="class in org.omg.CORBA">ORB</a> orb)</pre>
<div class="block">
允许仆人获取它为该请求所体现的目标CORBA对象的对象引用。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>orb</code> - 与仆人关联的ORB。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>_this_object</code>与请求
<code>_this_object</code>联的引用。
</dd>
</dl> </li>
</ul> <a name="Z:Z_orb--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_orb</h4> <pre>public final <a href="../../../org/omg/CORBA/ORB.html" title="class in org.omg.CORBA">ORB</a> _orb()</pre>
<div class="block">
返回当前与
<code>Servant</code> (方便方法)相关
<code>Servant</code>的ORB的实例。
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>orb</code>的ORB实例目前与相关
<code>Servant</code>
</dd>
</dl> </li>
</ul> <a name="Z:Z_poa--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_poa</h4> <pre>public final <a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a> _poa()</pre>
<div class="block">
允许轻松执行常用方法,相当于
<code>PortableServer::Current:get_POA</code>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>poa</code>与仆人
<code>poa</code> POA。
</dd>
</dl> </li>
</ul> <a name="Z:Z_object_id--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_object_id</h4> <pre>public final byte[] _object_id()</pre>
<div class="block">
允许轻松执行常用方法,相当于调用
<code>PortableServer::Current::get_object_id</code>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>object_id</code>与此仆人
<code>object_id</code>
<code>Object</code> ID。
</dd>
</dl> </li>
</ul> <a name="Z:Z_default_POA--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_default_POA</h4> <pre>public <a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a> _default_POA()</pre>
<div class="block">
<span>从与服务器关联的ORB实例返回根POA。</span>
<span>子类可以覆盖此方法以返回不同的POA。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>default_POA</code>的POA与
<code>Servant</code>
</dd>
</dl> </li>
</ul> <a name="Z:Z_is_a-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_is_a</h4> <pre>public boolean _is_a(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> repository_id)</pre>
<div class="block">
检查是否指定的
<code>repository_id</code>存在通过返回的列表上
<code>_all_interfaces()</code>或者是
<code>repository_id</code>对通用CORBA对象。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>repository_id</code> -在
<code>repository_id</code>到资料库列表或反对普通CORBA对象的ID进行检查。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>is_a</code>布尔值,指示指定是否
<code>repository_id</code>是在存储库列表或是相同的通用CORBA对象。
</dd>
</dl> </li>
</ul> <a name="Z:Z_non_existent--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_non_existent</h4> <pre>public boolean _non_existent()</pre>
<div class="block">
<span>检查是否存在<code>Object</code></span>
<span><code>Servant</code>提供了可以被派生仆人覆盖的<code>_non_existent()</code>的默认实现。</span>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>non_existent</code>
<code>true</code>如果该对象不存在,
<code>false</code>否则。
</dd>
</dl> </li>
</ul> <a name="Z:Z_get_interface_def--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>_get_interface_def</h4> <pre>public <a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> _get_interface_def()</pre>
<div class="block">
<span>返回一个<code>InterfaceDef</code>对象作为<code>CORBA::Object</code> ,它定义了由<code>CORBA::Object</code>实现的<code>Servant</code>的运行时类型。</span>
<span><code>_get_interface_def</code>的调用者必须将结果缩小到<code>InterfaceDef</code>才能使用它。</span>
<p> <span>如果默认行为不足,则派生<code>_get_interface_def()</code>可以覆盖此默认实现<code>_get_interface_def()</code></span> <span>正如在CORBA 2.3.1规范中定义的第11.3.1节的默认行为<code>_get_interface_def()</code>是使用静态仆人的最派生接口或从动态仆人检索,以获得最派生接口<code>InterfaceDef</code></span> <span>这种行为必须得到支持<code>Delegate</code>实现了<code>Servant</code></span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
<code>get_interface_def</code>一个
<code>InterfaceDef</code>对象作为一个
<code>CORBA::Object</code> ,它定义了由
<code>CORBA::Object</code>实现的
<code>Servant</code>的运行时类型。
</dd>
</dl> </li>
</ul> <a name="Z:Z_all_interfaces-org.omg.PortableServer.POA-byte:A-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>_all_interfaces</h4> <pre>public abstract <a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] _all_interfaces(<a href="../../../org/omg/PortableServer/POA.html" title="interface in org.omg.PortableServer">POA</a> poa,
byte[] objectId)</pre>
<div class="block">
由ORB用于从仆人获取完整的类型信息。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>poa</code> - 与仆人关联的POA。
</dd>
<dd>
<code>objectId</code> - 是与该仆人关联的对象对应的id。
</dd>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
对象的类型信息列表。
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>