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的以下屏幕截图对此进行了说明:

说明-jmx

另外,在CamelContext MBean上有一个通用的explainEndpointJson操作,它可以解释所提供的任何任意uri。 因此,您可以解释Camel不使用的端点。

那么这是如何工作的呢?

在构建Apache Camel版本的过程中,我们为每个组件生成一个HTML和JSon模式,其中每个端点选项都以其名称,类型和描述进行记录。 对于枚举,我们列出了可能的值。

这是camel-sql组件的此类json模式的示例:

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

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/339210.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

android照片备份软件下载,照片备份云相册app下载-照片备份云相册下载V1.9安卓版-西西软件下载...

这款软件主要为安卓手机用户提供照片图片等备份的服务,通过照片备份云相册app可以轻松的为更多手机空间不够的用户清理出手机空间,照片图片等的是最不容易发现占用空间的,现在有了照片备份云相册app就能轻松让手机内存足够使用哦。照片备份云…

手机照片导入电脑步骤_如何将手机中的照片、视频快速的保存到U盘上?3分钟教你详细步骤...

手机拍照功能是越来越强大了。生活中,不少的朋友都喜欢拍照。拍着拍着不知不觉就存了许多的照片,占用很大的空间。手机照片和视频都是我们非常重要的回忆,许多人都不愿意删除。为了节省我们手机的空间,许多人都会选择将手机照片导…

筒仓计算表格_身份反模式:联邦筒仓和意大利面条身份

筒仓计算表格分析公司Quocirca的最新研究证实,现在许多企业的外部用户比内部用户更多:在欧洲,有58%的企业直接与其他企业和/或消费者的用户进行交易; 仅在英国,这一数字就达到了65%。 如果回顾历…

C/C 宏替换详解

1. 基本形式#define name replacement_text 复制代码通常情况下,#define 指令占一行,替换文本是 define 指令行尾部的所有剩余部分,但也可以把一个较长的宏定义分成若干行,这时需要在待续的行末尾加上一个反斜杠符 。宏定义也可以…

android webview 设置文字颜色,android webView 修改页面字体颜色

webview加载一个界面后,在onPageFinished中加入修改页面字体颜色css,如下String nightCode "";try {InputStream is getResources().openRawResource(R.raw.day);byte[] buffer;buffer new byte[is.available()];is.read(buffer);is.close(…

win10更新助手_快升级!win10精简版不到10G,比win7还干净流畅,无需更新!

在整个PC端操作系统中,最成功的得主自然要说微软。毕竟微软发布的XP、win7操作系统那可是风靡全球,占用的用户资源十分庞大。单单因为这两个操作系统就吸引到了足够的用户,整个装机下载量可真不是盖的,说微软是PC端的"老大&q…

openshift命令_使用命令行工具创建WildFly OpenShift应用程序

openshift命令通过使用快速入门,可以轻松地在OpenShift上配置WildFly的新实例。 只需单击一下,您就可以准备就绪! 通常,OpenShift的高级用户使用命令行工具 。 但是,您无法使用CLI工具创建WildFly墨盒。 但现在已解决…

android 加解密的速度和什么有关系,Android 加解密类Cipher

近日在做一个关于短信及文件加解密的小项目,查看了一些Android加解密方面的知识。关于加解密这部分以前完全没有接触过,所以网上乱翻了一天对于什么DES,AES,RSA,BASE64,MD5之类的还是懵懵懂懂,这…

redis缓存原理与实现_SpringBoot整合Redis缓存,手把手教你一步一步实现

推荐学习分布式大全:反向代理/Redis/中间件/MySQL/消息,挑战阿里P7必备都是“Redis惹的祸”,害我差点挂在美团三面,真是“虚惊一场”微服务架构之春招总结:SpringCloud、Docker、Dubbo与SpringBoot一、基本概况为什么使…

C 实现高性能内存池

版权一、概述在 C/C 中,内存管理是一个非常棘手的问题,我们在编写一个程序的时候几乎不可避免的要遇到内存的分配逻辑,这时候随之而来的有这样一些问题:是否有足够的内存可供分配? 分配失败了怎么办? 如何管理自身的内存使用情况…

【计算理论】06 可归约性

文章目录 本章要点可归约性映射可归约图灵可判定归约证明 H A L T T M HALT_{TM} HALTTM​不可判定 E T M E_{TM} ETM​不可判定 R E G U L A R T M REGULAR_{TM} REGULARTM​不可判定 E Q T M EQ_{TM} EQTM​不可判定 图灵可识别的归约性参考 本章要点 可归约性定义&#xff…

组件注入 # 注入的属性_注入域对象而不是基础结构组件

组件注入 # 注入的属性依赖注入是Java(以及许多其他编程语言)中广泛使用的软件设计模式,用于实现控制反转 。 它提高了可重用性,可测试性,可维护性,并有助于构建松耦合的组件。 如今,依赖注入是…

docker $PWD路径_Docker安装Jenkins+Shell脚本自动化部署项目

本文同名博客老炮说Java:https://www.laopaojava.com/,每天更新Spring/SpringMvc/SpringBoot/实战项目等文章资料SentinelNacos 是微服务环境搭建必不可少的两个组件,这里给大家推荐一套微服务教程:SpringCloud微服务电商项目教程…

flyme Android7.0 root,手把手教你如何免ROOT卸载Flyme7系统自带APP

本教程需要使用adb,adb的全称为Android Debug bridge,就是起到调试桥的作用。借助adb工具,我们可以管理设备或手机模拟器的状态。本教程需要使用adb,adb的全称为Android Debug bridge,就是起到调试桥的作用。借助adb工…

C语言 -- 字符串中根据特定字符(串)分割

版权C语言字符串操作函数有很多,这里举出需要用到的,其他请自行查找。1、len strlen(p) ;//取字符串长度 原型:size_t strlen(const char *s); 功能:统计字符串string中字符的个数,字符串的长度在 size_t…

javaone_JavaOne 2014:会议与合同利益冲突

javaone杜克街咖啡馆,工程师可以在街上进行走廊交谈 。 与签约不兼容 我的第11届JavaOne会议(2004年至2014年为11 10 1)非常出色。 值得参加此活动并结识社区中所有的人。 现在,这里是绅士的,但 。 除了经济上的明显…

什么流读取MultipartFile_深入理解并运用Node中的IO模型流

在 NodeJs 中,流随处可见,读/写文件流,HTTP请求/返回流,stdin/stdout流。理解并运用好流会让你的Node更具力量。Streamlib/_stream_readable.jslib/_stream_writable.jslib/_stream_tranform.jslib/_stream_duplex.js流主要有可读…

android状态机是线程么,Java中的线程状态机 - java

有没有一种方法可以将线程保留在状态中等待更改?我的意思是,等一下事情发生了(更改var,调用方法等)。也许它需要使用事件监听器或同步的对象/方法。这样的状态机通常的方法statemachine example它使用一个do {..} while(true)循环&#xff0c…

C 线程的创建

前言线程创建很容易,直接调用std::thread,就创建一个新线程了。该线程拿到任务后立即开始执行。线程的创建者(父线程)必须管理创建的线程(子线程),应该等到子线程完成其任务或者让子线程从自己身…

apache karaf_未来是Apache Karaf上的微服务架构

apache karaf这是Jamie Goodyear的客座博客文章( 博客 , icbts )。 他是Savoir Technologies的开源倡导者,Apache开发人员和计算机系统分析师; 他为全球大型组织设计,批判和支持了体系结构。 他拥有纽芬兰…