package com.googlecode.totallylazy.functions;
import java.util.concurrent.Callable;
public final class Sleepy0<T> implements Function0<T> {
private final Callable<? extends T> callable;
private final int millis;
private Sleepy0(Callable<? extends T> callable, int millis) {
this.callable = callable;
this.millis = millis;
}
public final T call() throws Exception {
T t = callable.call();
Thread.sleep(millis);
return t;
}
public static <T> Function0<T> sleepy(Callable<? extends T> callable, int millis) {
return new Sleepy0<T>(callable, millis);
}
}