public java.lang.Object invoke(Invocation invocation) {
   closeMethod();
   List<IArgumentMatcher> lastMatchers = LastControl.pullMatchers();
   lastInvocation = new ExpectedInvocation(invocation, lastMatchers);
   lastInvocationUsed = false;
   return emptyReturnValueFor(invocation.getMethod().getReturnType());
 }
 public void replay() {
   closeMethod();
   if (LastControl.pullMatchers() != null) {
     throw new IllegalStateException("matcher calls were used outside expectations");
   }
 }