Extended S3 connector

The Hybrid Assets module adds a number of actions to the Assets app for transferring content to external storage and returning hybrid asset content to be stored in Magnolia.

If your content is already stored outside of Magnolia, you can also create a hybrid asset linked to it.

Open the Assets app and select a folder, the Hybrid Assets module adds a new action:

link external content

link asset dialog

The first field - "Content" - is for entering the storage URL of your new hybrid asset. You can type in the storage URL yourself, but clicking on the Select button will bring up an asset chooser:

s3 asset chooser

You can navigate through the S3 buckets and directories and pick the content you want to link to your hybrid asset and its storage URL will be entered into the Content field.
  • Magnolia 6.2

  • Magnolia 5.7

External Dam S3 connector

The AWS credentials are configured in the Passwords app.

Multiple S3 Credentials

The Amazon S3 Connector uses only one set of AWS credentials to access S3. If you have more than one external content stores, or have multiple AWS credentials or want to control what content a user sees in the S3 asset chooser, you can use the Extended Amazon S3 Connector to manage different AWS credentials and associate users with each defined credential.

Installing

Maven is the easiest way to add the Extended Amazon S3 Connector to your bundle:

<dependency>
  <groupId>info.magnolia.s3-extension</groupId>
  <artifactId>amazon-s3-connector-extension-module</artifactId>
  <version>1.2.9</version>
</dependency>
Configuring multiple S3 Credentials

AWS credentials are configured in the Configuration > /modules/amazon-s3-connector.

S3 external content store

The Hybrid Assets module includes an S3 external content store, which also works with S3 compatible storage: info.magnolia.dam.hybrid.store.S3AssetStore.

The following are configurable properties of an S3 external content store:

Property Description

class

required

Must be info.magnolia.dam.hybrid.store.S3AssetStore.

name

required

The name of the external content store.

enabled

required

Set to true.

description

optional

A brief description of the external content store.

referencePattern

required

A Java regular expression, the external content stores whose referencePattern match the storage URL of a hybrid asset may be used to content.

buffering

optional

The buffering policy when reading or writing content to S3. Valid values:

  • inMemory - content is buffered in memory (the default)

  • inTempFile - content is buffered in a temporary file

bufferSize

optional

The maximum buffer size in bytes. The default is 1048576 (1 megabyte).

refreshClient

optional

If true, create a new connection to S3 or compatible storage each time hybrid asset is read or written.

If false (the default), connections will be cached.

Setting refreshClient = true will slow down reading and writing of hybrid asset content.

clientTTLMillis

optional

The maximum time in milliseconds a cached S3 will be kept. Connections older than clientTTLMillis will be closed and a new connection will be created as needed.

The default value is 86400000 (24 hours).

Feedback

Incubators

×

Location

This widget lets you know where you are on the docs site.

You are currently perusing through the Hybrid Assets module docs.

Main doc sections

DX Core Headless PaaS Legacy Cloud Incubator modules