OpenStack Swift
Since Camel 2.19
The openstack-swift component allows messages to be sent to an OpenStack object storage services.
Dependencies
Maven users will need to add the following dependency to their pom.xml.
pom.xml
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-openstack</artifactId>
<version>${camel-version}</version>
</dependency>
where ${camel-version}
must be replaced by the actual version of Camel.
URI Format
openstack-swift://hosturl[?options]
You can append query options to the URI in the following format
?options=value&option2=value&…
URI Options
The OpenStack Swift component has no options.
The OpenStack Swift endpoint is configured using URI syntax:
openstack-swift:host
with the following path and query parameters:
Path Parameters (1 parameters):
Name | Description | Default | Type |
---|---|---|---|
host |
Required OpenStack host url |
String |
Query Parameters (9 parameters):
Name | Description | Default | Type |
---|---|---|---|
apiVersion (producer) |
OpenStack API version |
V3 |
String |
config (producer) |
OpenStack configuration |
Config |
|
domain (producer) |
Authentication domain |
default |
String |
operation (producer) |
The operation to do |
String |
|
password (producer) |
Required OpenStack password |
String |
|
project (producer) |
Required The project ID |
String |
|
subsystem (producer) |
Required OpenStack Swift subsystem |
String |
|
username (producer) |
Required OpenStack username |
String |
|
synchronous (advanced) |
Sets whether synchronous processing should be strictly used, or Camel is allowed to use asynchronous processing (if supported). |
false |
boolean |
Spring Boot Auto-Configuration
When using Spring Boot make sure to use the following Maven dependency to have support for auto configuration:
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-openstack-starter</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
The component supports 2 options, which are listed below.
Name | Description | Default | Type |
---|---|---|---|
camel.component.openstack-swift.enabled |
Enable openstack-swift component |
true |
Boolean |
camel.component.openstack-swift.resolve-property-placeholders |
Whether the component should resolve property placeholders on itself when starting. Only properties which are of String type can use property placeholders. |
true |
Boolean |
containers
Operations you can perform with the Container producer
Operation | Description |
---|---|
|
Create new container. |
|
Get the container. |
|
Get all containers. |
|
Update the container. |
|
Delete the container. |
|
Get metadata. |
|
Create/update metadata. |
|
Delete metadata. |
Message headers evaluated by the Volume producer
Header | Type | Description |
---|---|---|
|
|
The operation to perform. |
|
|
The container name. |
|
|
Container metadata prefix. |
|
|
Versions location. |
|
|
ACL - container read. |
|
|
ACL - container write. |
|
|
List options - limit. |
|
|
List options - marker. |
|
|
List options - end marker. |
|
|
List options - delimiter. |
|
|
List options - path. |
If you need more precise container settings you can create new object of the type org.openstack4j.model.storage.object.options.CreateUpdateContainerOptions (in case of create or update operation) or org.openstack4j.model.storage.object.options.ContainerListOptions for listing containers and send in the message body.