---
apiVersion: v1
kind: ConfigMap
metadata:
  labels:
    funktion.fabric8.io/kind: Connector
  name: salesforce
data:
  deployment.yml: |
    ---
    apiVersion: extensions/v1beta1
    kind: Deployment
    metadata:
      labels:
        funktion.fabric8.io/kind: Subscription
        connector: salesforce
    spec:
      replicas: 1
      template:
        metadata:
          labels:
            funktion.fabric8.io/kind: Subscription
            connector: salesforce
        spec:
          containers:
          - image: funktion/connector-salesforce:${project.version}
            name: connector
  schema.yml: |
    ---
    component:
      kind: component
      scheme: salesforce
      syntax: salesforce:operationName:topicName
      title: Salesforce
      description: The salesforce component is used for integrating Camel with the massive Salesforce API.
      label: api,cloud,crm
      deprecated: false
      async: false
      javaType: org.apache.camel.component.salesforce.SalesforceComponent
      groupId: org.apache.camel
      artifactId: camel-salesforce
      version: 2.18.3
    componentProperties:
      loginConfig:
        kind: property
        type: object
        javaType: org.apache.camel.component.salesforce.SalesforceLoginConfig
        deprecated: false
        secret: false
        description: To use the shared SalesforceLoginConfig as login configuration
        order: 0
      config:
        kind: property
        type: object
        javaType: org.apache.camel.component.salesforce.SalesforceEndpointConfig
        deprecated: false
        secret: false
        description: To use the shared SalesforceLoginConfig as configuration
        order: 1
      httpClientProperties:
        kind: property
        type: object
        javaType: java.util.Map<java.lang.String,java.lang.Object>
        deprecated: false
        secret: false
        description: Used for configuring HTTP client properties as key/value pairs
        order: 2
      sslContextParameters:
        kind: property
        type: object
        javaType: org.apache.camel.util.jsse.SSLContextParameters
        deprecated: false
        secret: false
        description: To configure security using SSLContextParameters
        order: 3
      httpProxyHost:
        kind: property
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: To configure HTTP proxy host
        order: 4
      httpProxyPort:
        kind: property
        type: integer
        javaType: java.lang.Integer
        deprecated: false
        secret: false
        description: To configure HTTP proxy port
        order: 5
      httpProxyUsername:
        kind: property
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: To configure HTTP proxy username
        order: 6
      httpProxyPassword:
        kind: property
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: To configure HTTP proxy password
        order: 7
      isHttpProxySocks4:
        kind: property
        type: boolean
        javaType: boolean
        deprecated: false
        secret: false
        description: Enable for Socks4 proxy false by default
        order: 8
      isHttpProxySecure:
        kind: property
        type: boolean
        javaType: boolean
        deprecated: false
        secret: false
        description: Enable for TLS connections true by default
        order: 9
      httpProxyIncludedAddresses:
        kind: property
        type: object
        javaType: java.util.Set<java.lang.String>
        deprecated: false
        secret: false
        description: HTTP proxy included addresses
        order: 10
      httpProxyExcludedAddresses:
        kind: property
        type: object
        javaType: java.util.Set<java.lang.String>
        deprecated: false
        secret: false
        description: HTTP proxy excluded addresses
        order: 11
      httpProxyAuthUri:
        kind: property
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: HTTP proxy authentication URI
        order: 12
      httpProxyRealm:
        kind: property
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: HTTP proxy authentication realm
        order: 13
      httpProxyUseDigestAuth:
        kind: property
        type: boolean
        javaType: boolean
        deprecated: false
        secret: false
        description: Use HTTP proxy Digest authentication false by default
        order: 14
      packages:
        kind: property
        type: array
        javaType: java.lang.String[]
        deprecated: false
        secret: false
        description: Package names to scan for DTO classes (multiple packages can be separated by comma).
        order: 15
    properties:
      operationName:
        kind: path
        group: common
        type: string
        javaType: org.apache.camel.component.salesforce.internal.OperationName
        enum:
        - GET_VERSIONS
        - GET_RESOURCES
        - GET_GLOBAL_OBJECTS
        - GET_BASIC_INFO
        - GET_DESCRIPTION
        - GET_SOBJECT
        - CREATE_SOBJECT
        - UPDATE_SOBJECT
        - DELETE_SOBJECT
        - GET_SOBJECT_WITH_ID
        - UPSERT_SOBJECT
        - DELETE_SOBJECT_WITH_ID
        - GET_BLOB_FIELD
        - QUERY
        - QUERY_MORE
        - QUERY_ALL
        - SEARCH
        - APEX_CALL
        - CREATE_JOB
        - GET_JOB
        - CLOSE_JOB
        - ABORT_JOB
        - CREATE_BATCH
        - GET_BATCH
        - GET_ALL_BATCHES
        - GET_REQUEST
        - GET_RESULTS
        - CREATE_BATCH_QUERY
        - GET_QUERY_RESULT_IDS
        - GET_QUERY_RESULT
        - GET_RECENT_REPORTS
        - GET_REPORT_DESCRIPTION
        - EXECUTE_SYNCREPORT
        - EXECUTE_ASYNCREPORT
        - GET_REPORT_INSTANCES
        - GET_REPORT_RESULTS
        deprecated: false
        secret: false
        order: 0
      topicName:
        kind: path
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        order: 1
      apexMethod:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: APEX method name
        order: 2
      apexQueryParams:
        kind: parameter
        group: common
        type: object
        javaType: java.util.Map<java.lang.String,java.lang.Object>
        deprecated: false
        secret: false
        description: Query params for APEX method
        order: 3
      apexUrl:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: APEX method URL
        order: 4
      apiVersion:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Salesforce API version defaults to SalesforceEndpointConfig.DEFAULT_VERSION
        order: 5
      backoffIncrement:
        kind: parameter
        group: common
        type: integer
        javaType: long
        deprecated: false
        secret: false
        description: Backoff interval increment for Streaming connection restart attempts for failures beyond CometD auto-reconnect.
        order: 6
      batchId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Bulk API Batch ID
        order: 7
      contentType:
        kind: parameter
        group: common
        type: string
        javaType: org.apache.camel.component.salesforce.api.dto.bulk.ContentType
        enum:
        - XML
        - CSV
        - ZIP_XML
        - ZIP_CSV
        deprecated: false
        secret: false
        description: Bulk API content type one of XML CSV ZIP_XML ZIP_CSV
        order: 8
      defaultReplayId:
        kind: parameter
        group: common
        type: integer
        javaType: java.lang.Integer
        deprecated: false
        secret: false
        description: Default replayId setting if no value is found in link initialReplayIdMap
        order: 9
      format:
        kind: parameter
        group: common
        type: string
        javaType: org.apache.camel.component.salesforce.internal.PayloadFormat
        enum:
        - JSON
        - XML
        deprecated: false
        secret: false
        description: Payload format to use for Salesforce API calls either JSON or XML defaults to JSON
        order: 10
      httpClient:
        kind: parameter
        group: common
        type: object
        javaType: org.apache.camel.component.salesforce.SalesforceHttpClient
        deprecated: false
        secret: false
        description: Custom Jetty Http Client to use to connect to Salesforce.
        order: 11
      includeDetails:
        kind: parameter
        group: common
        type: boolean
        javaType: java.lang.Boolean
        deprecated: false
        secret: false
        description: Include details in Salesforce1 Analytics report defaults to false.
        order: 12
      initialReplayIdMap:
        kind: parameter
        group: common
        type: object
        javaType: java.util.Map<java.lang.String,java.lang.Integer>
        deprecated: false
        secret: false
        description: Replay IDs to start from per channel name.
        order: 13
      instanceId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Salesforce1 Analytics report execution instance ID
        order: 14
      jobId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Bulk API Job ID
        order: 15
      maxBackoff:
        kind: parameter
        group: common
        type: integer
        javaType: long
        deprecated: false
        secret: false
        description: Maximum backoff interval for Streaming connection restart attempts for failures beyond CometD auto-reconnect.
        order: 16
      notifyForFields:
        kind: parameter
        group: common
        type: string
        javaType: org.apache.camel.component.salesforce.internal.dto.NotifyForFieldsEnum
        enum:
        - ALL
        - REFERENCED
        - SELECT
        - WHERE
        deprecated: false
        secret: false
        description: Notify for fields options are ALL REFERENCED SELECT WHERE
        order: 17
      notifyForOperationCreate:
        kind: parameter
        group: common
        type: boolean
        javaType: java.lang.Boolean
        deprecated: false
        secret: false
        description: Notify for create operation defaults to false (API version = 29.0)
        order: 18
      notifyForOperationDelete:
        kind: parameter
        group: common
        type: boolean
        javaType: java.lang.Boolean
        deprecated: false
        secret: false
        description: Notify for delete operation defaults to false (API version = 29.0)
        order: 19
      notifyForOperations:
        kind: parameter
        group: common
        type: string
        javaType: org.apache.camel.component.salesforce.internal.dto.NotifyForOperationsEnum
        enum:
        - ALL
        - CREATE
        - EXTENDED
        - UPDATE
        deprecated: false
        secret: false
        description: Notify for operations options are ALL CREATE EXTENDED UPDATE (API version 29.0)
        order: 20
      notifyForOperationUndelete:
        kind: parameter
        group: common
        type: boolean
        javaType: java.lang.Boolean
        deprecated: false
        secret: false
        description: Notify for un-delete operation defaults to false (API version = 29.0)
        order: 21
      notifyForOperationUpdate:
        kind: parameter
        group: common
        type: boolean
        javaType: java.lang.Boolean
        deprecated: false
        secret: false
        description: Notify for update operation defaults to false (API version = 29.0)
        order: 22
      objectMapper:
        kind: parameter
        group: common
        type: object
        javaType: com.fasterxml.jackson.databind.ObjectMapper
        deprecated: false
        secret: false
        description: Custom Jackson ObjectMapper to use when serializing/deserializing Salesforce objects.
        order: 23
      reportId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Salesforce1 Analytics report Id
        order: 24
      reportMetadata:
        kind: parameter
        group: common
        type: object
        javaType: org.apache.camel.component.salesforce.api.dto.analytics.reports.ReportMetadata
        deprecated: false
        secret: false
        description: Salesforce1 Analytics report metadata for filtering
        order: 25
      resultId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Bulk API Result ID
        order: 26
      sObjectBlobFieldName:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject blob field name
        order: 27
      sObjectClass:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Fully qualified SObject class name usually generated using camel-salesforce-maven-plugin
        order: 28
      sObjectFields:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject fields to retrieve
        order: 29
      sObjectId:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject ID if required by API
        order: 30
      sObjectIdName:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject external ID field name
        order: 31
      sObjectIdValue:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject external ID field value
        order: 32
      sObjectName:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: SObject name if required or supported by API
        order: 33
      sObjectQuery:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Salesforce SOQL query string
        order: 34
      sObjectSearch:
        kind: parameter
        group: common
        type: string
        javaType: java.lang.String
        deprecated: false
        secret: false
        description: Salesforce SOSL search string
        order: 35
      updateTopic:
        kind: parameter
        group: common
        type: boolean
        javaType: boolean
        deprecated: false
        secret: false
        defaultValue: false
        description: Whether to update an existing Push Topic when using the Streaming API defaults to false
        order: 36
      bridgeErrorHandler:
        kind: parameter
        group: consumer
        label: consumer
        type: boolean
        javaType: boolean
        optionalPrefix: consumer.
        deprecated: false
        secret: false
        defaultValue: false
        description: Allows for bridging the consumer to the Camel routing Error Handler which mean any exceptions occurred while the consumer is trying to pickup incoming messages or the likes will now be processed as a message and handled by the routing Error Handler. By default the consumer will use the org.apache.camel.spi.ExceptionHandler to deal with exceptions that will be logged at WARN/ERROR level and ignored.
        order: 37
      exceptionHandler:
        kind: parameter
        group: consumer (advanced)
        label: consumer,advanced
        type: object
        javaType: org.apache.camel.spi.ExceptionHandler
        optionalPrefix: consumer.
        deprecated: false
        secret: false
        description: To let the consumer use a custom ExceptionHandler. Notice if the option bridgeErrorHandler is enabled then this options is not in use. By default the consumer will deal with exceptions that will be logged at WARN/ERROR level and ignored.
        order: 38
      exchangePattern:
        kind: parameter
        group: consumer (advanced)
        label: consumer,advanced
        type: string
        javaType: org.apache.camel.ExchangePattern
        enum:
        - InOnly
        - RobustInOnly
        - InOut
        - InOptionalOut
        - OutOnly
        - RobustOutOnly
        - OutIn
        - OutOptionalIn
        deprecated: false
        secret: false
        description: Sets the exchange pattern when the consumer creates an exchange.
        order: 39
      synchronous:
        kind: parameter
        group: advanced
        label: advanced
        type: boolean
        javaType: boolean
        deprecated: false
        secret: false
        defaultValue: false
        description: Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported).
        order: 40
