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.

使 用 服 务 质 量策 略 门 限 和 有 效 策 略有 效 策 略 指 的 是 在 所 有 适 用 的 策 略 门 限 被 应 用 之 后 , 可 用 于 请 求 的 策 略 。 有 效 策 略可 以 通 过 比 较 由 IOR 指 定 的 策 略 和 有 效 的 门 限 来 确 定 。 有 效 策 略 是 有 效 的 门 限 所允 许 的 值 和 IOR 指 定 的 Policy 的 交 集 。 如 果 该 交 集 为 空 集 , 则 会 有 一 个org.omg.CORBA.INV_POLICY 违 例 出 现 。QoS 界 面以 下 的 界 面 可 用 以 取 得 和 设 定 QoS 策 略 。C++ CORBA::Object, 或Java org.omg.CORBA.ObjectCORBA::Object (C++) 和 org.omg.CORBA.Object (Java) 包 含 以 下 用 于 取 得 有 效 策略 和 取 得 或 设 定 策 略 门 限 的 方 法 。● _get_policy 为 对 象 引 用 返 回 有 效 策 略 。● _set_policy_override 返 回 一 个 新 的 对 象 引 用 和 所 要 求 的 对 象 级 上 的 Policy 门限 列 表 。C++ CORBA::Object, 或Java com.inprise.vbroker.CORBA.Object (Borland)仅 适 用 于 Java:为 了 使 用 这 一 界 面 , 您 必 须 将 org.omg.CORBA.Object 造 型 为com.inprise.vbroker.CORBA.Object。 因 为 这 一 界 面 是 从 org.omg.CORBA.Object 派生 的 , 除 了 org.omg.CORBA.Object 中 所 定 义 的 方 法 之 外 , 以 下 的 方 法 也 是 可 用 的 。● _get_client_policy 为 对 象 引 用 返 回 有 效 的 Policy , 而 无 须 与 服 务 器 端 的 策 略产 生 交 集 。 有 效 门 限 是 通 过 以 下 方 式 取 得 的 : 首 先 检 查 对 象 级 上 指 定 的 门 限 , 然后 检 查 线 程 级 上 指 定 的 门 限 , 最 后 检 查 <strong>VisiBroker</strong> ORB 级 上 指 定 的 门 限 。 如果 未 给 所 要 求 的 PolicyType 指 定 门 限 , 则 使 用 PolicyType 的 系 统 默 认 值 。● _get_policy_overrides 返 回 对 象 级 上 设 置 的 指 定 的 策 略 类 型 的 Policy 门 限 清单 。 如 果 所 指 定 的 序 列 为 空 , 则 对 象 级 上 的 所 有 门 限 都 将 被 返 回 。 如 果 在 对 象 级上 没 有 PolicyTypes 被 覆 盖 , 则 返 回 一 个 空 序 列 。● _validate_connection 根 据 对 象 的 当 前 有 效 策 略 是 否 允 许 调 用 , 返 回 一 个 布 尔值 。 如 果 对 象 引 用 未 限 制 , 则 会 出 现 一 个 限 制 。 如 果 对 象 引 用 已 限 制 , 但 当 前 的策 略 门 限 已 发 生 了 变 化 , 或 该 限 制 已 不 再 有 效 , 则 不 论 RebindPolicy 门 限 设 置如 何 , 都 将 尝 试 重 新 限 制 。 如 果 当 前 的 有 效 策 略 引 发 一 个 INV_POLICY 违 例 , 则会 出 现 一 个 false 返 回 值 。 如 果 当 前 的 有 效 策 略 不 兼 容 , 则 返 回 一 个 罗 列 不 兼 容策 略 的 PolicyList 类 型 序 列 。客 户 基 础 10-9

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

Saved successfully!

Ooh no, something went wrong!