欢迎来到天天文库
浏览记录
ID:38317778
大小:438.50 KB
页数:58页
时间:2019-06-09
《高级软件工程(IR、POA)》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、6、接口池(InterfaceRepository:IR)接口池是ORB的构件提供一致的接口定义存储机制管理和提供对OMGIDL所指定对象定义集合的访问1内容概述IR的范围实现相关性概念与原理IR接口接口池2(1)概述ORB提供对对象集合的分布式访问方法是使用OMGIDL中指定的对象公共定义接口接口池为相关对象的接口定义集合提供存储、分布和管理ORB可以使用两种形式的对象定义:通过将信息从过程上合并到stub程序中例如,作为将C语言子程序映射到通讯协议中的代码通过动态可访问的接口池访问到例如,作为通过特定于OMGIDL接口访问的“接口对象”接口池3ORB可以使用在接口池中维护的对象定
2、义解释和处理请求中提供的值:提供请求签名的类型检查(请求是否通过DII或stub发出的)帮助检查接口继承关系的正确性帮助提供不同ORB实现之间的互操作性由于接口池中所维护对象定义的接口是公共的因此客户和服务也可以使用Repository中维护的信息例如,Repository可用于:管理接口定义的安装和分布提供CASE环境的构件(例如,接口浏览器)提供语言绑定的接口信息(例如编译器)提供最终用户环境的构件(例如,菜单栏构造器)接口池4(2)IR的范围接口对象作为一组对象在接口池中维护可以通过一组特定于OMGIDL接口定义访问它们接口定义包含它支持的操作描述,包括参数类型、例外和它可以使
3、用的环境信息此外,接口池还存储常量值它可以用在其它接口定义中或者仅仅为方便程序员而定义接口池还存储typecode,这是以结构化术语描述类型的值接口池5接口池使用模块作为组织接口的方式并且根据名称查找这些组织模块可以包含常量、类型定义、例外情况、接口定义和其它模块例如,模块可以对应于OMGIDL定义的组织它们也可以用于代表为管理和其它用途定义的组织接口池是代表其中信息的一组对象它们是在该透明对象结构上运作的操作具体实现可以选择这些对象是否永久存在或者在repository上的操作引用时创建也可以有有效提取信息的操作获得描述整个接口或整个操作的信息块接口池6ORB可以访问多个接口池原因
4、:两个ORB对接口池的实现有不同的要求对象实现(例如OODB)希望提供它自己的类型信息或者它希望将不同的附加信息存储在不同的repository中使用typecode和repository标识符的目的是允许不同的repository保持它们自己的信息一致接口池7接口池8接口池信息的一个关键用途是将ORB连接在一起当对象在请求中从一个ORB传到另一个ORB时可能有必要创建新对象代表接收ORB中的传送对象这可能需要在接收ORB的接口池中找到接口信息通过从发送ORB的repository中获取repository标识符可以在接收ORB的repository中查找接口为成功操作,该对象的接口
5、必须同时安装在两个repository中并且有相同的repository标识符接口池9(3)实现相关性接口池中的实现需要某些形式的永久对象存储通常永久对象存储类型用于决定接口定义如何分布和/或在网络域中复制如果使用文件系统提供对象存储那么在单个机器上可能只有一组接口的唯一副本如果使用OODB提供对象存储那么可以维护接口定义的多个副本每个副本都分布在几台机器上以提供高可用性和负载平衡接口池10接口池包含允许程序在运行时确定和处理类型信息的信息程序可以尝试在任何时候通过对象引用上的get_interface访问接口池一旦信息已经安装在repository中那么程序、stub和对象可以使用
6、它对象repository的更新必须小心以避免破坏环境在更新接口池时某些接口池可能使用ObjectServices定义的事务和并发控制例如,支持TransactionService的repository将继承Repository接口它包括更新操作Transaction接口它包含事务管理操作接口池11(4)接口池接口元素名称和标识类型和类型码接口对象IR的结构与导航接口池12名称和标识简单名称在接口池中没有必要是唯一的它们通常与显式或隐式的模块有关在该环境中,接口定义通常被认为是显式模块限定范围的名称唯一地标识接口池中的模块、接口、常量、类型定义、例外情况、属性和操作repositor
7、y标识符全局地表示模块、接口、常量、类型定义、例外情况、属性和操作它们可以用于同步多个ORB和Repository上的定义接口池13类型和类型码(TypeCode)类型码是标识调用参数类型与属性类型的值可以确定类型的完整结构可以从IR或IDL编译器中获得类型码具有多种用途:在DII中,被用于指示实际参数的类型由IR使用,表示作为许多OMGIDL声明中一部分的类型规约它们对于any类型的语义极为关键抽象地讲,类型码包含一个“kind”域以及适于该Kind的参
此文档下载收益归作者所有