The four stages of the plugin’s pipeline are implemented with Java classes that implement specific interfaces for each stage. These four Java interfaces are listed below and can be found in the combiner-maven-plugin-api dependency in maven central.
Within the configuration of each combination, there are places to specify Strings or Lists of Strings detailing which implementation classes to user for each stage of the pipeline. The input and transformer stages both allow Lists while the combine and output stages only allow a String. The following strategies are how the plugin attempts to locate the Java classes that match the values specified in the combination configuration:
Pipeline Stage | Java Interface | Default Package |
---|---|---|
Input | com.github.jasonmfehr.combiner.input.InputSourceReader | com.github.jasonmfehr.combiner.input |
Transform | com.github.jasonmfehr.combiner.transformer.ResourceTransformer | com.github.jasonmfehr.combiner.transformer |
Combine | com.github.jasonmfehr.combiner.combiner.ResourceCombiner | com.github.jasonmfehr.combiner.combiner |
Output | com.github.jasonmfehr.combiner.output.OutputSourceWriter | com.github.jasonmfehr.combiner.output |