当前位置: 首页 > 专利查询>微软公司专利>正文

利用合成容器的协作环境项目可扩展性制造技术

技术编号:7167293 阅读:241 留言:0更新日期:2012-04-11 18:40
通过集成开发环境内的托管可扩展性框架中的合成容器提供了动态协作项目可扩展性。使用扩展工件工厂以获取合成容器内的扩展工件,来扩展基于浏览器的协作环境项目。可以利用自定义动作配置类库项目,可以创建表示自定义动作的基于浏览器的协作环境项目扩展工件,然后可以创建带有供在合成容器内发现的出口属性的项目扩展工件的工厂类。

【技术实现步骤摘要】
【国外来华专利技术】利用合成容器的协作环境项目可扩展性
技术介绍
可以给协作环境提供计算机联网技术,该技术协助在地理上分开的人之间的通信。可以通过电子邮件讨论列表、电话会议工具、以及诸如例如可批注的博客以及Wiki之类的共享文档来进行协作通信。协作环境可以是基于浏览器的。即,在协作环境中所提供的一个或多个应用程序可以被人类用户通过他们的web浏览器进行访问。在一些配置中,web浏览器可以由一个或多个插件来增强;web浏览器所访问的功能也可以由对web服务器作出的更改来增强。除向联网的工具提供图形用户界面之外,web浏览器可以访问由协作环境的底层网络基础结构中的一个或多个服务器主存的协作服务。在一些协作环境中,诸如文字处理程序或电子表格之类的应用程序访问协作环境web服务,以访问共享存储中的数据。
技术实现思路
一些实施例通过合成容器提供动态协作项目可扩展性,从而允许超出插件的能力之外的协作运行时灵活性。例如,可以使用扩展工件(artifact)工厂来扩展基于浏览器的协作环境项目,以在合成容器内获取基于浏览器的协作环境项目扩展工件的一个或多个实例。项目可以是诸如微软SiarePoint 环境之类的协作环境的扩展;项目系统可扩展性可以使a^rePoint 开发环境更加灵活。在某些实施例中,利用自定义动作来配置项目,创建表示该自定义动作的基于浏览器的协作环境项目扩展工件,然后创建带有出口属性的项目扩展工件的工厂类,该出口属性使得它在合成容器之外可见。在某些实施例中,开发人员为协作环境中的多个工件类型中的每一个添加扩展。在某些实施例中,定位协作项目工厂, 并将其用于标识协作项目扩展工件工厂,然后使用该协作项目扩展工件工厂来在联网的计算系统中的合成容器中创建协作项目扩展工件的实例。所给出的示例只是说明性的。本
技术实现思路
并不旨在标识出所要求保护的主题的关键特征或必要特征,也不旨在用于限定所要求保护的主题的范围。相反地,提供本概述是为了以简化的形式介绍将在以下详细描述中进一步描述的一些概念。本专利技术由权利要求书限定,在本
技术实现思路
与权利要求书有冲突的情况下,应该以权利要求书为准。附图描述将参考附图给出更具体的描述。这些附图只示出了选定的方面,且因此不完全确定覆盖或范围。附图说明图1是示出一计算机系统并且还示出已配置存储介质实施例的框图,该计算机系统具有至少一个处理器、至少一个存储器、用于运行一个或多个应用程序的至少一个浏览器、以及可以存在于多个网络节点上的操作环境中的其他项;图2是示出了与提供合成容器管理的集成开发环境结合在一起的协作项目可扩展性的体系结构的框图;图3是示出了一个示例体系结构中的项目扩展初始化的数据流程图;以及图4是示出了一些方法的各步骤和已配置存储介质实施例的流程图。具体实施例方式概览协作环境提供促进人之间的交互的工具,而不管他们在地理上是分开的。微软在 SharePoint 商标下提供了一系列协作环境,包括例如,促进工作组协作和文档创建以及管理、会议和事件调度和通知、项目管理、以及在计算机用户之间传输消息的技术和工具。 在一些配置中,微软SiarePoint⑧技术允许一个组在不专门要求web开发的情况下配置网站的门户和分层结构,这有助于人们在基于浏览器的环境中对信息进行查找、创建、收集、 组织、以及协作。可以根据每个人的希望来对信息的各集合的视图进行过滤、分组、和/或排序。可以构建各种许可以反映例如每个人的组织角色、团队成员资格、或兴趣。然而,由独立软件提供商所提供的对a^rePoint 环境(包括开发环境)的扩展在某种程度上是缺乏的,部分地是因为SiarePoint⑧解决方案开发人员发现为了开发甚至简单的SiarePoint 解决方案都需要使用来自不同的源的各种工具。当开发工具缺乏时, 用于利用新的或改进的功能来扩展这些工具的基础结构也是不足的。支持对SiarePoint 环境的独立添加的基础结构可以采取各种形式。例如,一般而言,在软件运行之前,可以由开发人员利用被定义为软件的一部分的代码扩展该软件应用程序的功能。软件开发常常包括编写源代码,将源代码编译为可执行的机器代码或虚拟机代码,并链接或以其他方式将已编译的结果绑定到以前创建的代码。一些体系结构允许在最终用户正在运行应用程序时扩展该应用程序的功能。例如,一些应用程序支持插件,插件是可以由应用程序在运行时加载(或代表应用程序加载) 的相对较小的应用程序特定的软件段。插件增强应用程序,而并非独立地运行。插件是可选的,因为应用程序即使没有插件也能提供相当大的功能。插件是应用程序特定的,被设计和实现为用于特定应用程序,有时甚至用于该应用程序的特定版本。每一应用程序都提供用于定位和使用它支持的插件的其自己的基础结构。插件也叫做“附件”或“内置附件”。对于功能扩展的另一种方法需要允许应用程序在运行时发现并利用软件功能的可扩展性框架。在该框架内,基础结构支持在不同的应用程序之间、以及应用程序特定的扩展之间共享功能。这样的应用程序被称为“可扩展的”。可扩展性框架基于签名和/或与扩展和应用程序相关联的其他数据类型信息来为应用程序提供定位和加载可用扩展的机制。 例如,可扩展的应用程序环境可包括各个合成容器,这些合成容器在彼此之间导入/导出值。微软提供一个被称为“MEF” ( “托管可扩展性框架”)的可扩展的应用程序环境。 MEF提供运行时可扩展性,而不对应用程序施加插件模型。MEF允许宿主应用程序展示其自己的扩展(即,组件、服务、和/或组件提供程序)并使用外部扩展。扩展可以在不同的应用程序之间重用,还可以被实现为应用程序特定的。扩展可以彼此依赖;基于合同、类型和 /或其他约束,MEF自动地连接各扩展。MEF为应用程序提供用于定位和加载可用扩展的发现机制。MEF还支持用促进查询和过滤的元数据来对扩展加标签。MEF允许运行时发现各组件并将各组件绑定在一起。根据此处的某些实施例,为了使组件可被发现,该组件被给予了特殊“出口(Export)”自定义属性。例如,一些组件工厂具有此“出口”属性,并且因此可以被项目发现和使用。项目可以使用工厂来为该项目中的工件实例创建扩展;项目可以具有零个或更多个工件。在MEF中,使用合成容器来将各组件绑定在一起。应用程序本身可以导出可以由附件组件使用的一些组件、服务、或组件提供程序。应用程序从附件组件导入组件、服务、或组件提供程序。附件又导出组件、服务、以及组件提供程序,并从应用程序导入所需的元素。如此,合成容器从应用程序和附件接收可用的元数据,并将它们绑定在一起。合成容器可以在需要时创建对象的实例,如此,合成容器不一定在彼此之间提供对象的导入/ 导出。使用组件解析器,向组件容器提供元数据。在一些配置中,特殊类型的组件解析器可以从另一个组件容器获取或导入组件;这一类型的解析器不一定存在于每个配置中。MEF的核心构造包括目录和合成容器。目录负责发现扩展(即,组件、服务、和/或组件提供程序),而合成容器协调项创建并满足依赖关系。在MEF中,可组合的部件提供一个或多个出口,并且也可以取决于一个或多个在外部提供的服务或其他入口。可组合的部件也管理实例,该实例可以是给定类型的对象实例。MEF是可扩展的;可以提供额外的可组合的部件实现,只要它们遵循指定的入口 本文档来自技高网
...

【技术保护点】
1.一种用于在配置联网的计算系统的基于浏览器的协作环境中开发可扩展项目的方法,所述方法包括下列步骤:定位(402)协作项目工厂;至少部分地基于所述协作项目工厂,标识(404)协作项目扩展工件工厂;以及至少部分地基于所述协作项目扩展工件工厂,在所述联网的计算系统中的合成容器中创建(406)协作项目扩展工件的实例。

【技术特征摘要】
【国外来华专利技术】...

【专利技术属性】
技术研发人员:I·B·西默尼特斯基
申请(专利权)人:微软公司
类型:发明
国别省市:US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1