一种Camel路由和媒介引擎导入方法、装置及架构的制作方法

文档序号:7761116阅读:138来源:国知局
专利名称:一种Camel路由和媒介引擎导入方法、装置及架构的制作方法
技术领域
本发明属于计算机技术领域,尤其涉及一种Camel路由和媒介引擎导入方法、装置及架构。
背景技术
Camel架构除支持脚本语言实现路由逻辑外,目前只能通过Camel支持的XML配置文件方式配置动态的路由,其XML配置是基于依赖注入的方式,有固定的XML基本类型定义 (XML schema)来描述可以配置的XML标签和约束。Camel的XML配置已经有固定的实现, 只能根据它的约定来配置路由,并且难以修改Camel的XML配置解析引擎,如果使用自定义配置内容则不能通过Camel默认的解释器检验,或者只能借助注入对象属性的原始方式进行烦琐、可读性和理解性差的配置,导致自定义路由和媒介引擎无法导入,难以实现自定义组件的添加。

发明内容
本发明实施例的目的在于提供一种Camel路由和媒介引擎导入方法,旨在解决由于Camel只支持其自身XML配置文件方式配置动态路由,导致自定义路由和媒介引擎无法导入,难以实现自定义组件的添加的问题。本发明实施例是这样实现的,一种Camel路由和媒介引擎导入方法,所述方法包括下述步骤将自定义命名空间添加到Camel的命名空间;在Camel解释器中对自定义解释器进行注册;将自定义组件实例注册到Camel的上下文对象中;建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件khema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例的另一目的在于提供一种Camel路由和媒介引擎导入装置,所述装置包括命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及关联关系构建单元,用于构建Camel的XML配置文件与预先构建的自定义XSD、XSD 配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例的另一目的在于提供一种包括Camel路由和媒介引擎导入装置的系统,所述Camel路由和媒介引擎导入装置包括命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及
关联关系构建单元,用于构建Camel的XML配置文件与预先构建的自定义XSD、XSD 配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML 配置文件与预先生成的自定义XSD、XSD配置文件khema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的导入,提高了 Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强Camel的功能。


图1是本发明第一实施例提供的Camel路由和媒介引擎导入方法的实现流程图;图2是本发明第三实施例提供的导入后的Camel路由和媒介引擎各部分的关联关系图;图3是本发明第三实施例提供的Camel路由和媒介引擎导入装置的结构图。
具体实施例方式为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。本发明实施例通过将自定义组件实例注册到Camel的上下文对象中,并将预先生成配置文件与Camel的XML配置进行关联,实现用户自定义Camel路由和媒介引擎的导入, 提高Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了 Camel的功能。本发明实施例提供了一种Camel路由和媒介引擎导入方法,所述方法包括下述步骤将自定义命名空间添加到Camel的命名空间;在Camel解释器中对自定义解释器进行注册;将自定义组件实例注册到Camel的上下文对象中;建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件khema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例还提供了一种Camel路由和媒介引擎导入装置,所述装置包括命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及关联关系构建单元,用于构建Camel的XML配置文件与预先构建的自定义XSD、XSD 配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例还提供了一种包括Camel路由和媒介引擎导入装置的系统,所述 Camel路由和媒介引擎导入装置包括命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间;
4
解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及关联关系构建单元,用于构建Camel的XML配置文件与预先生成的自定义XSD、XSD 配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML 配置文件与预先生成的自定义XSD、XSD配置文件khema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的导入,提高了 Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了 Camel的功能。以下结合具体实施例对本发明的具体实现进行详细描述实施例一图1示出了本发明第一实施例提供的Camel路由和媒介引擎导入方法的实现流程,详述如下在步骤SlOl中,将自定义命名空间添加到Camel的命名空间;在本发明实施例中,企业可以按照自身的需要建立企业的命名空间,以清楚地标注企业服务特点。在步骤S102中,在Camel解释器中对自定义解释器进行注册;在步骤S103中,将自定义组件实例注册到Camel的上下文对象中;在本发明实施例中,Camel的上下文对象负责自定义组件实例的注册,并保存相应的路由和媒介规则。在步骤S104中,建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文
所述自定义解释器的配置文件、以及所述自定义命名空间的关联。在本发明实施例中,应生成描述自定义XML文档的合法构建模块的自定义XSD,生成所述自定义XSD的XSD配置文件khema,生成对所述自定义解释器进行描述的配置文件, 并通过Camel的XML配置文件建立与这些文件的关联关系,从而建立对其的引用。本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,将预先生成预先生成的自定义XSD、XSD配置文件khema、以及自定义解释器的配置文件与Camel的XML配置文件进行关联,实现用户自定义Camel路由和媒介引擎的导入,提高了 Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了 Camel的功能。实施例二 图2示出了本发明第二实施例提供的导入后的Camel路由和媒介引擎的各部分的关联关系,详述如下在本发明实施例中,默认XSD,Camel的XML配置文件,解释器注册类,Camel上下文为现有Camel的组成部分,NamespaceHandlerSupport为解释器注册类的基类,解释器注册类继承自NamespaceHandlerSupport类。自定义XSD、XSD配置文件khema、自定义解释器的配置文件Handlers,以及自定义XML解释器类为导入的Camel路由和媒介引擎的组成部分,都与Camel的XML配置文件存在关联关系。接口 BeanDefinitionParser定义了解释器的基本接口,自定义XML解释器类对其进行了实现,通过定义良好地接口,较好地对接收到的XML格式数据进行解析。本领域普通技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中, 所述的存储介质,如ROM/RAM、磁盘、光盘等。实施例三图3示出了本发明第三实施例提供的Camel路由和媒介引擎导入装置的结构,为了便于说明,仅示出了与本发明实施例相关的部分。命名空间扩展单元31,用于将自定义命名空间添加到Camel的命名空间;解释器注册单元32,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元33,用于将自定义组件实例注册到Camel的上下文对象中;自定义XSD生成单元34,用于生成自定义XML文档的合法构建模块;在本发明实施例中,自定义XML文档的合法构建模块包括定义可出现在文档中的元素,元素属性,元素的子元素,子元素的次序,子元素的数目,以及元素和属性的默认值以及固定值等。XSD配置文件khema生成单元35,用于生成所述自定义XSD生成单元;34生成的自定义XSD的XSD配置文件khema,对自定义XSD进行描述;自定义解释器的配置文件生成单元36,用于生成对自定义解释器进行描述的配置文件;以及关联关系构建单元37,用于构建Camel的XML配置文件与预先生成的自定义XSD、 XSD配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明实施例通过对Camel自定义命名空间进行扩展,在Camel解释器中对自定义解释器进行注册,将自定义组件实例注册到Camel的上下文对象中,并建立Camel的XML 配置文件与预先生成的自定义XSD、XSD配置文件khema、自定义解释器的配置文件、以及自定义命名空间的关联,实现用户自定义Camel路由和媒介引擎的生成,提高了 Camel的可扩展性,使得用户能够根据自身的需要在Camel中构建和生成相应的路由和媒介引擎,进一步增强了 Camel的功能。以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
权利要求
1.一种Camel路由和媒介引擎导入方法,其特征在于,所述方法包括下述步骤 将自定义命名空间添加到Camel的命名空间;在Camel解释器中对自定义解释器进行注册; 将自定义组件实例注册到Camel的上下文对象中;建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件khema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
2.如权利要求1所述的方法,其特征在于,所述建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件&&!1^、所述自定义解释器的配置文件、以及所述自定义命名空间的关联的步骤之前,所述方法进一步包括下述步骤生成描述自定义XML文档的合法生成模块的自定义XSD ; 生成所述自定义XSD的XSD配置文件khema ; 生成对所述自定义解释器进行描述的配置文件。
3.—种Camel路由和媒介引擎导入装置,其特征在于,所述装置包括 命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间; 解释器注册单元,用于在Camel解释器中对自定义解释器进行注册;组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及关联关系构建单元,用于构建Camel的XML配置文件与预先生成的自定义XSD、XSD配置文所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
4.如权利要求3所述的装置,其特征在于,所述装置还包括自定义XSD生成单元,生成描述自定义XML文档的合法构建模块的自定义XSD ; XSD配置文件khema生成单元,生成所述自定义XSD生成单元生成的自定义XSD的XSD 配置文件khema ;以及自定义解释器的配置文件生成单元,生成对自定义解释器进行描述的配置文件。
5.一种包括Camel路由和媒介引擎导入装置的系统,其特征在于,所述Camel路由和媒介引擎导入装置包括命名空间扩展单元,用于将自定义命名空间添加到Camel的命名空间; 解释器注册单元,用于在Camel解释器中对自定义解释器进行注册; 组件实例注册单元,用于将自定义组件实例注册到Camel的上下文对象中;以及关联关系构建单元,用于构建Camel的XML配置文件与预先构建的自定义XSD、XSD配置文所述自定义解释器的配置文件、以及所述自定义命名空间的关联。
6.如权利要求5所述的系统,其特征在于,所述Camel路由和媒介引擎导入装置还包括自定义XSD生成单元,生成描述自定义XML文档的合法构建模块的自定义XSD ; XSD配置文件khema生成单元,生成所述自定义XSD生成单元生成的自定义XSD的XSD 配置文;以及自定义解释器的配置文件生成单元,生成对自定义解释器进行描述的配置文件。
全文摘要
本发明适用于计算机技术领域,提供了一种Camel路由和媒介引擎导入方法、装置及系统,包括将自定义命名空间添加到Camel的命名空间;在Camel解释器中对自定义解释器进行注册;将自定义组件实例注册到Camel的上下文对象中;建立Camel的XML配置文件与预先生成的自定义XSD、XSD配置文件Schema、所述自定义解释器的配置文件、以及所述自定义命名空间的关联。本发明通过将自定义组件实例注册到Camel的上下文对象中,实现了用户自定义Camel路由和媒介引擎的导入,提高了Camel的可扩展性,使得用户能够根据自身的需要在Camel中导入相应的路由和媒介引擎,进一步增强了Camel的功能。
文档编号H04L12/56GK102437945SQ20101029682
公开日2012年5月2日 申请日期2010年9月29日 优先权日2010年9月29日
发明者胡锦敏 申请人:金蝶软件(中国)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1