blob: 5defe0d7f65dae30e48b9658dcb32313f753dd28 [file] [log] [blame]
{
"connector": {
"class": "org.apache.camel.kafkaconnector.mongodb.CamelMongodbSinkConnector",
"artifactId": "camel-mongodb-kafka-connector",
"groupId": "org.apache.camel.kafkaconnector",
"id": "camel-mongodb-sink",
"type": "sink",
"version": "0.11.6-SNAPSHOT",
"description": "Perform operations on MongoDB documents and collections."
},
"properties": {
"camel.sink.path.connectionBean": {
"name": "camel.sink.path.connectionBean",
"description": "Sets the connection bean reference used to lookup a client for connecting to a database.",
"priority": "HIGH",
"required": "true"
},
"camel.sink.endpoint.collection": {
"name": "camel.sink.endpoint.collection",
"description": "Sets the name of the MongoDB collection to bind to this endpoint",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.collectionIndex": {
"name": "camel.sink.endpoint.collectionIndex",
"description": "Sets the collection index (JSON FORMAT : { field1 : order1, field2 : order2})",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.createCollection": {
"name": "camel.sink.endpoint.createCollection",
"description": "Create collection during initialisation if it doesn't exist. Default is true.",
"defaultValue": "true",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.database": {
"name": "camel.sink.endpoint.database",
"description": "Sets the name of the MongoDB database to target",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.hosts": {
"name": "camel.sink.endpoint.hosts",
"description": "Host address of mongodb server in host:port format. It's possible also use more than one address, as comma separated list of hosts: host1:port1,host2:port2. If hosts parameter is specified, provided connectionBean is ignored.",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.mongoConnection": {
"name": "camel.sink.endpoint.mongoConnection",
"description": "Sets the connection bean used as a client for connecting to a database.",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.operation": {
"name": "camel.sink.endpoint.operation",
"description": "Sets the operation this endpoint will execute against MongoDB. One of: [findById] [findOneByQuery] [findAll] [findDistinct] [insert] [save] [update] [remove] [bulkWrite] [aggregate] [getDbStats] [getColStats] [count] [command]",
"priority": "MEDIUM",
"required": "false",
"enum": [
"findById",
"findOneByQuery",
"findAll",
"findDistinct",
"insert",
"save",
"update",
"remove",
"bulkWrite",
"aggregate",
"getDbStats",
"getColStats",
"count",
"command"
]
},
"camel.sink.endpoint.outputType": {
"name": "camel.sink.endpoint.outputType",
"description": "Convert the output of the producer to the selected type : DocumentList Document or MongoIterable. DocumentList or MongoIterable applies to findAll and aggregate. Document applies to all other operations. One of: [DocumentList] [Document] [MongoIterable]",
"priority": "MEDIUM",
"required": "false",
"enum": [
"DocumentList",
"Document",
"MongoIterable"
]
},
"camel.sink.endpoint.lazyStartProducer": {
"name": "camel.sink.endpoint.lazyStartProducer",
"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
"defaultValue": "false",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.cursorRegenerationDelay": {
"name": "camel.sink.endpoint.cursorRegenerationDelay",
"description": "MongoDB tailable cursors will block until new data arrives. If no new data is inserted, after some time the cursor will be automatically freed and closed by the MongoDB server. The client is expected to regenerate the cursor if needed. This value specifies the time to wait before attempting to fetch a new cursor, and if the attempt fails, how long before the next attempt is made. Default value is 1000ms.",
"defaultValue": "1000L",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.dynamicity": {
"name": "camel.sink.endpoint.dynamicity",
"description": "Sets whether this endpoint will attempt to dynamically resolve the target database and collection from the incoming Exchange properties. Can be used to override at runtime the database and collection specified on the otherwise static endpoint URI. It is disabled by default to boost performance. Enabling it will take a minimal performance hit.",
"defaultValue": "false",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.readPreference": {
"name": "camel.sink.endpoint.readPreference",
"description": "Configure how MongoDB clients route read operations to the members of a replica set. Possible values are PRIMARY, PRIMARY_PREFERRED, SECONDARY, SECONDARY_PREFERRED or NEAREST One of: [PRIMARY] [PRIMARY_PREFERRED] [SECONDARY] [SECONDARY_PREFERRED] [NEAREST]",
"defaultValue": "\"PRIMARY\"",
"priority": "MEDIUM",
"required": "false",
"enum": [
"PRIMARY",
"PRIMARY_PREFERRED",
"SECONDARY",
"SECONDARY_PREFERRED",
"NEAREST"
]
},
"camel.sink.endpoint.writeConcern": {
"name": "camel.sink.endpoint.writeConcern",
"description": "Configure the connection bean with the level of acknowledgment requested from MongoDB for write operations to a standalone mongod, replicaset or cluster. Possible values are ACKNOWLEDGED, W1, W2, W3, UNACKNOWLEDGED, JOURNALED or MAJORITY. One of: [ACKNOWLEDGED] [W1] [W2] [W3] [UNACKNOWLEDGED] [JOURNALED] [MAJORITY]",
"defaultValue": "\"ACKNOWLEDGED\"",
"priority": "MEDIUM",
"required": "false",
"enum": [
"ACKNOWLEDGED",
"W1",
"W2",
"W3",
"UNACKNOWLEDGED",
"JOURNALED",
"MAJORITY"
]
},
"camel.sink.endpoint.writeResultAsHeader": {
"name": "camel.sink.endpoint.writeResultAsHeader",
"description": "In write operations, it determines whether instead of returning WriteResult as the body of the OUT message, we transfer the IN message to the OUT and attach the WriteResult as a header.",
"defaultValue": "false",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.password": {
"name": "camel.sink.endpoint.password",
"description": "User password for mongodb connection",
"priority": "MEDIUM",
"required": "false"
},
"camel.sink.endpoint.username": {
"name": "camel.sink.endpoint.username",
"description": "Username for mongodb connection",
"priority": "MEDIUM",
"required": "false"
},
"camel.component.mongodb.mongoConnection": {
"name": "camel.component.mongodb.mongoConnection",
"description": "Shared client used for connection. All endpoints generated from the component will share this connection client.",
"priority": "MEDIUM",
"required": "false"
},
"camel.component.mongodb.lazyStartProducer": {
"name": "camel.component.mongodb.lazyStartProducer",
"description": "Whether the producer should be started lazy (on the first message). By starting lazy you can use this to allow CamelContext and routes to startup in situations where a producer may otherwise fail during starting and cause the route to fail being started. By deferring this startup to be lazy then the startup failure can be handled during routing messages via Camel's routing error handlers. Beware that when the first message is processed then creating and starting the producer may take a little time and prolong the total processing time of the processing.",
"defaultValue": "false",
"priority": "MEDIUM",
"required": "false"
},
"camel.component.mongodb.autowiredEnabled": {
"name": "camel.component.mongodb.autowiredEnabled",
"description": "Whether autowiring is enabled. This is used for automatic autowiring options (the option must be marked as autowired) by looking up in the registry to find if there is a single instance of matching type, which then gets configured on the component. This can be used for automatic configuring JDBC data sources, JMS connection factories, AWS Clients, etc.",
"defaultValue": "true",
"priority": "MEDIUM",
"required": "false"
}
}
}