第 100 章 FHIR Component
作为 Camel 版本 2.23 可用
FHIR 组件与 HAPI-FHIR 库集成,它是 Java 中 FHIR (Fast healthcare Interoperability Resources)规范的开源实现。
Maven 用户需要将以下依赖项添加到其 pom.xml 中:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-fhir</artifactId> <version>${camel-version}</version> </dependency>
100.1. URI 格式
FHIR 组件使用以下 URI 格式:
fhir://endpoint-prefix/endpoint?[options]
端点前缀可以是以下之一:
- 功能
- create
- delete
- history
- load-page
- meta
- operation
- patch
- 读取
- search
- 事务
- update
- validate
FHIR 组件支持 2 个选项,它们如下所列。
Name | 描述 | 默认 | 类型 |
---|---|---|---|
配置 (通用) | 使用共享配置 | FhirConfiguration | |
resolveProperty Placeholders (advanced) | 启动时,组件是否应自行解析属性占位符。只有 String 类型的属性才能使用属性占位符。 | true | 布尔值 |
FHIR 端点使用 URI 语法进行配置:
fhir:apiName/methodName
使用以下路径和查询参数:
100.1.1. 路径名(2 参数):
Name | 描述 | 默认 | 类型 |
---|---|---|---|
apiName | 需要 什么操作才能执行 | FhirApiName | |
methodName | 所选操作需要什么子操作 | 字符串 |
100.1.2. 查询参数(26 参数):
Name | 描述 | 默认 | 类型 |
---|---|---|---|
编码 (通用) | 用于所有请求的编码 | 字符串 | |
fhirVersion (common) | 要使用的 FHIR 版本 | DSTU3 | 字符串 |
inBody (common) | 设置在 Exchange In Body 中传递的参数名称 | 字符串 | |
日志 (通用) | 将记录每个请求和响应 | false | 布尔值 |
prettyPrint (common) | 以用户的形式打印所有请求 | false | 布尔值 |
serverUrl (common) | FHIR 服务器基本 URL | 字符串 | |
bridgeErrorHandler (consumer) | 允许将消费者桥接到 Camel 路由 Error Handler,这意味着使用者试图获取传入消息或类似信息时出现任何异常,现在将作为一个消息进行处理,并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.Exception 处理程序处理异常,该处理程序将记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
exceptionHandler (消费者) | 要让使用者使用自定义 ExceptionHandler。请注意,如果启用了选项 bridgeErrorHandler,则不使用这个选项。默认情况下,消费者处理异常,这将在 WARN 或 ERROR 级别记录,并忽略。 | ExceptionHandler | |
exchangePattern (consumer) | 在使用者创建交换时设置交换模式。 | ExchangePattern | |
压缩 (高级) | 将传出(POST/PUT)内容压缩为 GZIP 格式 | false | 布尔值 |
connectionTimeout (advanced) | 试用和建立初始 TCP 连接所需的时间(以 ms 为单位) | 10000 | 整数 |
deferModelScanning (高级) | 如果设置了此选项,则在实际访问给定类型的子列表之前,不会扫描子类。 | false | 布尔值 |
fhirContext (高级) | FhirContext 是一个要创建的昂贵对象。为了避免创建多个实例,可以直接设置它。 | FhirContext | |
forceConformanceCheck (advanced) | 强制一致性检查 | false | 布尔值 |
sessionCookie (高级) | 要添加到每个请求的 HTTP 会话 Cookie | 字符串 | |
socketTimeout (advanced) | 单个读/写操作(以毫秒为单位) | 10000 | 整数 |
概述 (高级) | 请求服务器使用 _summary param 修改响应 | 字符串 | |
同步 (高级) | 设置同步处理是否应当严格使用,还是允许 Camel 使用异步处理(如果受支持)。 | false | 布尔值 |
validationMode (advanced) | 当 Camel 验证 FHIR 服务器规范时 | 旦 | 字符串 |
proxyHost (proxy) | 代理主机 | 字符串 | |
proxyPassword (proxy) | 代理密码 | 字符串 | |
proxyPort (proxy) | 代理端口 | 整数 | |
proxyUser (proxy) | 代理用户名 | 字符串 | |
accessToken (安全) | OAuth 访问令牌 | 字符串 | |
密码 (安全) | 用于基本身份验证的用户名 | 字符串 | |
用户名 (安全性) | 用于基本身份验证的用户名 | 字符串 |