public Object invoke(Invocation invocation) throws Throwable
{
if (new CFlowMatcher().matches(expr, invocation))
{
Invocation wrapper = invocation.getWrapper(chain);
return wrapper.invokeNext();
}
// no match for cflow so just go down chain
return invocation.invokeNext();
}
}