apache camel_Apache Camel请向我解释这些端点选项的含义
apache camel
在即将发布的Apache Camel 2.15中,我们使Camel更智能。 现在,它可以充当老师,并向您说明其配置方式以及这些选项的含义。
Camel可以做的第一课是告诉您如何配置所有端点以及这些选项的含义。
接下来我们要学习的课程是让Camel解释EIP的选项。
好了,一张图片值得一千个单词,所以让我展示Apache Karaf的屏幕截图,您可以在其中使用新的endpoint-explain命令来解释如何配置端点。
Apache的屏幕截图来自我在Karaf中安装的SQL示例 。 此示例使用了多个端点,其中有一个计时器每5秒触发一次。 从上面可以看到,该命令列出了端点uri:timer:// foo?period = 5s,然后在下面解释了该选项。 由于uri仅具有1个选项,因此仅列出了一个。 我们可以看到该选项被命名为period。 它的java类型很长。 json模式类型为整数。 我们可以看到该值为5s,在说明该值的说明的下方。
那么为什么列出两种类型呢? 想法是存在一种适合工具等的类型,因为它具有对应于JSonSchema规范的更简单的类型类别。 还列出了Java中的实际类型。
计时器端点还有更多选项,因此我们可以使用–verbose选项列出所有选项,如下所示:
说明端点功能还可以作为JMX或CamelContext上的Java API使用。 对于JMX,每个端点mbean都有一个说明操作,该操作返回具有上述数据的表格数据。 jconsole的以下屏幕截图对此进行了说明:
另外,在CamelContext MBean上有一个通用的explainEndpointJson操作,它可以解释所提供的任何任意uri。 因此,您可以解释Camel不使用的端点。
那么这是如何工作的呢?
在构建Apache Camel版本的过程中,我们为每个组件生成一个HTML和JSon模式,其中每个端点选项都以其名称,类型和描述进行记录。 对于枚举,我们列出了可能的值。
这是camel-sql组件的此类json模式的示例:
现在要使此工作正常,组件必须支持uri选项,这需要使用@UriEndpoint注释端点。 尽管Camel团队尚未迁移Camel版本中的所有160多个组件。 但是我们计划随着时间的推移迁移组件。
当然可以肯定的是,现在有了这个新功能,它鼓励我们迁移所有组件。
那么我们从哪里获得文档? 好吧,它只是Java代码,所以您要做的就是为端点选项设置getter / setter。 添加@UriParam批注,并为setter添加Javadoc。 是的,我们将javadoc作为文档。 因此,它只是作为标准javadoc记录在一个地方,并在源代码中有记载。
我希望我们将来能自动为这些组件生成Camel网站文档,因此我们不必在其Wiki系统中单独进行维护。 但这将需要艰苦的工作才能实现。 但是最终我们应该到达那里,因此每个组件都记录在源代码中。 例如,对于每个具有所有组件文档的组件,我们可能都有一个readme.md,然后将端点选项从Camel内置系统中自动注入该readme.md文件中。 拥有readme.md文件还允许github用户使用github样式很好地浏览Camel组件文档!
那么下一步是什么?
hawtio Web控制台也将集成此功能,因此从Camel 2.15开始的用户可以立即在Web控制台中获取该信息。
然后开始在Spring / Blueprint用户的XML模式中包含有关EIP的文档。 并改进EIP的javadoc,因为这也成为文档的唯一来源。 然后,当人们在XML编辑器中开发其骆驼路线时,这将允许诸如Eclipse / IDEA / Netbeans之类的工具以及诸如此类的工具来显示文档,因为该文档在XSD中以xsd:documentation标记提供。
我们已经捕捉到一些想法,在CAMEL-7999票证中还有其他事情。 如果您有任何其他需要改进的想法,那么我们欢迎社区提供反馈。
翻译自: https://www.javacodegeeks.com/2014/11/apache-camel-please-explain-me-what-these-endpoint-options-mean.html
apache camel
apache camel_Apache Camel请向我解释这些端点选项的含义相关推荐
- Apache Camel请向我解释这些端点选项的含义
在即将发布的Apache Camel 2.15中,我们使Camel更智能. 现在,它可以充当老师,并向您说明其配置方式以及这些选项的含义. Camel可以做的第一课是告诉您如何配置所有端点以及这些选项 ...
- apache camel_Apache Camel Intellij IDEA插件的工作已开始
apache camel 仅仅因为圣诞节并不意味着骆驼静止不动. 在23日晚上,我花了一些时间进行研究,并开始研究IDEA的Apache Camel插件的小原型. 它已经存在了我很长时间. 原因是Ap ...
- apache camel_Apache Camel日志组件示例
apache camel Apache Camel日志组件示例 您要将消息记录到底层的记录机制中,请使用骆驼的log:组件. Camel使用sfl4j作为记录器API,然后允许您配置记录器实现. 在本 ...
- apache.camel_Apache Camel 2.18 –即将推出的功能的亮点
apache.camel 骆驼骑士正在忙于即将发布的Apache Camel 2.18版本. 当我们动态更新发行说明时 ,这是一种快速查看即将发生的情况的方法. 我只是想在夏天在这里进行快速更新,到目 ...
- apache.camel_Apache Camel 2.9发布–十大变化
apache.camel 在2011年的最后一天,阿帕奇骆驼制品被成功地推到了Maven仓库中,距离香槟酒瓶破裂并进入2012年仅1.5个小时. 2.9版是创纪录的发行版,自5个月前发布2.8版以来, ...
- apache.camel_Apache Camel K 1.0在这里–您为什么要关心
apache.camel 昨天我们发布了Apache Camel K 1.0,并在社交媒体和Camel网站上宣布了该版本. 那么,骆驼K是什么,为什么你要在乎呢? 这是一个很好的问题,我想通过提及伟大 ...
- apache camel_Apache Camel中的短重试与长重试
apache camel <骆驼设计模式>一书介绍了20种模式以及用于设计基于Apache Camel的集成解决方案的众多技巧和最佳实践. 每种模式都基于真实的用例,并提供了Camel特定 ...
- apache camel_Apache Camel –从头开始开发应用程序(第1部分/第2部分)
apache camel 开始之前 前段时间,我写了一篇关于Spring Integration的教程,以演示如何在受现实发票处理系统启发的示例应用程序中使用Spring Integration. 我 ...
- apache.camel_Apache Camel 3.1 – XML路由的快速加载
apache.camel Camel 3.1中添加的一项功能是能够更快地加载XML路由. 这是我们为使Camel变得更小,更快而进行的总体工作的一部分. 您可能会说ewww XML. 但坦率地说,有很 ...
最新文章
- define##的作用
- 郁闷。用户的无聊话题
- 梅露可物语虚拟服务器,【图片】【萌新】主界面的使用方法(零基础版)【梅露可物语日服吧】_百度贴吧...
- jQuery.html()方法ie下不能设置html代码的问题
- 技术分享——机房搬迁工作步骤及方案详解
- flask接口mysql开发例子,使用Flask开发简单接口3–引入MySQL
- C++中的继承(派生)的一些误区
- 推动运营商安全标准体系建设
- HDU2024 C语言合法标识符【文本处理】
- 格拉布斯检验法matlab,格拉布斯检验法MATLAB算法
- 【数据库】数据库系统工程师(软考中级)——学习过程总结
- Python开发游戏自动化后台脚本
- 吐槽 intent:#Intent;S.K_1171477665=;end
- JavaScript 的防抖与节流
- 罗马数字转换python_20190502-罗马数字转换为数字
- 建造属于你的无人驾驶车——(七)为XACRO模型添加GAZEBO属性与运动控制插件
- 论文笔记:Bootstrap Your Own Latent A New Approach to Self-Supervised Learning
- matlab安装 runtime错,Win7安装Matlab7.0出错Runtime Error怎么办?
- 三、逻辑结构与存储结构的区分
- numpy生成等差等比数列