一种点对点实时协同编辑系统的制作方法

文档序号:6483123阅读:311来源:国知局
专利名称:一种点对点实时协同编辑系统的制作方法
技术领域
本发明涉及一种点对点实时协同编辑系统,尤其涉及一种基于Eclipse的点对点实时协同编辑系统。
背景技术
当前,团队协作是各种组织解决复杂问题的重要手段,随着计算机网络的发 展,群体间的远程交互发挥着越来越重要的作用。计算机支持的协同工作(Computer SupportedCooperative Work,CSCff)顺应着这种趋势,近年来取得了巨大发展。实时协同 编辑系统(Real-Time Collaborative Editing System)作为CSCW下的重要应用,能够为 用户提供同步的编辑环境,用户即便在地理位置分隔的情况下仍然能够以同步的方式完成 一项工作。由于实时协同编辑应用开发的复杂度,现今的实时协同编辑系统应用中,各种解 决方案所提供的服务往往用途较为单一同时扩展性不强。此外对于复杂多变的网络状况, 许多解决方案中的网络相关组件还有待优化。协同编辑系统是(Collaborative Editing System) [4]是CSCW应用的一类主要 分支,其基本目标在于使不同的用户能够通过网络编辑同一对象。根据任务环境不同,用户 能够选择以同步(synchronously)或异步(asynchronously)的方式进行协同工作。其中 同步协同又称为实时协同[4],当用户对目标对象进行操作时,其他用户能够立即感知对象 变化,如在Google Doc等在线办公系统中,多个用户能够以同步的方式对同一文档进行修 改;异步方式下协同编辑时,用户需自己决定何时发布操作或集成接收到的其他用户操作, 典型应用如软件配置管理(Software Configuration Management, SCM)中的 SVN、CVS、GIT 等版本控制系统。值得注意的是,典型的协同编辑系统往往需要某些中心节点的调度协调 以保证整个系统的正确有序,这种对中心节点的依赖尤其限制了实时协同编辑系统的整体 伸缩性以及使用灵活性[1]。从协同编辑系统构建的角度看来,其开发难度较高,周期较长,集中体现在由于其 核心算法描述复杂、实现困难,同时还对网络环境的要求较严格。针对实时协同编辑系统已 有开发框架的原型存在如GCF[1],但从应用的角度来说,统一且成熟的实时协同编辑解决 方案不多。点对点(Peer-To-Peer,P2P) [5]技术作为现今互联网最主流的网络架构技术,其 概念早在互联网发展初期就已被提出,然而其真正广泛流行则要归功于1999年美国东北 波士顿大学的Shawn Farming独立开发的Napster软件。Napster的主要功能是为用户搜 寻和共享音乐,同时还能够与其他用户进行交流,其出现犹如一枚重磅炸弹,最高峰时曾吸 引了 8000万注册用户。自Napster的成功开始,之后P2P应用层出不穷,目不暇接的P2P 应用可以说涵盖了网络应用的方方面面,如文件分发、在线视频、远程教育、医疗等等方面。P2P网络的最大特点在于去中心化,正因为具备此特点,在P2P应用中占最大比重的且 普及率最高的是文件分发和共享。如最早的Napster,到现今流行的BT,E-Mule等,提供的 都是文件分发和共享服务。
P2P技术的去中心化特性恰好能够改善实时协同编辑系统中对中心服务器依赖的 缺陷,为实时协同系统增加可观的伸缩性,同时P2P技术还能够简化以往实时协同编辑系 统的数据传输过程,提高实时协同编辑系统的性能。因此P2P环境下的实时协同编辑系统 是当前协同编辑领域普遍认同的解决方案。

发明内容
基于上述技术背景,本发明设计了一个基于Eclipse的点对点实时协同编辑系统。该系统以Eclipse为载体,利用Eclipse的高度可扩展性,通过层次化的设计,构筑了 一个提供泛型实时协同编辑服务的开放平台。同时该系统在引入P2P技术的前提下,强化 了内部网络相关组件的自治性管理,从而使系统对网络的适应能力得到保证。本发明的技术方案如下一种点对点实时协同编辑系统,其特征在于,包括配置器、通信组件、泛型引擎、应 用依赖接口、工程管理器、UI抽象层和Eclipse扩展。配置器包括配置服务器类,是配置器组件提供服务的核心类,全面负责系统配置 信息的管理以及各组件初始化;配置管理器类,负责管理系统相关的各种配置信息,所提供 的具体功能有默认配置环境的初始化,查询配置信息等;组件代理类,继承自IComponent 接口,在各组件初始化并开始行使职责之前,代理类将替代具体类为其他组件提供元数据 信息;配置信息包装类,系统内所有配置信息都将被封装在ConfigBimdle实例中进行传 递;文件管理器类,负责文件的批量操作;默认文件解析器类,继承自IFileParser接口,负 责文本文件的的简单解析;配置器整体负责管理系统的配置信息同时负责系统初始化以及 管理各组件的生命周期。通信组件包括节点组件、共享组组件、消息解析器,通信组件的主要任务是给引 擎组件提供完备统一的通信接口,保证在P2P环境中消息的发送和接收,用户同样可以针 对自己的需要将实现替换,如采用用户自行编写的基于Socket的实现或其他通讯框架的 实现等等。泛型引擎包括消息监听线程、调度器线程、过滤器线程、引擎线程、垃圾收集线程 和同步器线程。应用依赖接口包括Bridge,负责承载应用依赖接口的总体功能;普通操作类继 承IOperation接口,负责描述一个操作;远程操作类,继承AbstractOperation类,负责描 述一个远程操作;转换函数的包装类,继承ITransformer接口 ;UI抽象层的主要功能在与将既有的UI组件适配到Lobo中,具体说来即将 Eclipse的UI组件集成到Lobo内。本发明在Eclipse的基础之上,提供实时协同编辑服务,工程管理,信息共享,版 本导出等多种功能。本发明利用Eclipse的既有功能和高度开放性,将P2P环境下的实时 协同编辑功能注入其中,提供一个统一的、平台化的实时协同编辑解决方案。在本发明中, 除Eclipse默认的文本类编辑功能外,用户或开发人员还能够将更多实用的协同编辑应用 集成到一起。此外,由于P2P的引入带来的系统稳定性问题,网络组件中容错能力的强化得 到了很好的解决。


附图为本发明实施例的系统架构图;
具体实施例方式下面结合附图对本发明做进一步的说明。参见附图,一种点对点实时协同编辑系统,其特征在于,包括配置器、通信组件、泛 型引擎、应用依赖接口、工程管理器、UI抽象层和Eclipse扩展。配置器包括配置服务器类,是配置器组件提供服务的核心类,全面负责系统配置 信息的管理以及各组件初始化;配置管理器类,负责管理系统相关的各种配置信息,所提供 的具体功能有默认配置环境的初始化,查询配置信息等;组件代理类,继承自IComponent 接口,在各组件初始化并开始行使职责之前,代理类将替代具体类为其他组件提供元数据 信息;配置信息包装类,系统内所有配置信息都将被封装在ConfigBimdle实例中进行传 递;文件管理器类,负责文件的批量操作;默认文件解析器类,继承自IFileParser接口,负 责文本文件的的简单解析;配置器整体负责管理系统的配置信息同时负责系统初始化以及 管理各组件的生命周期。通信组件包括节点组件、共享组组件、消息解析器,通信组件的主要任务是给引 擎组件提供完备统一的通信接口,保证在P2P环境中消息的发送和接收,用户同样可以针 对自己的需要将实现替换,如采用用户自行编写的基于Socket的实现或其他通讯框架的 实现等等。泛型引擎包括消息监听线程、调度器线程、过滤器线程、引擎线程、垃圾收集线程 和同步器线程。应用依赖接口包括Bridge,负责承载应用依赖接口的总体功能;普通操作类继 承IOperation接口,负责描述一个操作;远程操作类,继承AbstractOperation类,负责描 述一个远程操作;转换函数的包装类,继承ITransformer接口 ;UI抽象层的主要功能在与将既有的UI组件适配到本发明中,具体说来即将 Eclipse的UI组件集成到本发明的系统内。本发明在Eclipse的基础之上,提供实时协同编辑服务,工程管理,信息共享,版 本导出等多种功能。本发明利用Eclipse的既有功能和高度开放性,将P2P环境下的实时 协同编辑功能注入其中,提供一个统一的、平台化的实时协同编辑解决方案。在本发明中, 除Eclipse默认的文本类编辑功能外,用户或开发人员还能够将更多实用的协同编辑应用 集成到一起。此外,由于P2P的引入带来的系统稳定性问题,网络组件中容错能力的强化得 到了很好的解决。
权利要求
一种点对点实时协同编辑系统,其特征在于,包括配置器、通信组件、泛型引擎、应用依赖接口、工程管理器、UI抽象层和Eclipse扩展。
2.根据权利要求1所述的一种点对点实时协同编辑系统,其特征在于,配置器包括配 置服务器类,是配置器组件提供服务的核心类,全面负责系统配置信息的管理以及各组件 初始化;配置管理器类,负责管理系统相关的各种配置信息,所提供的具体功能有默认配置 环境的初始化,查询配置信息等;组件代理类,继承自IComponent接口,在各组件初始化并 开始行使职责之前,代理类将替代具体类为其他组件提供元数据信息;配置信息包装类,系 统内所有配置信息都将被封装在ConfigBimdle实例中进行传递;文件管理器类,负责文件 的批量操作;默认文件解析器类,继承自IFileParser接口,负责文本文件的的简单解析; 配置器整体负责管理系统的配置信息同时负责系统初始化以及管理各组件的生命周期。
3.根据权利要求1所述的一种点对点实时协同编辑系统,其特征在于,所述的通信组 件包括节点组件、共享组组件、消息解析器,通信组件的主要任务是给引擎组件提供完备 统一的通信接口,保证在P2P环境中消息的发送和接收,用户同样可以针对自己的需要将 实现替换,如采用用户自行编写的基于Socket的实现或其他通讯框架的实现等等。
4.根据权利要求1所述的一种点对点实时协同编辑系统,其特征在于,所述的泛型引 擎包括消息监听线程、调度器线程、过滤器线程、引擎线程、垃圾收集线程和同步器线程。
5.根据权利要求1所述的一种点对点实时协同编辑系统,其特征在于,所述的应用依 赖接口包括Bridge,负责承载应用依赖接口的总体功能;普通操作类继承IOperation接 口,负责描述一个操作;远程操作类,继承AbstractOperation类,负责描述一个远程操作; 转换函数的包装类,继承ITransformer接口 ;
6.根据权利要求1所述的一种点对点实时协同编辑系统,其特征在于,所述的UI抽象 层的主要功能在与将既有的UI组件适配到Lobo中,具体说来即将Eclipse的UI组件集成 至lj Lobo 内。
全文摘要
本发明涉及一种点对点实时协同编辑系统,尤其涉及一种基于Eclipse的点对点实时协同编辑系统。本发明设计了一个基于Eclipse的点对点实时协同编辑系统。该系统以Eclipse为载体,利用Eclipse的高度可扩展性,通过层次化的设计,构筑了一个提供泛型实时协同编辑服务的开放平台。同时该系统在引入P2P技术的前提下,强化了内部网络相关组件的自治性管理,从而使系统对网络的适应能力得到保证。本发明一种点对点实时协同编辑系统,其特征在于,包括配置器、通信组件、泛型引擎、应用依赖接口、工程管理器、UI抽象层和Eclipse扩展。
文档编号G06Q10/00GK101859403SQ20091005887
公开日2010年10月13日 申请日期2009年4月9日 优先权日2009年4月9日
发明者黄忍冬 申请人:黄忍冬
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1