Fork me on GitHub

Transformations

There are several types of configuration transformations that currently exist. All are briefly described here, but more detail is available in the javadocs for the ConfigurationTransformation class. Construction and application of transformations are kept as separate phases to allow transformations to be treated like functions.

Single

This is the basis of the transformation system. A transformation is composed of a TransformationAction assigned to a path (that may contain wildcard values). Paths are sorted in natural ordering from shortest path to longest path.

Chained

The chained transformation takes several existing transformations and executes them in order. This can be used for more complex transformations where multiple phases are necessary.

Versioned

The versioned transformer is designed to make it simple to build versioned configurations. It accepts a key to get the current schema version at and a transformation for each version to make the required changes from the previous version.