### Question:
FilterToCQL implements FilterVisitor, ExpressionVisitor { private StringBuffer after( PropertyIsGreaterThan filter, StringBuffer output ){ LOGGER.finer("exporting AFTER"); Object expr1 = filter.getExpression1(); if( expr1 instanceof PropertyName){ PropertyName propertyName = (PropertyName) expr1; propertyName.accept(this, output); output.append(" AFTER "); filter.getExpression2().accept(this, output); }else { PropertyName propertyName = (PropertyName) filter.getExpression2(); propertyName.accept(this, output); output.append(" BEFORE "); filter.getExpression1().accept(this, output); } return output; }  Object visit(ExcludeFilter filter, Object extraData); Object visit(IncludeFilter filter, Object extraData); Object visit(And filter, Object extraData); Object visit(Id filter, Object extraData); Object visit(Not filter, Object extraData); Object visit(Or filter, Object extraData); Object visit(PropertyIsBetween filter, Object extraData); Object visit(PropertyIsEqualTo filter, Object extraData); Object visit(PropertyIsNotEqualTo filter, Object extraData); Object visit(PropertyIsGreaterThan filter, Object extraData); Object visit(PropertyIsGreaterThanOrEqualTo filter, Object extraData); Object visit(PropertyIsLessThan filter, Object extraData); Object visit(PropertyIsLessThanOrEqualTo filter, Object extraData); Object visit(PropertyIsLike filter, Object extraData); Object visit(PropertyIsNull filter, Object extraData); Object visit(BBOX filter, Object extraData); Object visit(Beyond filter, Object extraData); Object visit(Contains filter, Object extraData); Object visit(Crosses filter, Object extraData); Object visit(Disjoint filter, Object extraData); Object visit(DWithin filter, Object extraData); Object visit(Equals filter, Object extraData); Object visit(Intersects filter, Object extraData); Object visit(Overlaps filter, Object extraData); Object visit(Touches filter, Object extraData); Object visit(Within filter, Object extraData); Object visitNullFilter(Object extraData); Object visit(NilExpression expression, Object extraData); Object visit(Add expression, Object extraData); Object visit(Divide expression, Object extraData); Object visit(Function function, Object extraData); Object visit(Literal expression, Object extraData); StringBuffer date( Date date, StringBuffer output ); Object visit(Multiply expression, Object extraData); Object visit(PropertyName expression, Object extraData); Object visit(Subtract expression, Object extraData);  }### Answer:
@Test public void testAfter() throws Exception{ cqlTest("attr AFTER 2006-12-31T01:30:00Z"); }