AWS端点上的骆驼路由超时连接

时间:2019-08-16 16:23:55

标签: kotlin apache-camel apache-camel-aws

我在kotlin中有一条骆驼路线,可以从s3存储桶下载文件,因为无法删除存储桶中的文件,所以我使用idempotentConsumer,问题是在下载了少量文件后,我开始得到:com.amazonaws.http.AmazonHttpClient -无法执行HTTP请求:等待连接超时。我发现我需要关闭S3ObjectInputStream,但不确定执行错误还是应该在哪里关闭。

            from("aws-s3://$bucketName?accessKey=RAW($s3AccessKey)&secretKey=RAW($s3SecretKey)&region=$s3Region&deleteAfterRead=$deleteAfterRead&prefix=$prefix")
                    .idempotentConsumer(header("CamelAwsS3Key"), FileIdempotentRepository.fileIdempotentRepository(File(transporter.cacheRepo!!), 250, 512000))
                    .setHeader("fileName", simple("header.CamelAwsS3Key"))
                    .process {
                       it.`in`.getBody(S3ObjectInputStream::class.java).close()
                                              }
                    .to("file:$mutualPath/?fileName=\${header.fileName}")
                    .log("File name set to \${header.CamelAwsS3Key}")

0 个答案:

没有答案