12.07.2015 Views

VisiBroker Edition

VisiBroker Edition

VisiBroker Edition

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

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

同 时 使 用 可 移 植 和 4.x 接 收 器成 功 与 否 。 同 样 , 在 ServerInterceptor 中 , 调 用 preinvoke 之 前 也 会 创 建 一 个 新Closure (Java), 而 且 该 Closure (Java) 会 用 于 与 处 理 该 特 定 请 求 相 关 的 所 有 接收 器 。有 关 如 何 使 用 Closure (Java) 的 实 例 , 请 参 见 <strong>VisiBroker</strong> <strong>Edition</strong> 安 装 目 录 下examples 目 录 中 的 interceptors/client_server 目 录 。Closure (Java) 对 象 可 以 被 抛 投 到 ExtendedClosure (Java), 从 而 获 得response_expected 和 request_id, 如 下 所 示 :Java: int my response_expected =((ExtendedClosure)closure).reqInfo.response_expected;int my request_id = ((ExtendedClosure)closure) .reqInfo.request_id;同 时 使 用 可 移 植 和 4.x 接 收 器可 移 植 接 收 器 和 4.x 接 收 器 可 以 随 <strong>VisiBroker</strong> <strong>Edition</strong> ORB 同 时 安 装 。 但 是 , 由于 两 者 的 实 现 不 同 , 因 此 , 在 同 时 使 用 两 种 接 收 器 时 , 开 发 者 需 要 理 解 几 种 流 规 则和 限 制 。拦 截 点 调 用 的 顺 序拦 截 点 调 用 顺 序 遵 循 各 个 版 本 接 收 器 的 拦 截 点 排 序 规 则 , 而 不 管 实 际 上 开 发 者 是 否选 择 安 装 哪 个 版 本客 户 端 接 收 器可 移 植 和 <strong>VisiBroker</strong> 客 户 端 接 收 器 同 时 安 装 时 , 事 件 的 顺 序 ( 假 设 没 有 接 收 器 抛投 违 例 事 件 ) 如 下 :1 send_request ( 可 移 植 接 收 器 ), 其 后 是 preinvoke_premarshal (4.x 接 收 器 )2 构 建 请 求 信 息3 preinvoke_postmarshal (4.x 接 收 器 )4 发 出 请 求 信 息 并 等 待 回 答5 postinvoke (4.x 接 收 器 ), 其 后 是 received_reply/receive_exception/receive_other ( 可 移 植 接 收 器 ), 取 决 于 回 答 的 类 型 。服 务 器 端 接 收 器同 时 安 装 可 移 植 和 <strong>VisiBroker</strong> 服 务 器 端 接 收 器 时 , 收 到 ( 定 位 请 求 不 会 击 发 接 收器 , 这 与 <strong>VisiBroker</strong> 的 行 为 相 同 ) 的 事 件 顺 序 ( 假 设 没 有 接 收 器 抛 投 违 例 事 件 )如 下 :1 received_request_service_contexts ( 可 移 植 接 收 器 ), 其 后 是 preinvoke(4.x 接 收 器 )21-14 <strong>VisiBroker</strong> 开 发 者 指 南

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

Saved successfully!

Ooh no, something went wrong!