35.14. Spring Boot Auto-Configuration
当将 minio 与 Spring Boot 搭配使用时,请确保使用以下 Maven 依赖项来支持自动配置:
<dependency>
<groupId>org.apache.camel.springboot</groupId>
<artifactId>camel-minio-starter</artifactId>
</dependency>
组件支持 48 个选项,如下所列。
| 名称 | Description | 默认 | 类型 |
|---|---|---|---|
| camel.component.minio.access-key | Amazon AWS Secret Access Key 或 Minio Access Key。如果没有设置 camel 将连接到 service 以进行匿名访问。 | 字符串 | |
| camel.component.minio.auto-close-body | 如果此选项为 true,且 includeBody 为 true,则在交换完成时调用 MinioObject.close ()方法。这个选项与 includeBody 选项相关。如果将 includeBody 设为 true,autocloseBody 为 false,它将是关闭 MinioObject 流的调用者。将 autocloseBody 设置为 true,将自动关闭 MinioObject 流。 | true | 布尔值 |
| camel.component.minio.auto-create-bucket | 如果存储桶名称不存在,设置存储桶的自动创建。 | true | 布尔值 |
| camel.component.minio.autowired-enabled | 是否启用自动。这用于自动自动自动选项(选项必须标记为 autowired),方法是在 registry 中查找是否有匹配的类型实例,然后在组件上进行配置。这可用于自动配置 JDBC 数据源、JMS 连接工厂、AWS 客户端等。 | true | 布尔值 |
| camel.component.minio.bridge-error-handler | 允许将消费者桥接到 Camel 路由 Error Handler,这意味着使用者试图获取传入消息或类似信息时出现任何异常,现在将作为一个消息进行处理,并由路由 Error Handler 处理。默认情况下,使用者将使用 org.apache.camel.spi.Exception 处理程序处理异常,该处理程序将记录在 WARN 或 ERROR 级别,并忽略。 | false | 布尔值 |
| camel.component.minio.bypass-governance-mode | 如果要在删除特定对象时绕过GovernanceMode,请设置此标志。 | false | 布尔值 |
| camel.component.minio.configuration | 组件配置。选项是 org.apache.camel.component.minio.MinioConfiguration 类型。 | MinioConfiguration | |
| camel.component.minio.custom-http-client | 为经过身份验证的用户设置自定义 HTTP 客户端。选项是一个 okhttp3.OkHttpClient 类型。 | OkHttpClient | |
| camel.component.minio.delete-after-read | 在获得对象后,从 Minio 删除对象。只有提交 Exchange 时才会执行删除。如果进行回滚,则对象不会被删除。如果此选项为 false,则同一对象将会反复检索,并再次在轮询上再次进行。因此,您需要在路由中使用 Idempotent Consumer EIP 来过滤重复的。您可以使用 MinioConstants#BUCKET_NAME 和 MinioConstants#OBJECT_NAME 标头或只过滤 MinioConstants#OBJECT_NAME 标头。 | true | 布尔值 |
| camel.component.minio.delete-after-write | 在 Minio 文件上传后删除文件对象。 | false | 布尔值 |
| camel.component.minio.delimiter | ListObjectsRequest 中使用的分隔符来仅使用我们感兴趣的对象。 | 字符串 | |
| camel.component.minio.destination-bucket-name | 源存储桶名称。 | 字符串 | |
| camel.component.minio.destination-object-name | 源对象名称。 | 字符串 | |
| camel.component.minio.enabled | 是否启用 minio 组件的自动配置。默认启用。 | 布尔值 | |
| camel.component.minio.endpoint | 端点可以是 URL、域名、IPv4 地址或 IPv6 地址。 | 字符串 | |
| camel.component.minio.include-body | 如果为 true,则交换正文将设置为指向文件内容的流。如果为 false,则标头将使用 Minio 对象元数据设置,但正文将为 null。这个选项与 autocloseBody 选项相关。如果将 includeBody 设为 true,autocloseBody 为 false,它将是关闭 MinioObject 流的调用者。将 autocloseBody 设置为 true,将自动关闭 MinioObject 流。 | true | 布尔值 |
| camel.component.minio.include-folders | 在 ListObjectsRequest 中使用的标记来设置 include 文件夹。 | false | 布尔值 |
| camel.component.minio.include-user-metadata | ListObjectsRequest 中使用的标记来获取带有用户 meta 数据的对象。 | false | 布尔值 |
| camel.component.minio.include-versions | ListObjectsRequest 中使用的标记来获取具有版本控制的对象。 | false | 布尔值 |
| camel.component.minio.key-name | 通过 endpoint 参数设置 bucket 中元素的键名称。 | 字符串 | |
| camel.component.minio.lazy-start-producer | 制作者是否应该启动 lazy(在第一个消息上)。通过启动 lazy,您可以使用它来允许 CamelContext 和路由在启动期间启动,否则在启动期间出现问题,并导致路由启动失败。通过将这个启动延迟到 lazy 后,可以在通过 Camel 的路由错误处理程序路由消息期间处理启动失败。注意在处理第一个消息时,创建并启动制作者可能花费较少的时间,从而延长处理的总处理时间。 | false | 布尔值 |
| camel.component.minio.length | 来自偏移的对象数据的字节数。 | Long | |
| camel.component.minio.match-e-tag | 为 get 对象设置 match ETag 参数。 | 字符串 | |
| camel.component.minio.max-connections | 在 minio 客户端配置中设置 maxConnections 参数。 | 60 | 整数 |
| camel.component.minio.max-messages-per-poll | 获取在每次轮询时轮询的最大消息数量。获取在每次轮询时轮询的最大消息数量。默认值为 10。使用 0 或负数值将其设置为无限。 | 10 | 整数 |
| camel.component.minio.minio-client | 对 registry 中的 Minio Client 对象的引用。选项是 io.minio.MinioClient 类型。 | MinioClient | |
| camel.component.minio.modified-since | 设置自 get 对象的修改后参数。选项是一个 java.time.ZonedDateTime 类型。 | ZonedDateTime | |
| camel.component.minio.move-after-read | 在对象检索后,将对象从存储桶移到不同的存储桶。要完成此操作,必须设置 destinationBucket 选项。只有在 Exchange 被提交时,才会执行复制存储桶操作。如果进行回滚,则对象不会被移动。 | false | 布尔值 |
| camel.component.minio.not-match-e-tag | 为 get 对象设置不匹配 ETag 参数。 | 字符串 | |
| camel.component.minio.object-lock | 在创建新存储桶时设置。 | false | 布尔值 |
| camel.component.minio.object-name | 要从具有给定对象名称的存储桶获取对象。 | 字符串 | |
| camel.component.minio.offset | 对象数据的开始字节位置。 | Long | |
| camel.component.minio.operation | 当用户不想只进行上传时,要执行的操作。 | MinioOperations | |
| camel.component.minio.pojo-request | 如果我们想要将 POJO 请求用作正文或非其要求。 | false | 布尔值 |
| camel.component.minio.policy | 此队列的策略在方法中设置。 | 字符串 | |
| camel.component.minio.prefix | 对象名称以前缀开头。 | 字符串 | |
| camel.component.minio.proxy-port | TCP/IP 端口号。80 和 443 是 HTTP 和 HTTPS 的默认值。 | 整数 | |
| camel.component.minio.recursive | 递归列出比目录结构模拟递归列表。 | false | 布尔值 |
| camel.component.minio.region | Minio 客户端需要工作的区域。使用此参数时,配置将预期区域的小写名称(如 ap-east-1)。您需要使用名称 Region.EU_WEST_1.id ()。 | 字符串 | |
| camel.component.minio.secret-key | Amazon AWS Access Key Id 或 Minio Secret 密钥。如果没有设置 camel 将连接到 service 以进行匿名访问。 | 字符串 | |
| camel.component.minio.secure | 指明使用安全连接到 minio 服务的标志。 | false | 布尔值 |
| camel.component.minio.server-side-encryption | 服务器端加密.选项是 io.minio.ServerSideEncryption 类型。 | ServerSideEncryption | |
| camel.component.minio.server-side-encryption-customer-key | 在复制/移动对象时源对象的服务器端加密。选项是一个 io.minio.ServerSideEncryptionCustomerKey 类型。 | ServerSideEncryptionCustomerKey | |
| camel.component.minio.start-after | 在此对象名称后列出存储桶中的对象。 | 字符串 | |
| camel.component.minio.storage-class | 在请求中设置的存储类。 | 字符串 | |
| camel.component.minio.un-modified-since | 设置未修改的,因为 get 对象的参数。选项是一个 java.time.ZonedDateTime 类型。 | ZonedDateTime | |
| camel.component.minio.use-version1 | 为 true 时,使用 REST API 版本 1。 | false | 布尔值 |
| camel.component.minio.version-id | 在删除对象时设置对象的特定版本_ID。 | 字符串 |