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 接 收 器 接 口 和 管 理 器服 务 解 析 器 接 收 器此 接 收 器 用 于 安 装 以 后 可 以 动 态 装 载 的 用 户 服 务 。Java: public interface ServiceResolverInterceptor {public org.omg.CORBA.Object resolve (java.lang.Strng name):}public interface ServiceResolverInterceptorManager extendscom.inprise.vbroker.interceptor.InterceptorManager {public void add (java.lang.String name,com.inprise.vbroker.interceptor.ServiceResolverInterceptor \interceeptor) ;pubic void remove (java.lang.String name):}调 用 resolve_initial_references 时 , 所 有 已 安 装 服 务 上 的 解 析 过 程 会 被 调 用 。 解析 过 程 接 着 返 回 适 当 的 对 象 。要 编 写 服 务 初 始 化 程 序 , 必 须 在 通 过 取 得 InterceptorManagerControl 使 自 己 能 够添 加 服 务 之 后 获 得 ServiceResolver。默 认 接 收 器 类Java:<strong>VisiBroker</strong> <strong>Edition</strong> 提 供 可 扩 展 和 实 现 的 默 认 接 收 器 Java 类 。 这 些 默 认 接 收 器 类提 供 的 方 法 与 接 收 器 接 口 相 同 , 但 是 , 在 扩 展 默 认 接 收 器 类 时 , 可 以 选 择 要 实 现 或忽 略 的 方 法 。 使 用 这 些 类 时 , 可 以 接 受 这 这 些 类 提 供 的 默 认 行 为 , 也 可 以 更 改 。● DefaultBindInterceptor 类● DefaultClientInterceptor 类● DefaultServerInterceptor 类向 <strong>VisiBroker</strong> <strong>Edition</strong> ORB 注 册 接 收 器每 个 接 收 器 接 口 都 对 应 一 个 接 收 器 管 理 器 接 口 , 该 接 口 用 于 向 <strong>VisiBroker</strong><strong>Edition</strong> ORB 注 册 自 己 的 接 收 器 对 象 。 以 下 为 注 册 接 收 器 必 须 经 过 的 步 骤 :1 通 过 使 用 “<strong>VisiBroker</strong>InterceptorControl” 参 数 调 用 ORB 对 象 上 的resolve_initial_references 方 法 向 InterceptorManagerControl 对 象 赋 予引 用 。2 使 用 下 表 中 一 个 字 符 串 值 调 用 InterceptorManagerControl 对 象 上 的get_manager 方 法 ( 下 表 所 示 为 要 传 递 给 InterceptorManagerControl 对 象get_manager 方 法 的 字 符 串 值 )。( 一 定 要 将 对 象 引 用 造 型 成 为 相 应 的 接 收 器管 理 器 接 口 。)表 21.1InterceptorManagerControl 对 象 的 字 串 值值ClientRequestBind对 应 的 接 收 器 接 口ClientRequestInterceptorBindInterceptor使 用 4.x 接 收 器 21-5

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

Saved successfully!

Ooh no, something went wrong!