19.2.3 IORインタセプタ

<この項の構成>
(1) IORInterceptor

(1) IORInterceptor

IORInterceptorは,クライアント側のBorland Enterprise Server VisiBroker ORBサービスインプリメンテーションが正しく機能できるように,サーバまたはオブジェクトのORBサービス関連機能を説明する情報をオブジェクトリファレンスに追加する機能をアプリケーションに提供します。これは,インタセプトポイントestablish_componentsを呼び出すことによって提供されます。IORInfoのインスタンスは,インタセプトポイントに渡されます。IORInfoの詳細については,マニュアル「Borland Enterprise Server VisiBroker プログラマーズリファレンス」の「IORInfo」の記述を参照してください。

コードサンプル19-7 IORInterceptorクラス(C++)

class _VISEXPORT IORInterceptor:public virtual Interceptor
{
  public:
     virtual void establish_components(IORInfo_ptr _info)=0;
     virtual void components_established(IORInfo_ptr _info)=0;
     virtual void adapter_manager_state_changed(
        CORBA::Long _id,CORBA::Short _state)=0;
     virtual void adapter_state_changed(
        const ObjectReferenceTemplateSeq&_templates,
        CORBA::Short _state)=0;
};

コードサンプル19-8 IORInterceptorインタフェース(Java)

package org.omg.PortableInterceptor;

public interface IORInterceptor
  extends Interceptor,org.omg.CORBA.portable.IDLEntity,
       org.omg.CORBA.LocalInterface
{
    public void establish_components(IORInfo info);
    public void components_established(IORInfo info);
    public void adapter_manager_state_changed(int id,short state);
    public void adapter_state_changed(
         ObjectReferenceTemplate[ ] templates, short state);
}