package com.github.dreamhead.moco.handler.failover;
import com.github.dreamhead.moco.HttpRequest;
import com.github.dreamhead.moco.HttpResponse;
public class Failover {
public static final Failover DEFAULT_FAILOVER = new Failover(FailoverExecutor.EMPTY_FAILOVER,
FailoverStrategy.FAILOVER);
private final FailoverExecutor executor;
private final FailoverStrategy strategy;
public Failover(final FailoverExecutor executor, final FailoverStrategy strategy) {
this.executor = executor;
this.strategy = strategy;
}
public HttpResponse failover(final HttpRequest request) {
return executor.failover(request);
}
public void onCompleteResponse(final HttpRequest request, final HttpResponse httpResponse) {
executor.onCompleteResponse(request, httpResponse);
}
public boolean isPlayback() {
return strategy == FailoverStrategy.PLAYBACK;
}
}