105.6. API 参数(1 API)
Olingo4 端点是基于 API 的组件,它基于使用 API 名称和 API 方法的其他参数。API name 和 API 方法位于端点 URI 中,作为 apiName/methodName 路径参数:
olingo4:apiName/methodName
下表列出 1 API 名称:
| API 名称 | 类型 | 描述 |
|---|---|---|
| 两者 | Olingo4 Client Api Interface |
每个 API 均记录在以下部分中。
105.6.1. API: DEFAULT 复制链接链接已复制到粘贴板!
支持生成者和消费者
DEFAULT API 语法定义如下:
olingo4:DEFAULT/methodName?[parameters]
下表中列出了 9 种方法,以及每种方法的详细语法。(API 方法可以有一个简写 别名名称,可在语法而不是名称中使用。)
| 方法 | Alias | 描述 |
|---|---|---|
| 调用 OData 操作 | ||
| 执行批处理请求 | ||
| 创建新的 OData 资源 | ||
| 删除 OData 资源并使用机构调用回调 | ||
| 使用 HTTP MERGE 的补丁/出现 OData 资源 | ||
| 使用 HTTP PATCH 补丁/出现 OData 资源 | ||
| 读取 OData 资源,并使用适当的结果调用回调 | ||
| 更新 OData 资源 | ||
| 读取 OData 资源,并使用未解析的输入流调用回调 |
105.6.1.1. 方法操作 复制链接链接已复制到粘贴板!
signatures:
- void action (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/action API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 操作数据 | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | 操作的资源路径 | 字符串 |
| responseHandler | org.apache.olingo.client.api.domain.ClientEntity 回调处理器 | Olingo4ResponseHandler |
105.6.1.2. method batch 复制链接链接已复制到粘贴板!
signatures:
- void batch (org.apache.olingo.commons.api.edm.Edm edm, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler<java.util.List<org.apache.camel.component.olingo4.api.batch.Olingo4BatchResponse>Handler;
olingo4/batch API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 排序 org.apache.camel.component.olingo4.api.batch.Olingo4BatchRequest list | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| responseHandler | 回调处理器 | Olingo4ResponseHandler |
105.6.1.3. 方法创建 复制链接链接已复制到粘贴板!
signatures:
- void create (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/create API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 请求数据 | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | 要创建的资源路径 | 字符串 |
| responseHandler | 回调处理器 | Olingo4ResponseHandler |
105.6.1.4. 方法删除 复制链接链接已复制到粘贴板!
signatures:
- void delete (String resourcePath, java.util.Map<String, String> endpointHttpHeaders, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler<org.apache.olingo.commons.api.http.HttpStatusCode> responseHandler);
olingo4/delete API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | Entry 的资源路径 | 字符串 |
| responseHandler | Org.apache.olingo.commons.api.http.HttpStatusCode callback handler | Olingo4ResponseHandler |
105.6.1.5. 方法合并 复制链接链接已复制到粘贴板!
signatures:
- void merge (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/merge API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 补丁/紧急数据 | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | 要更新的资源路径 | 字符串 |
| responseHandler | org.apache.olingo.client.api.domain.ClientEntity 回调处理器 | Olingo4ResponseHandler |
105.6.1.6. 方法补丁 复制链接链接已复制到粘贴板!
signatures:
- void patch (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/patch API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 补丁/紧急数据 | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | 要更新的资源路径 | 字符串 |
| responseHandler | org.apache.olingo.client.api.domain.ClientEntity 回调处理器 | Olingo4ResponseHandler |
105.6.1.7. 方法读取 复制链接链接已复制到粘贴板!
signatures:
- void read (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> queryParams, java.util.Map<String, String> endpointHttpHeaders, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/read API 方法具有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| edm | 服务 Edm,从调用 read (null, $metdata, null, responseHandler) | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| queryParams | OData 查询参数 http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map |
| resourcePath | OData 资源路径 | 字符串 |
| responseHandler | 回调处理器 | Olingo4ResponseHandler |
105.6.1.8. 方法更新 复制链接链接已复制到粘贴板!
signatures:
- void update (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> endpointHttpHeaders, Object data, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler responseHandler);
olingo4/update API 方法有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| data | 更新的数据 | 对象 |
| edm | 服务 Edm | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| resourcePath | 要更新的资源路径 | 字符串 |
| responseHandler | org.apache.olingo.client.api.domain.ClientEntity 回调处理器 | Olingo4ResponseHandler |
105.6.1.9. 方法 uread 复制链接链接已复制到粘贴板!
signatures:
- void uread (org.apache.olingo.commons.api.edm.Edm edm, String resourcePath, java.util.Map<String, String> queryParams, java.util.Map<String, String> endpointHttpHeaders, org.apache.camel.component.olingo4.api.Olingo4ResponseHandler<java.io.InputStream>Handler);
olingo4/uread API 方法有下表中列出的参数:
| 参数 | 描述 | 类型 |
|---|---|---|
| edm | 服务 Edm,从调用 read (null, $metdata, null, responseHandler) | eDM |
| endpointHttpHeaders | 用于添加/覆盖组件版本的 HTTP 标头 | Map |
| queryParams | OData 查询参数 http://docs.oasis-open.org/odata/odata/v4.0/odata-v4.0-part1-protocol.html#_Toc453752288 | Map |
| resourcePath | OData 资源路径 | 字符串 |
| responseHandler | 回调处理器 | Olingo4ResponseHandler |
除了以上参数外,olingo4 API 也可以使用上面列出的任何 Query 参数。
任何参数都可以在端点 URI 中提供,或者在消息标头中动态提供。消息标头名称必须是 CamelOlingo4.parameter 的格式。inBody 参数覆盖消息标头,即 Body=myParameterNameHere 中的端点参数将覆盖 CamelOlingo4.myParameterNameHere 标头。