--- apiVersion: v1 kind: List items: - apiVersion: v1 kind: ConfigMap metadata: labels: funktion.fabric8.io/kind: Connector provider: fabric8 project: connector-aws-ddb version: 1.1.42 group: io.fabric8.funktion.connector name: aws-ddb data: deployment.yml: | --- apiVersion: extensions/v1beta1 kind: Deployment metadata: labels: funktion.fabric8.io/kind: Subscription connector: aws-ddb spec: replicas: 1 template: metadata: labels: funktion.fabric8.io/kind: Subscription connector: aws-ddb spec: containers: - image: funktion/connector-aws-ddb:1.1.42 name: connector schema.yml: | --- component: kind: component scheme: aws-ddb syntax: aws-ddb:tableName title: AWS DynamoDB description: The aws-ddb component is used for storing and retrieving data from Amazon's DynamoDB service. label: cloud,database,nosql deprecated: false async: false producerOnly: true javaType: org.apache.camel.component.aws.ddb.DdbComponent groupId: org.apache.camel artifactId: camel-aws version: 2.18.1 componentProperties: {} properties: tableName: kind: path group: producer required: true type: string javaType: java.lang.String deprecated: false secret: false description: The name of the table currently worked with. order: 0 accessKey: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Amazon AWS Access Key order: 1 amazonDDBClient: kind: parameter group: producer type: object javaType: com.amazonaws.services.dynamodbv2.AmazonDynamoDB deprecated: false secret: false description: To use the AmazonDynamoDB as the client order: 2 amazonDdbEndpoint: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: The region with which the AWS-DDB client wants to work with. order: 3 consistentRead: kind: parameter group: producer type: boolean javaType: boolean deprecated: false secret: false defaultValue: false description: Determines whether or not strong consistency should be enforced when data is read. order: 4 keyAttributeName: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Attribute name when creating table order: 5 keyAttributeType: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Attribute type when creating table order: 6 operation: kind: parameter group: producer type: string javaType: org.apache.camel.component.aws.ddb.DdbOperations enum: - BatchGetItems - DeleteItem - DeleteTable - DescribeTable - GetItem - PutItem - Query - Scan - UpdateItem - UpdateTable deprecated: false secret: false defaultValue: PutItem description: What operation to perform order: 7 proxyHost: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: To define a proxy host when instantiating the SQS client order: 8 proxyPort: kind: parameter group: producer type: integer javaType: java.lang.Integer deprecated: false secret: false description: To define a proxy port when instantiating the SQS client order: 9 readCapacity: kind: parameter group: producer type: integer javaType: java.lang.Long deprecated: false secret: false description: The provisioned throughput to reserve for reading resources from your table order: 10 secretKey: kind: parameter group: producer type: string javaType: java.lang.String deprecated: false secret: false description: Amazon AWS Secret Key order: 11 writeCapacity: kind: parameter group: producer type: integer javaType: java.lang.Long deprecated: false secret: false description: The provisioned throughput to reserved for writing resources to your table order: 12 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: 13 documentation.adoc: "[[AWS-DDB-DDBComponent]]\nDDB Component\n~~~~~~~~~~~~~\n\n\ *Available as of Camel 2.10*\n\nThe DynamoDB component supports storing and\ \ retrieving data from/to\nhttp://aws.amazon.com/dynamodb[Amazon's DynamoDB]\ \ service.\n\nPrerequisites\n\nYou must have a valid Amazon Web Services developer\ \ account, and be\nsigned up to use Amazon DynamoDB. More information are available\ \ at\nhttp://aws.amazon.com/dynamodb[Amazon DynamoDB].\n\n[[AWS-DDB-URIFormat]]\n\ URI Format\n^^^^^^^^^^\n\n[source,java]\n------------------------------\naws-ddb://domainName[?options]\n\ ------------------------------\n\nYou can append query options to the URI in\ \ the following format,\n?options=value&option2=value&...\n\n[[AWS-DDB-URIOptions]]\n\ URI Options\n^^^^^^^^^^^\n\n\n// component options: START\nThe AWS DynamoDB\ \ component has no options.\n// component options: END\n\n\n\n\n// endpoint\ \ options: START\nThe AWS DynamoDB component supports 14 endpoint options which\ \ are listed below:\n\n{% raw %}\n[width=\"100%\",cols=\"2,1,1m,1m,5\",options=\"\ header\"]\n|=======================================================================\n\ | Name | Group | Default | Java Type | Description\n| tableName | producer |\ \ | String | *Required* The name of the table currently worked with.\n| accessKey\ \ | producer | | String | Amazon AWS Access Key\n| amazonDDBClient | producer\ \ | | AmazonDynamoDB | To use the AmazonDynamoDB as the client\n| amazonDdbEndpoint\ \ | producer | | String | The region with which the AWS-DDB client wants to\ \ work with.\n| consistentRead | producer | false | boolean | Determines whether\ \ or not strong consistency should be enforced when data is read.\n| keyAttributeName\ \ | producer | | String | Attribute name when creating table\n| keyAttributeType\ \ | producer | | String | Attribute type when creating table\n| operation |\ \ producer | PutItem | DdbOperations | What operation to perform\n| proxyHost\ \ | producer | | String | To define a proxy host when instantiating the SQS\ \ client\n| proxyPort | producer | | Integer | To define a proxy port when\ \ instantiating the SQS client\n| readCapacity | producer | | Long | The provisioned\ \ throughput to reserve for reading resources from your table\n| secretKey |\ \ producer | | String | Amazon AWS Secret Key\n| writeCapacity | producer |\ \ | Long | The provisioned throughput to reserved for writing resources to\ \ your table\n| synchronous | advanced | false | boolean | Sets whether synchronous\ \ processing should be strictly used or Camel is allowed to use asynchronous\ \ processing (if supported).\n|=======================================================================\n\ {% endraw %}\n// endpoint options: END\n\n\n\nRequired DDB component options\n\ \nYou have to provide the amazonDDBClient in the\nlink:registry.html[Registry]\ \ or your accessKey and secretKey to access\nthe http://aws.amazon.com/dynamodb[Amazon's\ \ DynamoDB].\n\n[[AWS-DDB-Usage]]\nUsage\n^^^^^\n\n[[AWS-DDB-MessageheadersevaluatedbytheDDBproducer]]\n\ Message headers evaluated by the DDB producer\n+++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbBatchItems` |`Map`\ \ |A map of the table name and corresponding items to get by primary key.\n\n\ |`CamelAwsDdbTableName` |`String` |Table Name for this operation.\n\n|`CamelAwsDdbKey`\ \ |`Key` |The primary key that uniquely identifies each item in a table. *From\ \ Camel 2.16.0 the type of this header is Map and not\ \ Key*\n\n|`CamelAwsDdbReturnValues` |`String` |Use this parameter if you want\ \ to get the attribute name-value pairs\nbefore or after they are modified(NONE,\ \ ALL_OLD, UPDATED_OLD, ALL_NEW,\nUPDATED_NEW).\n\n|`CamelAwsDdbUpdateCondition`\ \ |`Map` |Designates an attribute for a conditional\ \ modification.\n\n|`CamelAwsDdbAttributeNames` |`Collection` |If attribute\ \ names are not specified then all attributes will be\nreturned.\n\n|`CamelAwsDdbConsistentRead`\ \ |`Boolean` |If set to true, then a consistent read is issued, otherwise eventually\n\ consistent is used.\n\n|`CamelAwsDdbItem` |`Map` |A\ \ map of the attributes for the item, and must include the primary key\nvalues\ \ that define the item.\n\n|`CamelAwsDdbExactCount` |`Boolean` |If set to true,\ \ Amazon DynamoDB returns a total number of items that\nmatch the query parameters,\ \ instead of a list of the matching items and\ntheir attributes. *From Camel\ \ 2.16.0 this header doesn't exist anymore.*\n\n|`CamelAwsDdbKeyConditions`\ \ |`Map` |*From Camel 2.16.0*. This header specify the selection\ \ criteria for the\nquery, and merge together the two old headers *CamelAwsDdbHashKeyValue*\n\ and *CamelAwsDdbScanRangeKeyCondition*\n\n|`CamelAwsDdbStartKey` |`Key` |Primary\ \ key of the item from which to continue an earlier query.\n\n|`CamelAwsDdbHashKeyValue`\ \ |`AttributeValue` |Value of the hash component of the composite primary key.\n\ *From Camel 2.16.0 this header doesn't exist anymore.*\n\n|`CamelAwsDdbLimit`\ \ |`Integer` |The maximum number of items to return.\n\n|`CamelAwsDdbScanRangeKeyCondition`\ \ |`Condition` |A container for the attribute values and comparison operators\ \ to use for\nthe query.*From Camel 2.16.0 this header doesn't exist anymore.*\n\ \n|`CamelAwsDdbScanIndexForward` |`Boolean` |Specifies forward or backward traversal\ \ of the index.\n\n|`CamelAwsDdbScanFilter` |`Map` |Evaluates\ \ the scan results and returns only the desired values.\n\n|`CamelAwsDdbUpdateValues`\ \ |`Map` |Map of attribute name to the new value\ \ and action for the update.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringBatchGetItemsoperation]]\nMessage headers\ \ set during BatchGetItems operation\n++++++++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbBatchResponse` |`Map`\ \ |Table names and the respective item attributes from the tables.\n\n|`CamelAwsDdbUnprocessedKeys`\ \ |`Map` |Contains a map of tables and their respective\ \ keys that were not\nprocessed with the current response.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringDeleteItemoperation]]\nMessage headers set\ \ during DeleteItem operation\n+++++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbAttributes` |`Map`\ \ |The list of attributes returned by the operation.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringDeleteTableoperation]]\nMessage headers set\ \ during DeleteTable operation\n++++++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbProvisionedThroughput`| | \n\n|`ProvisionedThroughputDescription`\ \ | |The value of the ProvisionedThroughput property for this table\n\n|`CamelAwsDdbCreationDate`\ \ |`Date` |Creation DateTime of this table.\n\n|`CamelAwsDdbTableItemCount`\ \ |`Long` |Item count for this table.\n\n|`CamelAwsDdbKeySchema` |`KeySchema`\ \ |The KeySchema that identifies the primary key for this table. \n*From Camel\ \ 2.16.0 the type of this header is List and not KeySchema*\n\ \n|`CamelAwsDdbTableName` |`String` |The table name. \n\n|`CamelAwsDdbTableSize`\ \ |`Long` |The table size in bytes. \n\n|`CamelAwsDdbTableStatus` |`String`\ \ |The status of the table: CREATING, UPDATING, DELETING, ACTIVE\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringDescribeTableoperation]]\nMessage headers\ \ set during DescribeTable operation\n++++++++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbProvisionedThroughput` |{{ProvisionedThroughputDescription}}\ \ |The value of the ProvisionedThroughput property for this table\n\n|`CamelAwsDdbCreationDate`\ \ |`Date` |Creation DateTime of this table.\n\n|`CamelAwsDdbTableItemCount`\ \ |`Long` |Item count for this table.\n\n|`CamelAwsDdbKeySchema` |{{KeySchema}}\ \ |The KeySchema that identifies the primary key for this table.\n*From Camel\ \ 2.16.0 the type of this header is List and\nnot KeySchema*\n\ \n|`CamelAwsDdbTableName` |`String` |The table name.\n\n|`CamelAwsDdbTableSize`\ \ |`Long` |The table size in bytes.\n\n|`CamelAwsDdbTableStatus` |`String` |The\ \ status of the table: CREATING, UPDATING, DELETING, ACTIVE\n\n|`CamelAwsDdbReadCapacity`\ \ |`Long` |ReadCapacityUnits property of this table.\n\n|`CamelAwsDdbWriteCapacity`\ \ |`Long` |WriteCapacityUnits property of this table.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringGetItemoperation]]\nMessage headers set during\ \ GetItem operation\n++++++++++++++++++++++++++++++++++++++++++++\n\n[width=\"\ 100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbAttributes` |`Map`\ \ |The list of attributes returned by the operation.\n\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringPutItemoperation]]\nMessage headers set during\ \ PutItem operation\n++++++++++++++++++++++++++++++++++++++++++++\n\n[width=\"\ 100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbAttributes` |`Map`\ \ |The list of attributes returned by the operation.\n\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringQueryoperation]]\nMessage headers set during\ \ Query operation\n++++++++++++++++++++++++++++++++++++++++++\n\n[width=\"100%\"\ ,cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbItems` |`List>`\ \ |The list of attributes returned by the operation.\n\n|`CamelAwsDdbLastEvaluatedKey`\ \ |`Key` |Primary key of the item where the query operation stopped, inclusive\ \ of\nthe previous result set.\n\n|`CamelAwsDdbConsumedCapacity` |`Double` |The\ \ number of Capacity Units of the provisioned throughput of the table\nconsumed\ \ during the operation.\n\n|`CamelAwsDdbCount` |`Integer` |Number of items in\ \ the response.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringScanoperation]]\nMessage headers set during\ \ Scan operation\n+++++++++++++++++++++++++++++++++++++++++\n\n[width=\"100%\"\ ,cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbItems` |`List>`\ \ |The list of attributes returned by the operation.\n\n|`CamelAwsDdbLastEvaluatedKey`\ \ |`Key` |Primary key of the item where the query operation stopped, inclusive\ \ of\nthe previous result set.\n\n|`CamelAwsDdbConsumedCapacity` |`Double` |The\ \ number of Capacity Units of the provisioned throughput of the table\nconsumed\ \ during the operation.\n\n|`CamelAwsDdbCount` |`Integer` |Number of items in\ \ the response.\n\n|`CamelAwsDdbScannedCount` |`Integer` |Number of items in\ \ the complete scan before any filters are applied.\n|=======================================================================\n\ \n[[AWS-DDB-MessageheaderssetduringUpdateItemoperation]]\nMessage headers set\ \ during UpdateItem operation\n+++++++++++++++++++++++++++++++++++++++++++++++\n\ \n[width=\"100%\",cols=\"10%,10%,80%\",options=\"header\",]\n|=======================================================================\n\ |Header |Type |Description\n\n|`CamelAwsDdbAttributes` |`Map`\ \ |The list of attributes returned by the operation.\n\n|=======================================================================\n\ \n[[AWS-DDB-AdvancedAmazonDynamoDBconfiguration]]\nAdvanced AmazonDynamoDB configuration\n\ +++++++++++++++++++++++++++++++++++++\n\nIf you need more control over the `AmazonDynamoDB`\ \ instance\nconfiguration you can create your own instance and refer to it from\ \ the\nURI:\n\n[source,java]\n----------------------------------------------------\n\ from(\"direct:start\")\n.to(\"aws-ddb://domainName?amazonDDBClient=#client\"\ );\n----------------------------------------------------\n\nThe `#client` refers\ \ to a `AmazonDynamoDB` in the\nlink:registry.html[Registry].\n\nFor example\ \ if your Camel Application is running behind a firewall:\n\n[source,java]\n\ --------------------------------------------------------------------------------------\n\ AWSCredentials awsCredentials = new BasicAWSCredentials(\"myAccessKey\", \"\ mySecretKey\");\nClientConfiguration clientConfiguration = new ClientConfiguration();\n\ clientConfiguration.setProxyHost(\"http://myProxyHost\");\nclientConfiguration.setProxyPort(8080);\n\ \nAmazonDynamoDB client = new AmazonDynamoDBClient(awsCredentials, clientConfiguration);\n\ \nregistry.bind(\"client\", client);\n--------------------------------------------------------------------------------------\n\ \n[[AWS-DDB-Dependencies]]\nDependencies\n^^^^^^^^^^^^\n\nMaven users will need\ \ to add the following dependency to their pom.xml.\n\n*pom.xml*\n\n[source,xml]\n\ ---------------------------------------\n\n org.apache.camel\n\ \ camel-aws\n ${camel-version}\n\ \n---------------------------------------\n\nwhere `${camel-version`}\ \ must be replaced by the actual version of Camel\n(2.10 or higher).\n\n[[AWS-DDB-SeeAlso]]\n\ See Also\n^^^^^^^^\n\n* link:configuring-camel.html[Configuring Camel]\n* link:component.html[Component]\n\ * link:endpoint.html[Endpoint]\n* link:getting-started.html[Getting Started]\n\ \n* link:aws.html[AWS Component]\n\n"