package fitnesse.slim;
import java.util.List;
public class LibraryMethodExecutor extends MethodExecutor {
private final List<Library> libraries;
public LibraryMethodExecutor(List<Library> libraries) {
this.libraries = libraries;
}
@Override
public MethodExecutionResult execute(String instanceName, String methodName, Object[] args)
throws Throwable {
for (int i = (libraries.size() - 1); i >= 0; i--) {
MethodExecutionResult result = findAndInvoke(methodName, args, libraries.get(i).instance);
if (result.hasResult()) {
return result;
}
}
return MethodExecutionResult.NO_METHOD_IN_LIBRARIES;
}
}