# ---------------------------------------------------------------------------
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License.  You may obtain a copy of the License at
#
#      http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# ---------------------------------------------------------------------------

apiVersion: camel.apache.org/v1
kind: Kamelet
metadata:
  name: aws-timestream-query-sink
  annotations:
    camel.apache.org/kamelet.support.level: "Preview"
    camel.apache.org/catalog.version: "4.6.0-SNAPSHOT"
    camel.apache.org/kamelet.icon: "data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz4KPHN2ZyB3aWR0aD0iMjU2cHgiIGhlaWdodD0iMjU2cHgiIHZpZXdCb3g9IjAgMCAyNTYgMjU2IiB2ZXJzaW9uPSIxLjEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHByZXNlcnZlQXNwZWN0UmF0aW89InhNaWRZTWlkIj4KICAgIDx0aXRsZT5BV1MgVGltZXN0cmVhbTwvdGl0bGU+CiAgICA8ZGVmcz4KICAgICAgICA8bGluZWFyR3JhZGllbnQgeDE9IjAlIiB5MT0iMTAwJSIgeDI9IjEwMCUiIHkyPSIwJSIgaWQ9ImxpbmVhckdyYWRpZW50LTEiPgogICAgICAgICAgICA8c3RvcCBzdG9wLWNvbG9yPSIjMkUyN0FEIiBvZmZzZXQ9IjAlIj48L3N0b3A+CiAgICAgICAgICAgIDxzdG9wIHN0b3AtY29sb3I9IiM1MjdGRkYiIG9mZnNldD0iMTAwJSI+PC9zdG9wPgogICAgICAgIDwvbGluZWFyR3JhZGllbnQ+CiAgICA8L2RlZnM+CiAgICA8Zz4KICAgICAgICA8cmVjdCBmaWxsPSJ1cmwoI2xpbmVhckdyYWRpZW50LTEpIiB4PSIwIiB5PSIwIiB3aWR0aD0iMjU2IiBoZWlnaHQ9IjI1NiI+PC9yZWN0PgogICAgICAgIDxwYXRoIGQ9Ik0xOTQuOTQyMjM3LDE2Ny4zMzc2IEwxOTkuMDQ3MTU1LDE2My4yIEwxNzkuOTk4ODEsMTYzLjIgTDE3NC45NjM2OTcsMTU4LjEyNDggTDE2NS40Mzk1MjQsMTY3LjcyNDggTDEzNy43OTcxOTksMTM5Ljg2MjQgTDE0Mi4yODYyNiwxMzUuMzM3NiBMMTY1LjQzOTUyNCwxNTguNjc1MiBMMTc0Ljk2MzY5NywxNDkuMDc1MiBMMTgyLjYyNzQ4MSwxNTYuOCBMMTk5LjA0NzE1NSwxNTYuOCBMMTk0Ljk0MjIzNywxNTIuNjYyNCBMMTk5LjQzMTI5NywxNDguMTM3NiBMMjExLjIsMTYwIEwxOTkuNDMxMjk3LDE3MS44NjI0IEwxOTQuOTQyMjM3LDE2Ny4zMzc2IFogTTE2NS40Mzk1MjQsMTE3LjA3NTIgTDE3MC40NzQ2MzYsMTEyIEwxODAuNTE2MjksMTEyIEwxOTAuMDI0NTg5LDEyMi42NjI0IEwxODUuMzAwNTk5LDEyNi45Mzc2IEwxNzcuNjg3NjEsMTE4LjQgTDE3My4xMDMzMDgsMTE4LjQgTDE2NS40Mzk1MjQsMTI2LjEyNDggTDE1Ny43NzU3MzksMTE4LjQgTDE0MC4wNDE3MjksMTE4LjQgTDE0MC4wNDE3MjksMTEyIEwxNjAuNDA0NDExLDExMiBMMTY1LjQzOTUyNCwxMTcuMDc1MiBaIE0xOTkuMDQ3MTU1LDExNS4yIEwxOTQuMDEyMDQzLDExNS4yIEwxOTQuMDEyMDQzLDEwOC44IEwyMDkuODg1NjY0LDEwOC44IEwyMDkuODg1NjY0LDEyNC44IEwyMDMuNTM2MjE1LDEyNC44IEwyMDMuNTM2MjE1LDExOS43MjQ4IEwxOTUuMzI2Mzc5LDEyOCBMMjAzLjUzNjIxNSwxMzYuMjc1MiBMMjAzLjUzNjIxNSwxMzEuMiBMMjA5Ljg4NTY2NCwxMzEuMiBMMjA5Ljg4NTY2NCwxNDcuMiBMMTk0LjAxMjA0MywxNDcuMiBMMTk0LjAxMjA0MywxNDAuOCBMMTk5LjA0NzE1NSwxNDAuOCBMMTkwLjgzNzMxOCwxMzIuNTI0OCBMMTgyLjYyNzQ4MSwxNDAuOCBMMTYzLjU3OTEzNSwxNDAuOCBMMTU4LjE1OTg4MSwxNDYuMjYyNCBMMTUzLjY3MDgyMSwxNDEuNzM3NiBMMTYwLjk1MDQ2NCwxMzQuNCBMMTc5Ljk5ODgxLDEzNC40IEwxOTkuMDQ3MTU1LDExNS4yIFogTTEzNy43OTcxOTksMTU3LjczNzYgTDE0NC4xNDY2NDgsMTUxLjMzNzYgTDE0OC42MzU3MDgsMTU1Ljg2MjQgTDE0Mi4yODYyNiwxNjIuMjYyNCBMMTM3Ljc5NzE5OSwxNTcuNzM3NiBaIE0xMDUuMTE5NzYyLDQ0LjggQzEzNi45MjczMjUsNDQuOCAxNTkuMDkwMDc1LDU0LjkxODQgMTU5LjA5MDA3NSw2NCBDMTU5LjA5MDA3NSw3My4wODE2IDEzNi45MjczMjUsODMuMiAxMDUuMTE5NzYyLDgzLjIgQzczLjMxMjE5OSw4My4yIDUxLjE0OTQ0ODYsNzMuMDgxNiA1MS4xNDk0NDg2LDY0IEM1MS4xNDk0NDg2LDU0LjkxODQgNzMuMzEyMTk5LDQ0LjggMTA1LjExOTc2Miw0NC44IEwxMDUuMTE5NzYyLDQ0LjggWiBNMTM2Ljg2NzAwNSwxMDUuNiBMMTMwLjUxNzU1NiwxMDUuNiBMMTMwLjUxNzU1NiwxNzYgQzEzMC41MTc1NTYsMTc3Ljc2NjQgMTMxLjkzNjY1OCwxNzkuMiAxMzMuNjkyMjgxLDE3OS4yIEwxNTkuMDkwMDc1LDE3OS4yIEwxNTkuMDkwMDc1LDE5MiBDMTU5LjA5MDA3NSwyMDEuMDgxNiAxMzYuOTI3MzI1LDIxMS4yIDEwNS4xMTk3NjIsMjExLjIgQzc0LjMyNDkzNiwyMTEuMiA1MS4xNDk0NDg2LDIwMC4wNjcyIDUxLjE0OTQ0ODYsMTkyLjg0OCBMNTEuMTQ5NDQ4NiwxNjguNTU2OCBDNjAuODU0NTgwOCwxNzYuOTA4OCA4MC44NTUzNDQsMTgyLjQgMTA1LjExOTc2MiwxODIuNCBDMTEzLjAwNTc3NywxODIuNCAxMjAuNjY2Mzg3LDE4MS43OTUyIDEyNy44NzkzNiwxODAuNTk4NCBMMTI2Ljg1MDc1LDE3NC4yODE2IEMxMTkuOTc0Mjk3LDE3NS40MjA4IDExMi42NjI5MDcsMTc2IDEwNS4xMTk3NjIsMTc2IEM3My4zMTIxOTksMTc2IDUxLjE0OTQ0ODYsMTY1Ljg4MTYgNTEuMTQ5NDQ4NiwxNTYuOCBMNTEuMTQ5NDQ4NiwxMjMuNzU2OCBDNjAuODU0NTgwOCwxMzIuMTA4OCA4MC44NTUzNDQsMTM3LjYgMTA1LjExOTc2MiwxMzcuNiBDMTEzLjAwNTc3NywxMzcuNiAxMjAuNjY2Mzg3LDEzNi45OTUyIDEyNy44NzkzNiwxMzUuNzk4NCBMMTI2Ljg1MDc1LDEyOS40ODE2IEMxMTkuOTc0Mjk3LDEzMC42MjA4IDExMi42NjI5MDcsMTMxLjIgMTA1LjExOTc2MiwxMzEuMiBDNzMuMzEyMTk5LDEzMS4yIDUxLjE0OTQ0ODYsMTIxLjA4MTYgNTEuMTQ5NDQ4NiwxMTIgTDUxLjE0OTQ0ODYsNzUuNzU2OCBDNjAuODU0NTgwOCw4NC4xMDg4IDgwLjg1NTM0NCw4OS42IDEwNS4xMTk3NjIsODkuNiBDMTI5LjM4NDE4LDg5LjYgMTQ5LjM4NDk0Myw4NC4xMDg4IDE1OS4wOTAwNzUsNzUuNzU2OCBMMTU5LjA5MDA3NSwxMDguOCBMMTY1LjQzOTUyNCwxMDguOCBMMTY1LjQzOTUyNCw2NCBDMTY1LjQzOTUyNCw0OS40MDQ4IDEzOS41MDgzNzYsMzguNCAxMDUuMTE5NzYyLDM4LjQgQzcwLjczMTE0ODIsMzguNCA0NC44LDQ5LjQwNDggNDQuOCw2NCBMNDQuOCwxOTIuODQ4IEM0NC44LDIwNi4wMzIgNzIuOTg4Mzc3MywyMTcuNiAxMDUuMTE5NzYyLDIxNy42IEMxMzkuNTA4Mzc2LDIxNy42IDE2NS40Mzk1MjQsMjA2LjU5NTIgMTY1LjQzOTUyNCwxOTIgTDE2NS40Mzk1MjQsMTc5LjIgTDIwOS44ODU2NjQsMTc5LjIgTDIwOS44ODU2NjQsMTcyLjggTDEzNi44NjcwMDUsMTcyLjggTDEzNi44NjcwMDUsMTA1LjYgWiIgZmlsbD0iI0ZGRkZGRiI+PC9wYXRoPgogICAgPC9nPgo8L3N2Zz4="
    camel.apache.org/provider: "Apache Software Foundation"
    camel.apache.org/kamelet.group: "AWS Timestream"
    camel.apache.org/kamelet.namespace: "AWS"
  labels:
    camel.apache.org/kamelet.type: sink
spec:
  definition:
    title: AWS Timestream Query Sink
    description: |-
      Query an AWS Timestream Database

      Access Key/Secret Key are the basic method for authenticating to the AWS Timestream Service. These parameters are optional because the Kamelet provides the 'useDefaultCredentialsProvider'.
      
      When using a default Credentials Provider the Timestream client will load the credentials through this provider and won't use the static credential. This is reason for not having the access key and secret key as mandatory parameter for this Kamelet.

      The Kamelet expects the following headers to be set:

      - `query` / `ce-query`: as a Timestream Query
    required:
      - region
    type: object
    properties:
      accessKey:
        title: Access Key
        description: The access key obtained from AWS.
        type: string
        format: password
        x-descriptors:
        - urn:camel:group:credentials
      secretKey:
        title: Secret Key
        description: The secret key obtained from AWS.
        type: string
        format: password
        x-descriptors:
        - urn:camel:group:credentials
      region:
        title: AWS Region
        description: The AWS region to access.
        type: string
        enum: ["ap-south-1", "eu-south-1", "us-gov-east-1", "me-central-1", "ca-central-1", "eu-central-1", "us-iso-west-1", "us-west-1", "us-west-2", "af-south-1", "eu-north-1", "eu-west-3", "eu-west-2", "eu-west-1", "ap-northeast-3", "ap-northeast-2", "ap-northeast-1", "me-south-1", "sa-east-1", "ap-east-1", "cn-north-1", "us-gov-west-1", "ap-southeast-1", "ap-southeast-2", "us-iso-east-1", "ap-southeast-3", "us-east-1", "us-east-2", "cn-northwest-1", "us-isob-east-1", "aws-global", "aws-cn-global", "aws-us-gov-global", "aws-iso-global", "aws-iso-b-global"]
      useDefaultCredentialsProvider:
        title: Default Credentials Provider
        description: If true, the CloudWatch client loads credentials through a default credentials provider. If false, it uses the basic authentication method (access key and secret key).
        type: boolean
        default: false
      uriEndpointOverride:
        title: Overwrite Endpoint URI
        description: The overriding endpoint URI. To use this option, you must also select the `overrideEndpoint` option.
        type: string
      overrideEndpoint:
        title: Endpoint Overwrite
        description: Select this option to override the endpoint URI. To use this option, you must also provide a URI for the `uriEndpointOverride` option.
        type: boolean
        default: false
  dependencies:
    - "camel:core"
    - "camel:aws2-timestream"
    - "camel:kamelet"
  template:
    from:
      uri: kamelet:source
      steps:
      - choice:
          when:
          - simple: "${header[query]}"
            steps:
            - setHeader:
                name: CamelAwsTimestreamQueryString
                simple: "${header[query]}"
          - simple: "${header[ce-query]}"
            steps:
            - setHeader:
                name: CamelAwsTimestreamQueryString
                simple: "${header[ce-query]}"
      - to:
          uri: "aws2-timestream:query"
          parameters:
            accessKey: "{{?accessKey}}"
            secretKey: "{{?secretKey}}"
            region: "{{region}}"
            operation: "query"
            useDefaultCredentialsProvider: "{{useDefaultCredentialsProvider}}"
            uriEndpointOverride: "{{?uriEndpointOverride}}"
            overrideEndpoint: "{{overrideEndpoint}}"
