Document Store
The Document Store component allows you to store data into the Content Store.
The component will validate if the object is in line with the data model.
Handlebars
This component lets you use Handlebars templates. More information about Handlebars can be found in this section
Configuration
Mode
The Document Store component can be configure to work in three different modes:
- Insert: inserts a single document into the Content Store.
- Merge: merges the data based on the
_id
. It updates the data in the Content Store with the newly supplied values. Any omitted fields will be kept. If the document doesn't exist it will be created. - Replace: overwrites a document based on the
_id
or creates it if it doesn’t exists.
Connection string
A MongoDB connection string.
Example: mongodb://<username>:<password>@localhost:27017/<databaseName>
Here <databaseName>
is the database to store content.
Use TLS
Whether or not to use TLS in case your mongoDB requires TLS.
Allow Invalid Certificates
Checking this will disable certificate validation. Warning: specifying this option in a production environment makes your application insecure and potentially vulnerable to expired certificates and to foreign processes posing as valid client instances.
Certificate Authority File
IOne or more certificate authorities to trust when making a TLS connection. In order to access the local filesystem, the XILL4_WORKDIRS
environment variable must be set to the path of the directory to be accessed.
Example: .\ca.pem
Validation Enabled Enables component-level document validation. (default: true). Component-level validation will give you more detailed messages about the document requirements than database validation.
Inputs
Input
A message containing the document to store in the document
key. The document should be formatted according to any of the schemas in the data model
Example
{
"document": {
"exampleKey1": "exampleValue1",
"exampleKey2": "exampleValue2",
}
}
Outputs
Output
The incoming message.
Example
Example output with 'document' key:
{
"document": {
"key1": "value1",
"key2": "value2",
}
}