---
apiVersion: v1
kind: List
items:
- apiVersion: v1
  kind: ConfigMap
  metadata:
    labels:
      funktion.fabric8.io/kind: Connector
      provider: fabric8
      project: connector-jbpm
      version: 1.1.55
      group: io.fabric8.funktion.connector
    name: jbpm
  data:
    deployment.yml: |
      ---
      apiVersion: extensions/v1beta1
      kind: Deployment
      metadata:
        labels:
          funktion.fabric8.io/kind: Subscription
          connector: jbpm
      spec:
        replicas: 1
        template:
          metadata:
            labels:
              funktion.fabric8.io/kind: Subscription
              connector: jbpm
          spec:
            containers:
            - image: funktion/connector-jbpm:1.1.55
              name: connector
    schema.yml: |
      ---
      component:
        kind: component
        scheme: jbpm
        syntax: jbpm:connectionURL
        title: JBPM
        description: The jbpm component provides integration with jBPM (Business Process Management).
        label: process
        deprecated: false
        async: false
        producerOnly: true
        javaType: org.apache.camel.component.jbpm.JBPMComponent
        groupId: org.apache.camel
        artifactId: camel-jbpm
        version: 2.18.1
      componentProperties: {}
      properties:
        connectionURL:
          kind: path
          group: producer
          required: true
          type: string
          javaType: java.net.URL
          deprecated: false
          secret: false
          description: The URL to the jBPM server.
          order: 0
        attachmentId:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Long
          deprecated: false
          secret: false
          description: attachId to use when retrieving attachments
          order: 1
        contentId:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Long
          deprecated: false
          secret: false
          description: contentId to use when retrieving attachments
          order: 2
        deploymentId:
          kind: parameter
          group: producer
          required: true
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: The id of the deployment
          order: 3
        event:
          kind: parameter
          group: producer
          type: object
          javaType: java.lang.Object
          deprecated: false
          secret: false
          description: the data associated with this event when signalEvent operation is performed
          order: 4
        eventType:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: the type of event to use when signalEvent operation is performed
          order: 5
        identifier:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: identifier the global identifier
          order: 6
        language:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: The language to use when filtering user tasks
          order: 7
        maxNumber:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Integer
          deprecated: false
          secret: false
          description: the maximum number of rules that should be fired
          order: 8
        operation:
          kind: parameter
          group: producer
          label: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          defaultValue: startProcess
          description: The operation to perform
          order: 9
        processId:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: the id of the process that should be acted upon
          order: 10
        processInstanceId:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Long
          deprecated: false
          secret: false
          description: the id of the process instance
          order: 11
        targetUserId:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: The targetUserId used when delegating a task
          order: 12
        task:
          kind: parameter
          group: producer
          type: object
          javaType: org.kie.api.task.model.Task
          deprecated: false
          secret: false
          description: The task instance to use with task operations
          order: 13
        taskId:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Long
          deprecated: false
          secret: false
          description: the id of the task
          order: 14
        timeout:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Integer
          deprecated: false
          secret: false
          description: A timeout value
          order: 15
        userId:
          kind: parameter
          group: producer
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: false
          description: userId to use with task operations
          order: 16
        value:
          kind: parameter
          group: producer
          type: object
          javaType: java.lang.Object
          deprecated: false
          secret: false
          description: the value to assign to the global identifier
          order: 17
        workItemId:
          kind: parameter
          group: producer
          type: integer
          javaType: java.lang.Long
          deprecated: false
          secret: false
          description: the id of the work item
          order: 18
        entities:
          kind: parameter
          group: advanced
          label: advanced
          type: array
          javaType: java.util.List<org.kie.api.task.model.OrganizationalEntity>
          deprecated: false
          secret: false
          description: The potentialOwners when nominateTask operation is performed
          order: 19
        extraJaxbClasses:
          kind: parameter
          group: advanced
          label: advanced
          type: string
          javaType: java.lang.Class[]
          deprecated: false
          secret: false
          description: To load additional classes when working with XML
          order: 20
        parameters:
          kind: parameter
          group: advanced
          label: advanced
          type: object
          javaType: java.util.Map<java.lang.String,java.lang.Object>
          deprecated: false
          secret: false
          description: the variables that should be set for various operations
          order: 21
        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: 22
        statuses:
          kind: parameter
          group: filter
          label: filter
          type: array
          javaType: java.util.List<org.kie.api.task.model.Status>
          deprecated: false
          secret: false
          description: The list of status to use when filtering tasks
          order: 23
        password:
          kind: parameter
          group: security
          label: security
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: true
          description: Password for authentication
          order: 24
        userName:
          kind: parameter
          group: security
          label: security
          type: string
          javaType: java.lang.String
          deprecated: false
          secret: true
          description: Username for authentication
          order: 25
    documentation.adoc: |
      [[jBPM-jBPMComponent]]
      jBPM Component
      ~~~~~~~~~~~~~~

      *Available as of Camel 2.16*

      The *jbpm* component provides integration with Business Process
      Management (BPM) Suit http://www.jbpm.org/[jBPM]. It uses
      kie-remote-client API to interact with jBPM instance over REST. The
      component supports only producer.

      Maven users will need to add the following dependency to their `pom.xml`
      for this component:

      [source,xml]
      ------------------------------------------------------------------------------------
      <dependency>
          <groupId>org.apache.camel</groupId>
          <artifactId>camel-jbpm</artifactId>
          <version>x.x.x</version><!-- use the same version as your Camel core version -->
      </dependency>
      ------------------------------------------------------------------------------------

      [[jBPM-URIformat]]
      URI format
      ^^^^^^^^^^

      [source,java]
      ---------------------------------------------
      jbpm::hostName[:port][/resourceUri][?options]
      ---------------------------------------------

      [[jBPM-URIOptions]]
      URI Options
      ^^^^^^^^^^^


      // component options: START
      The JBPM component has no options.
      // component options: END





      // endpoint options: START
      The JBPM component supports 26 endpoint options which are listed below:

      {% raw %}
      [width="100%",cols="2,1,1m,1m,5",options="header"]
      |=======================================================================
      | Name | Group | Default | Java Type | Description
      | connectionURL | producer |  | URL | *Required* The URL to the jBPM server.
      | attachmentId | producer |  | Long | attachId to use when retrieving attachments
      | contentId | producer |  | Long | contentId to use when retrieving attachments
      | deploymentId | producer |  | String | *Required* The id of the deployment
      | event | producer |  | Object | the data associated with this event when signalEvent operation is performed
      | eventType | producer |  | String | the type of event to use when signalEvent operation is performed
      | identifier | producer |  | String | identifier the global identifier
      | language | producer |  | String | The language to use when filtering user tasks
      | maxNumber | producer |  | Integer | the maximum number of rules that should be fired
      | operation | producer | startProcess | String | The operation to perform
      | processId | producer |  | String | the id of the process that should be acted upon
      | processInstanceId | producer |  | Long | the id of the process instance
      | targetUserId | producer |  | String | The targetUserId used when delegating a task
      | task | producer |  | Task | The task instance to use with task operations
      | taskId | producer |  | Long | the id of the task
      | timeout | producer |  | Integer | A timeout value
      | userId | producer |  | String | userId to use with task operations
      | value | producer |  | Object | the value to assign to the global identifier
      | workItemId | producer |  | Long | the id of the work item
      | entities | advanced |  | List | The potentialOwners when nominateTask operation is performed
      | extraJaxbClasses | advanced |  | Class[] | To load additional classes when working with XML
      | parameters | advanced |  | Map | the variables that should be set for various operations
      | synchronous | advanced | false | boolean | Sets whether synchronous processing should be strictly used or Camel is allowed to use asynchronous processing (if supported).
      | statuses | filter |  | List | The list of status to use when filtering tasks
      | password | security |  | String | Password for authentication
      | userName | security |  | String | Username for authentication
      |=======================================================================
      {% endraw %}
      // endpoint options: END




      [[jBPM-MessageHeaders]]
      Message Headers
      ^^^^^^^^^^^^^^^

      [width="100%",cols="10%,10%,10%,70%",options="header",]
      |=======================================================================
      |Name |Default Value |Type |Description

      |CamelJBPMValue |null |Object |the value to assign to the global identifier

      |CamelJBPMOperation |PUT |String |The operation to perform. The operation name must be prefixed with
      CamelJBPMOperation and the name of the operation. See the full list
      above. It is case insensitive.

      |CamelJBPMProcessId |null |String |the id of the process that should be acted upon

      |CamelJBPMProcessInstanceId |0 |Long |the id of the process instance

      |CamelJBPMParameters |null |Map<String, Object> |the variables that should be set for various operations

      |CamelJBPMEventType |null |String |the type of event to use when signalEvent operation is performed

      |CamelJBPMEvent |null |String |The type of the received event. Possible values defined here
      org.infinispan.notifications.cachelistener.event.Event.Type

      |CamelJBPMMaxNumber |null |Integer |the maximum number of rules that should be fired

      |CamelJBPMIdentifier |null |long |identifier the global identifier

      |CamelJBPMWorkItemId |0 |Long |the id of the work item

      |CamelJBPMTaskId |0 |Long |the id of the task

      |CamelJBPMTask |null |Task |The task instance to use with task operations

      |CamelJBPMUserId |null |String |userId to use with task operations

      |CamelJBPMTargetUserId |null |String |The targetUserId used when delegating a task

      |CamelJBPMLanguage |null |String |The language to use when filtering user tasks

      |CamelJBPMAttachmentId |0 |Long |attachId to use when retrieving attachments

      |CamelJBPMContentId |0 |Long |contentId to use when retrieving attachments

      |CamelJBPMEntityList |null |List<OrganizationalEntity> |The potentialOwners when nominateTask operation is performed

      |CamelJBPMStatusList |null |List<Status> |The list of status to use when filtering tasks
      |=======================================================================

      [[jBPM-Example]]
      Example
      ^^^^^^^

      Below is an example route that starts a business process with id
      project1.integration-test and deploymentId
      org.kie.example:project1:1.0.0-SNAPSHOT

      [source,java]
      ----------------------------------------------------------------------------------------------
      from("direct:start")
              .setHeader(JBPMConstants.PROCESS_ID, constant("project1.integration-test"))
              .to("jbpm:http://localhost:8080/business-central?userName=bpmsAdmin&password=pa$word1"
      ??+ "&deploymentId=org.kie.example:project1:1.0.0-SNAPSHOT");
      ----------------------------------------------------------------------------------------------

      [[jBPM-SeeAlso]]
      See Also
      ^^^^^^^^

      * link:configuring-camel.html[Configuring Camel]
      * link:component.html[Component]
      * link:endpoint.html[Endpoint]
      * link:getting-started.html[Getting Started]

      ??
