172 lines
7.5 KiB
JSON
172 lines
7.5 KiB
JSON
{
|
|
"apiVersion": "camel.apache.org/v1",
|
|
"kind": "Kamelet",
|
|
"metadata": {
|
|
"name": "azure-servicebus-source",
|
|
"annotations": {
|
|
"camel.apache.org/kamelet.support.level": "Stable",
|
|
"camel.apache.org/catalog.version": "4.22.1",
|
|
"camel.apache.org/kamelet.icon": "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB2aWV3Qm94PSIwIDAgODEgODIiIGZpbGw9IiNmZmYiIGZpbGwtcnVsZT0iZXZlbm9kZCIgc3Ryb2tlPSIjMDAwIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiPjx1c2UgeGxpbms6aHJlZj0iI0EiIHg9Ii41IiB5PSIuNSIvPjxzeW1ib2wgaWQ9IkEiIG92ZXJmbG93PSJ2aXNpYmxlIj48cGF0aCBkPSJNMS4zMzMgMEMuNTMzIDAgMCAuNTMzIDAgMS4zMzN2MTZjMCAuOC41MzMgMS4zMzMgMS4zMzMgMS4zMzNoOGMuOCAwIDEuMzMzLS41MzMgMS4zMzMtMS4zMzN2LTYuNjY2aDU4LjY2N3Y2LjY2N2MwIC44LjUzMyAxLjMzMyAxLjYgMS4zMzNoNy43MzNjLjggMCAxLjMzMy0uNTMzIDEuMzMzLTEuMzMzdi04LThDODAgLjUzMyA3OS40NjcgMCA3OC42NjcgMGgwSDEuMzMzem03Ny4zMzQgODBjLjggMCAxLjMzMy0uNTMzIDEuMzMzLTEuMzMzVjYyLjkzNGMwLS44LS41MzMtMS4zMzMtMS4zMzMtMS4zMzNoLTcuNzMzYy0uOCAwLTEuMzMzLjUzMy0xLjMzMyAxLjMzM3Y2LjRIMTAuNjY3di02LjY2N2MwLS44LS41MzMtMS4zMzMtMS42LTEuMzMzSDEuMzMzYy0uOCAwLTEuMzMzLjUzMy0xLjMzMyAxLjZ2MTUuNzMzQzAgNzkuNDY3LjUzMyA4MCAxLjMzMyA4MGg3Ny4zMzR6IiBmaWxsPSIjMDA3MmM2IiBzdHJva2U9Im5vbmUiLz48cGF0aCBkPSJNMjkuNTE5IDM2LjQ0N2wzLjQ1Mi0zLjQ1MiAyLjU1NiAyLjU1Ni0zLjQ1MiAzLjQ1MXptNS4wMDctNS4wMDhsMy40NTYtMy40NTYgMi41NiAyLjU2TDM3LjA4NiAzNHptNy41Ny0yLjQ2M2wtMi41Ni0yLjU0NCAzLjQyNC0zLjQyNCAyLjU2IDIuNTQ0ek0zOS41MzUgNTIuNWwyLjU2MS0yLjU2IDMuNDI0IDMuNDI2LTIuNTYxIDIuNTZ6bS0xLjU1MS0xLjU3MmwtMy40NTYtMy40NTYgMi41Ni0yLjU0NCAzLjQ1NiAzLjQ1NnptLTUuMDA4LTUuMDA4bC0zLjQ1Ni0zLjQ1NiAyLjU2LTIuNTQ0IDMuNDQgMy40NHoiIHN0cm9rZT0ibm9uZSIgZmlsbD0iI2I4ZDQzMiIvPjxwYXRoIGQ9Ik01Ny44MSAyNC4zOTVhNC40NCA0LjQ0IDAgMCAxLTMuMTU4IDEuMzA5IDQuNDMgNC40MyAwIDAgMS0zLjE1OC0xLjMwOWwtNi4wNTMtNi4wNTN2MTIuMzA2aDE4LjQyNFYxOC4zNDJsLTYuMDU0IDYuMDUzem0tMy4xNjEuNDA5YTMuNTQgMy41NCAwIDAgMCAyLjUyMy0xLjA0NWw2LjY5LTYuNjl2LS4zNTVINDUuNDM4di4zNTVsNi42OSA2LjY5YTMuNTQgMy41NCAwIDAgMCAyLjUyMiAxLjA0NXptMy4xNjEgMzEuMTVhNC40NCA0LjQ0IDAgMCAxLTMuMTU4IDEuMzA5IDQuNDMgNC40MyAwIDAgMS0zLjE1OC0xLjMwOWwtNi4wNTMtNi4wNTN2MTIuMzA2aDE4LjQyNFY0OS45MDFsLTYuMDU0IDYuMDUzem0tMy4xNjEuNDFhMy41NCAzLjU0IDAgMCAwIDIuNTIzLTEuMDQ1bDYuNjktNi42ODl2LS4zNTVINDUuNDM4di4zNTVsNi42OSA2LjY4OWEzLjU0IDMuNTQgMCAwIDAgMi41MjIgMS4wNDV6TTE5LjcxOCA0MC41OTljLTEuMzQ0IDEuMzQ0LTMuMTMzIDIuMDg1LTUuMDM1IDIuMDg1cy0zLjY5LS43NDEtNS4wMzUtMi4wODVMMCAzMC45NDl2MTkuNjEzaDI5LjM2NlYzMC45NDlsLTkuNjQ4IDkuNjV6bS01LjAzNS42NTJhNS42NSA1LjY1IDAgMCAwIDQuMDIyLTEuNjY2bDEwLjY2MS0xMC42NjF2LS41NjVIMHYuNTY2bDEwLjY2MSAxMC42NjFhNS42NiA1LjY2IDAgMCAwIDQuMDIyIDEuNjY0eiIgc3Ryb2tlPSJub25lIiBmaWxsPSIjNTliNGQ5Ii8+PC9zeW1ib2w+PC9zdmc+",
|
|
"camel.apache.org/provider": "Apache Software Foundation",
|
|
"camel.apache.org/kamelet.group": "Azure Servicebus",
|
|
"camel.apache.org/kamelet.namespace": "Azure"
|
|
},
|
|
"labels": {
|
|
"camel.apache.org/kamelet.type": "source"
|
|
}
|
|
},
|
|
"spec": {
|
|
"definition": {
|
|
"title": "Azure Servicebus Source",
|
|
"description": "Consume Messages from Azure Servicebus.",
|
|
"required": [
|
|
"topicOrQueueName",
|
|
"connectionString"
|
|
],
|
|
"type": "object",
|
|
"properties": {
|
|
"topicOrQueueName": {
|
|
"title": "Topic Or Queue Name",
|
|
"description": "Topic Or Queue Name for the Azure Servicebus instance",
|
|
"type": "string"
|
|
},
|
|
"connectionString": {
|
|
"title": "Connection String",
|
|
"description": "Connection String for Azure Servicebus instance",
|
|
"type": "string",
|
|
"format": "password",
|
|
"x-descriptors": [
|
|
"urn:camel:group:credentials"
|
|
]
|
|
},
|
|
"serviceBusReceiveMode": {
|
|
"title": "Servicebus Receive Mode",
|
|
"description": "Sets the receive mode for the receiver",
|
|
"type": "string",
|
|
"default": "PEEK_LOCK",
|
|
"enum": [
|
|
"PEEK_LOCK",
|
|
"RECEIVE_AND_DELETE"
|
|
]
|
|
},
|
|
"subscriptionName": {
|
|
"title": "Subscription Name",
|
|
"description": "Sets the name of the subscription in the topic to listen to. This parameter is mandatory in case of topic.",
|
|
"type": "string"
|
|
},
|
|
"serviceBusType": {
|
|
"title": "Servicebus Type",
|
|
"description": "The service bus type of connection to execute. Queue is for typical queue option and topic for subscription based model.",
|
|
"type": "string",
|
|
"default": "queue",
|
|
"enum": [
|
|
"queue",
|
|
"topic"
|
|
]
|
|
},
|
|
"credentialType": {
|
|
"title": "Credential Type",
|
|
"description": "Determines the credential strategy to adopt.",
|
|
"type": "string",
|
|
"enum": [
|
|
"AZURE_IDENTITY",
|
|
"CONNECTION_STRING",
|
|
"TOKEN_CREDENTIAL"
|
|
],
|
|
"default": "CONNECTION_STRING"
|
|
}
|
|
}
|
|
},
|
|
"types": {
|
|
"out": {
|
|
"mediaType": "application/octet-stream"
|
|
}
|
|
},
|
|
"dependencies": [
|
|
"camel:azure-servicebus",
|
|
"camel:kamelet",
|
|
"camel:core"
|
|
],
|
|
"template": {
|
|
"from": {
|
|
"uri": "azure-servicebus:{{topicOrQueueName}}",
|
|
"parameters": {
|
|
"connectionString": "{{connectionString}}",
|
|
"serviceBusReceiveMode": "{{serviceBusReceiveMode}}",
|
|
"subscriptionName": "{{?subscriptionName}}",
|
|
"serviceBusType": "{{serviceBusType}}",
|
|
"credentialType": "{{credentialType}}"
|
|
},
|
|
"steps": [
|
|
{
|
|
"setBody": {
|
|
"simple": "${body.toBytes()}"
|
|
}
|
|
},
|
|
{
|
|
"to": "kamelet:sink"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
},
|
|
"propertiesSchema": {
|
|
"$schema": "http://json-schema.org/draft-07/schema#",
|
|
"type": "object",
|
|
"title": "Azure Servicebus Source",
|
|
"description": "Consume Messages from Azure Servicebus.",
|
|
"required": [
|
|
"topicOrQueueName",
|
|
"connectionString"
|
|
],
|
|
"properties": {
|
|
"topicOrQueueName": {
|
|
"type": "string",
|
|
"title": "Topic Or Queue Name",
|
|
"description": "Topic Or Queue Name for the Azure Servicebus instance"
|
|
},
|
|
"connectionString": {
|
|
"type": "string",
|
|
"title": "Connection String",
|
|
"description": "Connection String for Azure Servicebus instance",
|
|
"format": "password"
|
|
},
|
|
"serviceBusReceiveMode": {
|
|
"type": "string",
|
|
"title": "Servicebus Receive Mode",
|
|
"description": "Sets the receive mode for the receiver",
|
|
"enum": [
|
|
"PEEK_LOCK",
|
|
"RECEIVE_AND_DELETE"
|
|
],
|
|
"default": "PEEK_LOCK"
|
|
},
|
|
"subscriptionName": {
|
|
"type": "string",
|
|
"title": "Subscription Name",
|
|
"description": "Sets the name of the subscription in the topic to listen to. This parameter is mandatory in case of topic."
|
|
},
|
|
"serviceBusType": {
|
|
"type": "string",
|
|
"title": "Servicebus Type",
|
|
"description": "The service bus type of connection to execute. Queue is for typical queue option and topic for subscription based model.",
|
|
"enum": [
|
|
"queue",
|
|
"topic"
|
|
],
|
|
"default": "queue"
|
|
},
|
|
"credentialType": {
|
|
"type": "string",
|
|
"title": "Credential Type",
|
|
"description": "Determines the credential strategy to adopt.",
|
|
"enum": [
|
|
"AZURE_IDENTITY",
|
|
"CONNECTION_STRING",
|
|
"TOKEN_CREDENTIAL"
|
|
],
|
|
"default": "CONNECTION_STRING"
|
|
}
|
|
}
|
|
}
|
|
} |