Chapter 256. OpenStack Swift Component Available as of Camel version 2.19 The openstack-swift component allows messages to be sent to an OpenStack object storage services. 256.1. 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>USD{camel-version}</version> </dependency> where USD{camel-version } must be replaced by the actual version of Camel. 256.2. URI Format openstack-swift://hosturl[?options] You can append query options to the URI in the following format ?options=value&option2=value&... 256.3. URI Options The OpenStack Swift component has no options. The OpenStack Swift endpoint is configured using URI syntax: with the following path and query parameters: 256.3.1. Path Parameters (1 parameters): Name Description Default Type host Required OpenStack host url String 256.3.2. 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 256.4. Spring Boot Auto-Configuration 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 256.5. Usage You can use following settings for each subsystem: 256.6. containers 256.6.1. Operations you can perform with the Container producer Operation Description create Create new container. get Get the container. getAll Get all containers. update Update the container. delete Delete the container. getMetadata Get metadata. createUpdateMetadata Create/update metadata. deleteMetadata Delete metadata. 256.6.2. Message headers evaluated by the Volume producer Header Type Description operation String The operation to perform. name String The container name. X-Container-Meta- Map Container metadata prefix. X-Versions-Location String Versions location. X-Container-Read String ACL - container read. X-Container-Write String ACL - container write. limit Integer List options - limit. marker String List options - marker. end_marker String List options - end marker. delimiter Character List options - delimiter. path String 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. 256.7. objects 256.7.1. Operations you can perform with the Object producer Operation Description create Create new object. get Get the object. getAll Get all objects. update Get update the object. delete Delete the object. getMetadata Get metadata. createUpdateMetadata Create/update metadata. 256.7.2. Message headers evaluated by the Object producer Header Type Description operation String The operation to perform. containerName String The container name. objectName String The object name. 256.8. See Also Configuring Camel Component Endpoint Getting Started openstack Component

Commands:
<dependency> <groupId>org.apache.camel</groupId> <artifactId>camel-openstack</artifactId> <version>USD{camel-version}</version> </dependency>
openstack-swift://hosturl[?options]
openstack-swift:host