JavaTM 2 Platform
Standard Ed. 5.0

类 org.omg.PortableServer.Servant
的使用

使用 Servant 的软件包
org.omg.CosNaming 为 Java IDL 提供命名服务。 
org.omg.PortableServer 提供一些类和接口,用来生成跨多个供应商 ORB 的可移植应用程序的服务器端。 
org.omg.PortableServer.portable 提供一些类和接口,用来生成跨多个供应商 ORB 的可移植应用程序的服务器端。 
 

org.omg.CosNamingServant 的使用
 

org.omg.CosNamingServant 的子类
 class BindingIteratorPOA
          BindingIterator 接口允许客户端使用 next_one 或 next_n 操作迭代绑定。
 class NamingContextExtPOA
          NamingContextExtNamingContext(它包含一组名称绑定,在这些名称绑定中,每个名称都是唯一的)的扩展,并且是互操作命名服务 (Interoperable Naming Service) 的一部分。
 class NamingContextPOA
          命名上下文是包含一组名称绑定的对象,在这些名称绑定中,每个名称都是唯一的。
 

org.omg.PortableServerServant 的使用
 

org.omg.PortableServerServant 的子类
 class DynamicImplementation
          允许动态处理对象调用。
 class ServantActivatorPOA
          POA 具有 RETAIN 策略时使用 ServantActivator 这种 servant 管理器。
 class ServantLocatorPOA
          POA 具有 NON_RETAIN 策略时使用 ServantLocator 这种 servant 管理器。
 

返回 Servantorg.omg.PortableServer 中的方法
 Servant POAOperations.get_servant()
          此操作返回与 POA 关联的默认 servant。
 Servant POAOperations.id_to_servant(byte[] oid)
          如果 POA 具有 RETAIN 策略并且指定的 ObjectId 存在于 Active Object Map 中,则此操作返回与 Active Object Map 中该对象关联的 servant。
 Servant _ServantActivatorStub.incarnate(byte[] oid, POA adapter)
          假定 POA 具有 USE_SERVANT_MANAGER 和 RETAIN 策略,则只要 POA 收到对当前未激活对象的请求,它就会调用此操作。
 Servant ServantActivatorOperations.incarnate(byte[] oid, POA adapter)
          假定 POA 具有 USE_SERVANT_MANAGER 和 RETAIN 策略,则只要 POA 收到针对当前未激活对象的请求,它就会调用此操作。
 Servant _ServantLocatorStub.preinvoke(byte[] oid, POA adapter, String operation, CookieHolder the_cookie)
          此操作用来获取一个 servant,该 servant 将用来处理导致调用 preinvoke 的请求。
 Servant ServantLocatorOperations.preinvoke(byte[] oid, POA adapter, String operation, CookieHolder the_cookie)
          此操作用来获取一个 servant,该 servant 将用来处理导致预调用 preinvoke 的请求。
 Servant POAOperations.reference_to_servant(Object reference)
          如果 POA 具有 RETAIN 策略并且指定的对象存在于 Active Object Map 中,则此操作返回与 Active Object Map 中该对象关联的 servant。
 

参数类型为 Servantorg.omg.PortableServer 中的方法
 void POAOperations.activate_object_with_id(byte[] id, Servant p_servant)
          此操作将指定 Object Id 与指定 servant 之间的关联输入 Active Object Map。
 byte[] POAOperations.activate_object(Servant p_servant)
          此操作生成一个 Object Id,并将该 Object Id 和指定的 servant 输入 Active Object Map。
 void _ServantActivatorStub.etherealize(byte[] oid, POA adapter, Servant serv, boolean cleanup_in_progress, boolean remaining_activations)
          假定 POA 具有 USE_SERVANT_MANAGER 和 RETAIN 策略,则只要停用对象的 servant 就会调用此操作。
 void ServantActivatorOperations.etherealize(byte[] oid, POA adapter, Servant serv, boolean cleanup_in_progress, boolean remaining_activations)
          假定 POA 具有 USE_SERVANT_MANAGER 和 RETAIN 策略,则只要取消激活对象的 servant 就会调用此操作。
 void _ServantLocatorStub.postinvoke(byte[] oid, POA adapter, String operation, Object the_cookie, Servant the_servant)
          servant 完成请求时都将调用此操作。
 void ServantLocatorOperations.postinvoke(byte[] oid, POA adapter, String operation, Object the_cookie, Servant the_servant)
          servant 完成请求时都将调用此操作。
 byte[] POAOperations.servant_to_id(Servant p_servant)
          此操作有四种可能的行为。
 Object POAOperations.servant_to_reference(Servant p_servant)
          如果在此 POA 指派的操作的上下文外调用此操作,则需要 RETAIN 策略以及 UNIQUE_ID 或 IMPLICIT_ACTIVATION 策略之一。
 void POAOperations.set_servant(Servant p_servant)
          此操作在 POA 中将指定的 servant 注册为默认 servant。
 

org.omg.PortableServer.portableServant 的使用
 

参数类型为 Servantorg.omg.PortableServer.portable 中的方法
 POA Delegate.default_POA(Servant Self)
          此方法的默认行为是从关联 servant 的 ORB 实例返回根 POA。
 Object Delegate.get_interface_def(Servant self)
          此操作返回接口 Repository 中的一个对象,该对象提供可能对编程有用的类型信息。
 boolean Delegate.is_a(Servant Self, String Repository_Id)
          此方法查看指定的 repid 是否存在于 _all_interfaces() 返回的列表上,或者该 repid 是否是通用 CORBA 对象的存储库 id。
 boolean Delegate.non_existent(Servant Self)
          此操作用来检查 Object 是否存在。
 byte[] Delegate.object_id(Servant Self)
          方法 _object_id() 等效于调用 PortableServer::Current::get_object_id。
 ORB Delegate.orb(Servant Self)
          返回当前关联 Servant 的 ORB 实例的便捷方法。
 POA Delegate.poa(Servant Self)
          method _poa() 等效于调用 PortableServer::Current:get_POA。
 Object Delegate.this_object(Servant Self)
          此方法允许 servant 获取为请求实现的目标 CORBA 对象的对象引用。
 


JavaTM 2 Platform
Standard Ed. 5.0

提交错误或意见
有关更多的 API 参考资料和开发人员文档,请参阅 Java 2 SDK SE 开发人员文档。该文档包含更详细的、面向开发人员的描述,以及总体概述、术语定义、使用技巧和工作代码示例。

版权所有 2004 Sun Microsystems, Inc. 保留所有权利。 请遵守许可证条款。另请参阅文档重新分发政策