uTools-Manuals/docs/java/org/omg/PortableInterceptor/ORBInitInfoOperations.html

334 lines
17 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.PortableInterceptor
</div>
<h2 class="title" title="Interface ORBInitInfoOperations">Interface ORBInitInfoOperations</h2>
</div><div class="contentContainer">
<div class="description">
<ul class="blockList">
<li class="blockList">
<dl>
<dt>
All Known Subinterfaces:
</dt>
<dd>
<span><a href="../../../org/omg/PortableInterceptor/ORBInitInfo.html" title="在org.omg.PortableInterceptor中的接口">ORBInitInfo</a></span>
</dd>
</dl>
<hr/> <br/> <pre>public interface <span class="typeNameLabel">ORBInitInfoOperations</span></pre>
<div class="block">
<span>传递给每个<code>ORBInitializer</code> 允许它在ORB初始化时注册拦截器并执行其他任务。</span>
<p> <span><code>ORBInitInfo</code>对象仅在<code>ORB.init</code>期间有效。</span> <span>如果服务保持一个参考其<code>ORBInitInfo</code>对象,并尝试后使用它<code>ORB.init</code>返回时,对象不再存在,一个<code>OBJECT_NOT_EXIST</code>异常应被抛出。</span> </p>
</div>
<dl>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../org/omg/PortableInterceptor/ORBInitializer.html" title="在org.omg.PortableInterceptor中的接口"><code>ORBInitializer</code></a></span>
</dd>
</dl> </li>
</ul>
</div>
<div class="summary">
<ul class="blockList">
<li class="blockList">
<!-- ========== 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>
</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>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#add_client_request_interceptor-org.omg.PortableInterceptor.ClientRequestInterceptor-">add_client_request_interceptor</a></span>(<a href="../../../org/omg/PortableInterceptor/ClientRequestInterceptor.html" title="interface in org.omg.PortableInterceptor">ClientRequestInterceptor</a> interceptor)</code>
<div class="block">
用于将客户端请求Interceptor添加到客户端请求拦截器列表中。
</div> </td>
</tr>
<tr class="rowColor" id="i1">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#add_ior_interceptor-org.omg.PortableInterceptor.IORInterceptor-">add_ior_interceptor</a></span>(<a href="../../../org/omg/PortableInterceptor/IORInterceptor.html" title="interface in org.omg.PortableInterceptor">IORInterceptor</a> interceptor)</code>
<div class="block">
用于将IOR Interceptor添加到IOR拦截器列表中。
</div> </td>
</tr>
<tr class="altColor" id="i2">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#add_server_request_interceptor-org.omg.PortableInterceptor.ServerRequestInterceptor-">add_server_request_interceptor</a></span>(<a href="../../../org/omg/PortableInterceptor/ServerRequestInterceptor.html" title="interface in org.omg.PortableInterceptor">ServerRequestInterceptor</a> interceptor)</code>
<div class="block">
用于将服务器端请求拦截器添加到服务器端请求拦截器列表中。
</div> </td>
</tr>
<tr class="rowColor" id="i3">
<td class="colFirst"><code>int</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#allocate_slot_id--">allocate_slot_id</a></span>()</code>
<div class="block">
呼叫在
<code>PortableInterceptor.Current</code>上分配一个时隙。
</div> </td>
</tr>
<tr class="altColor" id="i4">
<td class="colFirst"><code><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/PortableInterceptor/ORBInitInfoOperations.html#arguments--">arguments</a></span>()</code>
<div class="block">
返回传递给
<code>ORB.init</code>
</div> </td>
</tr>
<tr class="rowColor" id="i5">
<td class="colFirst"><code><a href="../../../org/omg/IOP/CodecFactory.html" title="interface in org.omg.IOP">CodecFactory</a></code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#codec_factory--">codec_factory</a></span>()</code>
<div class="block">
返回
<code>IOP.CodecFactory</code>
</div> </td>
</tr>
<tr class="altColor" id="i6">
<td class="colFirst"><code><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/PortableInterceptor/ORBInitInfoOperations.html#orb_id--">orb_id</a></span>()</code>
<div class="block">
返回正在初始化的ORB的ID。
</div> </td>
</tr>
<tr class="rowColor" id="i7">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#register_initial_reference-java.lang.String-org.omg.CORBA.Object-">register_initial_reference</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id, <a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> obj)</code>
<div class="block">
<code>ORB.register_initial_reference</code>
</div> </td>
</tr>
<tr class="altColor" id="i8">
<td class="colFirst"><code>void</code></td>
<td class="colLast"><code><span class="memberNameLink"><a href="../../../org/omg/PortableInterceptor/ORBInitInfoOperations.html#register_policy_factory-int-org.omg.PortableInterceptor.PolicyFactory-">register_policy_factory</a></span>(int type, <a href="../../../org/omg/PortableInterceptor/PolicyFactory.html" title="interface in org.omg.PortableInterceptor">PolicyFactory</a> policy_factory)</code>
<div class="block">
注册一个
<code>PolicyFactory</code>对于给定
<code>PolicyType</code>
</div> </td>
</tr>
<tr class="rowColor" id="i9">
<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/PortableInterceptor/ORBInitInfoOperations.html#resolve_initial_references-java.lang.String-">resolve_initial_references</a></span>(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id)</code>
<div class="block">
相同于
<code>ORB.resolve_initial_references</code>
</div> </td>
</tr>
</tbody>
</table> </li>
</ul> </li>
</ul>
</div>
<div class="details">
<ul class="blockList">
<li class="blockList">
<!-- ============ METHOD DETAIL ========== -->
<ul class="blockList">
<li class="blockList"><a name="method.detail">
<!-- --> </a> <h3>方法详细信息</h3> <a name="arguments--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>arguments</h4> <pre><a href="../../../java/lang/String.html" title="class in java.lang">String</a>[] arguments()</pre>
<div class="block">
<span>返回传递给<code>ORB.init</code></span>
<span>它们可能包含也可能不包含ORB的参数。</span>
</div> </li>
</ul> <a name="orb_id--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>orb_id</h4> <pre><a href="../../../java/lang/String.html" title="class in java.lang">String</a> orb_id()</pre>
<div class="block">
返回正在初始化的ORB的ID。
</div> </li>
</ul> <a name="codec_factory--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>codec_factory</h4> <pre><a href="../../../org/omg/IOP/CodecFactory.html" title="interface in org.omg.IOP">CodecFactory</a> codec_factory()</pre>
<div class="block">
<span>返回<code>IOP.CodecFactory</code></span>
<span>所述<code>CodecFactory</code>通常通过调用获得<code>ORB.resolve_initial_references( "CodecFactory" )</code> 但由于ORB为尚未提供和拦截器特别是处理服务上下文时将需要一个<code>Codec</code> ,获得的一种手段<code>Codec</code> ORB初始化期间是必要的。</span>
</div> </li>
</ul> <a name="register_initial_reference-java.lang.String-org.omg.CORBA.Object-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>register_initial_reference</h4> <pre>void register_initial_reference(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id,
<a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> obj)
throws <a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">InvalidName</a></pre>
<div class="block">
<span><code>ORB.register_initial_reference</code></span>
<span>这里存在同样的功能因为尚未完全初始化的ORB尚不可用但初始引用可能需要注册为Interceptor注册的一部分。</span>
<span>唯一的区别是ORB上的此操作版本使用PIDL <code>CORBA.ORB.ObjectId</code> )和( <code>CORBA.ORB.InvalidName</code> 而此接口中的版本使用此接口中定义的IDL;</span>
<span>语义是相同的。</span>
</div>
<dl>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">InvalidName</a></code>
</dd>
</dl> </li>
</ul> <a name="resolve_initial_references-java.lang.String-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>resolve_initial_references</h4> <pre><a href="../../../org/omg/CORBA/Object.html" title="interface in org.omg.CORBA">Object</a> resolve_initial_references(<a href="../../../java/lang/String.html" title="class in java.lang">String</a> id)
throws <a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">InvalidName</a></pre>
<div class="block">
<span>相同于<code>ORB.resolve_initial_references</code></span>
<span>这里存在同样的功能因为尚未完全初始化的ORB尚不可用但ORB中可能需要初始引用作为Interceptor注册的一部分。</span>
<span>唯一的区别是ORB上的此操作的版本使用PIDL <code>CORBA::ORB::ObjectId</code><code>CORBA::ORB::InvalidName</code> 而此接口中的版本使用此接口中定义的IDL;</span>
<span>语义是相同的。</span>
<p> <span>此操作仅在post_init期间有效。</span> </p>
</div>
<dl>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code><a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/InvalidName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">InvalidName</a></code>
</dd>
</dl> </li>
</ul> <a name="add_client_request_interceptor-org.omg.PortableInterceptor.ClientRequestInterceptor-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>add_client_request_interceptor</h4> <pre>void add_client_request_interceptor(<a href="../../../org/omg/PortableInterceptor/ClientRequestInterceptor.html" title="interface in org.omg.PortableInterceptor">ClientRequestInterceptor</a> interceptor)
throws <a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">DuplicateName</a></pre>
<div class="block">
用于将客户端请求Interceptor添加到客户端请求拦截器列表中。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>interceptor</code> - 要添加的
<code>ClientRequestInterceptor</code>
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code>DuplicateName</code> - 如果客户端请求拦截器已经使用此拦截器的名称注册,则抛出。
</dd>
</dl> </li>
</ul> <a name="add_server_request_interceptor-org.omg.PortableInterceptor.ServerRequestInterceptor-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>add_server_request_interceptor</h4> <pre>void add_server_request_interceptor(<a href="../../../org/omg/PortableInterceptor/ServerRequestInterceptor.html" title="interface in org.omg.PortableInterceptor">ServerRequestInterceptor</a> interceptor)
throws <a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">DuplicateName</a></pre>
<div class="block">
用于将服务器端请求拦截器添加到服务器端请求拦截器列表中。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>interceptor</code> - 要添加的ServerRequestInterceptor。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code>DuplicateName</code> - 如果服务器端请求Interceptor已经使用此拦截器的名称注册则抛出
</dd>
</dl> </li>
</ul> <a name="add_ior_interceptor-org.omg.PortableInterceptor.IORInterceptor-">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>add_ior_interceptor</h4> <pre>void add_ior_interceptor(<a href="../../../org/omg/PortableInterceptor/IORInterceptor.html" title="interface in org.omg.PortableInterceptor">IORInterceptor</a> interceptor)
throws <a href="../../../org/omg/PortableInterceptor/ORBInitInfoPackage/DuplicateName.html" title="class in org.omg.PortableInterceptor.ORBInitInfoPackage">DuplicateName</a></pre>
<div class="block">
用于将IOR Interceptor添加到IOR拦截器列表中。
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>interceptor</code> - 要添加的IORInterceptor。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code>DuplicateName</code> - 如果IOR Interceptor已经使用此拦截器的名称注册则抛出。
</dd>
</dl> </li>
</ul> <a name="allocate_slot_id--">
<!-- --> </a>
<ul class="blockList">
<li class="blockList"> <h4>allocate_slot_id</h4> <pre>int allocate_slot_id()</pre>
<div class="block">
<span>呼叫在<code>PortableInterceptor.Current</code>上分配一个时隙。</span>
<p> <span>请注意虽然槽号可以在ORB初始化程序中分配但槽本身不能被初始化。</span> </p>
</div>
<dl>
<dt>
<span class="returnLabel">结果</span>
</dt>
<dd>
已分配的插槽的索引。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code>BAD_INV_ORDER</code> -抛出以14标准次要代码如果
<code>set_slot</code>
<code>get_slot</code>被称为在
<code>PICurrent</code>的ORB初始化内。
</dd>
<dt>
<span class="seeLabel">另请参见:</span>
</dt>
<dd>
<span><a href="../../../org/omg/PortableInterceptor/Current.html" title="在org.omg.PortableInterceptor中的接口"><code>Current</code></a></span>
</dd>
</dl> </li>
</ul> <a name="register_policy_factory-int-org.omg.PortableInterceptor.PolicyFactory-">
<!-- --> </a>
<ul class="blockListLast">
<li class="blockList"> <h4>register_policy_factory</h4> <pre>void register_policy_factory(int type,
<a href="../../../org/omg/PortableInterceptor/PolicyFactory.html" title="interface in org.omg.PortableInterceptor">PolicyFactory</a> policy_factory)</pre>
<div class="block">
注册一个
<code>PolicyFactory</code>为给定的
<code>PolicyType</code>
</div>
<dl>
<dt>
<span class="paramLabel">参数</span>
</dt>
<dd>
<code>type</code> - 给定的
<code>PolicyFactory</code>服务的策略类型。
</dd>
<dd>
<code>policy_factory</code> - 给定政策类型的工厂。
</dd>
<dt>
<span class="throwsLabel">异常</span>
</dt>
<dd>
<code>BAD_INV_ORDER</code> - thrown, with a standard minor code of 16, if a
<code>PolicyFactory</code> already exists for the given
<code>PolicyType</code>.
</dd>
</dl> </li>
</ul> </li>
</ul> </li>
</ul>
</div>
</div>