final AtomicReference<java.lang.reflect.Method> getFlowMethod = new AtomicReference<java.lang.reflect.Method>();
final AtomicReference<java.lang.reflect.Method> flowMethod = new AtomicReference<java.lang.reflect.Method>();
final AtomicReference<java.lang.reflect.Method> flowBlockedMethod = new AtomicReference<java.lang.reflect.Method>();
final AtomicReference<java.lang.reflect.Method> basicConsumeFourArgsMethod = new AtomicReference<java.lang.reflect.Method>();
final AtomicReference<java.lang.reflect.Method> basicQosTwoArgsMethod = new AtomicReference<java.lang.reflect.Method>();
ReflectionUtils.doWithMethods(delegate.getClass(), new MethodCallback(){
@Override
public void doWith(java.lang.reflect.Method method) throws IllegalArgumentException, IllegalAccessException {
if ("getFlow".equals(method.getName()) && method.getParameterTypes().length == 0
&& FlowOk.class.equals(method.getReturnType())) {