Using the generic Context to do a operation will end up always calling public void perform(Operator o) of the class extending FilterContext. If possible this method should use reflection to find the right method to call, if no such method exists, it should call perform on the context stored in the FilterContext.
I needed to add the following to my code to make it call perform with a TripleWriter, the code itself was pretty much copied from LoggingContext.
public void perform(Operator o) throws OperatorException {
if (o instanceof TripleWriter)
else
{ getContext().perform(o); }}