flexjson.transformer.TransformerWrapper Maven / Gradle / Ivy
package flexjson.transformer;
/**
* This class quietly wraps all transformers so that FlexJSON
* can perform certain functionality consistently across all
* transformers.
*/
public class TransformerWrapper extends AbstractTransformer
{
protected Transformer transformer;
public Transformer getTransformer()
{
return transformer;
}
public void setTransformer(Transformer transformer)
{
this.transformer= transformer;
}
protected Boolean isInterceptorTransformer= Boolean.FALSE;
public TransformerWrapper(Transformer transformer)
{
this.transformer= transformer;
}
public void transform(Object object)
{
// push object onto stack so object has reference before starting
getContext().getObjectStack().push(object);
this.transformer.transform(object);
// Call FlexJSON interceptors afterTranform last
getContext().getObjectStack().pop();
}
@Override
public Boolean isInline()
{
return transformer instanceof Inline && ((Inline) transformer).isInline();
}
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy