12.07.2015 Views

VisiBroker Edition

VisiBroker Edition

VisiBroker Edition

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

AccountManagerImpl *managerServant = new AccountManagerImp;// 确 定 服 务 对 象 IDPortableServer::ObjectId_var managerId =PortableServer::string_to_ObjectId("BankManager");// 用 myPOA 上 的 ID 激 活 服 务 对 象myPOA->activate_object_with_id(managerId,managerServant);在 Java 下 定 义 和 激 活 服 务 对 象 :手 动 移 植 BOA 到 POAJava:// 创 建 服 务 对 象AccountManagerImpl managerServant = new AccountManagerImpl();// 确 定 服 务 对 象 IDbyte[] managerId = "BankManager".getBytes();// 用 myPOA 上 的 ID 激 活 服 务 对 象myPOA.activate_object_with_id(managerId, managerServant);激 活 POA 管 理 器C++:Java:POA 管 理 器 是 控 制 POA 如 何 处 理 请 求 的 对 象 在 默 认 的 情 况 下 ,POA 管 理 器 被 创建 为 保 持 状 态 。 在 该 状 态 下 , 所 有 的 请 求 都 被 送 到 一 个 保 持 队 列 中 而 不 作 处 理 。 要允 许 将 请 求 发 出 , 与 POA 相 关 联 的 POA 管 理 器 必 须 从 保 持 状 态 变 为 活 动 状 态 。这 是 POA 所 要 求 的 一 个 新 步 骤 。 BOA 中 没 有 与 它 相 当 的 步 骤 。rootPOA->the_POAManager()->activate();rootPOA.the_POAManager().activate();等 待 进 入 的 请 求C++:Java:在 BOA 下 , 我 们 调 用 impl_is_ready() 以 等 待 从 客 户 端 来 的 请 求 。 在 POA 下 ,使 用 C++ orb->run() 或 Java orb.run()。orb->run();orb.run()查 看 C++ 下 的 其 它 类 或 Java 下 的 其 它 文 件AccountImpl 和 AccountManagerImpl 类 的 变 更 相 当 简 单 。 大 部 分 的 变 化 涉 及 指 向新 类 。移 植 <strong>VisiBroker</strong> 代 码 30-7

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!