Hitachi

VisiBroker Version 5 Borland(R) Enterprise Server VisiBroker(R) プログラマーズリファレンス


25.4 OAD

class Activation::OAD : public virtual CORBA::Object

OADクラスは,OADへのアクセスを提供します。管理ツールは,オブジェクトのリスティング,登録,再登録をするときにOADクラスを使用します。OADのプログラム的管理のためにクライアントコードで使用することもできます。

コードサンプル25-1 OAD IDL
module Activation {
    interface OAD {
      extension::CreationImplDef create_CreationImplDef();
 
      Object reg_implementation(
            in extension::CreationImplDef impl)
          raises(DuplicateEntry, InvalidPath);
 
      extension::CreationImplDef get_implementation(
            in CORBA::RepositoryId repId,
            in CORBA::RepositoryId repId,
            in string object_name)
          raises(NotRegistered);
 
      void change_implementation(
            in extension::CreationImplDef old_info,
            in extension::CreationImplDef new_info)
          raises(NotRegistered, InvalidPath, IsActive);
 
      attribute boolean destroy_on_unregister;
 
      void unreg_implementation(
            in CORBA::RepositoryId repId,
            in string object_name)
          raises(NotRegistered);
 
      void unreg_interface(in CORBA::RepositoryId repId)
          raises(NotRegistered);
 
      void unregister_all();
 
      ImplementationStatus get_status(
            in CORBA::RepositoryId repId,
            in string object_name)
          raises(NotRegistered);
 
      ImplStatusList get_status_interface(
            in CORBA::RepositoryId repId)
          raises(NotRegistered);
 
      ImplStatusList get_status_all();
 
      Object lookup_interface(
            in CORBA::RepositoryId repId, 
            in long timeout)
          raises(NotRegistered, FailedToExecute, 
                 NotResponding, Busy);
 
      Object lookup_implementation(
            in CORBA::RepositoryId repId, 
            in string object_name, in long timeout)
          raises(NotRegistered, FailedToExecute, 
                 NotResponding, Busy);
 
      extension::CreationImplDef boa_active_obj(
            in Object obj, in string repository_id, 
            in long unique_id)
          raises(NotRegistered);
 
      void boa_deactive_obj(in Object obj, 
            in string repository_id, 
            in long unique_id)
          raises(NotRegistered);
 
    string generated_command(
             in extension::CreationImplDef impl);
 
    string generated_environment(
             in extension::CreationImplDef impl);
 
    };
};
〈この節の構成〉