public class SourceItemTransformerChain extends java.lang.Object implements SourceItemTransformer
SourceItemTransformer.getSourceItemType()
of step N+1
must match the SourceItemTransformer.getTargetItemType()
of step N.Modifier and Type | Field and Description |
---|---|
private java.util.List<SourceItemTransformer> |
chain |
private Item |
source |
private Item |
target |
Constructor and Description |
---|
SourceItemTransformerChain(java.util.List<SourceItemTransformer> chain)
Create a new source item transformer chain.
|
Modifier and Type | Method and Description |
---|---|
private java.util.Set<java.lang.Integer> |
appendFakeSources(java.util.Set<java.lang.Integer> existing) |
Item |
getSourceItemType()
Get the source item type of the first step in the chain.
|
Item |
getTargetItemType()
Get the target item type of the last step in the chain.
|
java.util.Set<java.lang.Integer> |
transform(TransformContext context,
java.util.Set<java.lang.Integer> source)
Transform the source items into target items by invoking each
step in the transformer chain.
|
private final java.util.List<SourceItemTransformer> chain
private final Item source
private final Item target
public SourceItemTransformerChain(java.util.List<SourceItemTransformer> chain)
java.lang.IllegalArgumentException
- If the chain is null or empty or have non-matching
transformation stepspublic Item getSourceItemType()
getSourceItemType
in interface SourceItemTransformer
public Item getTargetItemType()
getTargetItemType
in interface SourceItemTransformer
public java.util.Set<java.lang.Integer> transform(TransformContext context, java.util.Set<java.lang.Integer> source)
transform
in interface SourceItemTransformer
private java.util.Set<java.lang.Integer> appendFakeSources(java.util.Set<java.lang.Integer> existing)