package ecologylab.bigsemantics.downloadcontrollers; import java.io.IOException; import ecologylab.bigsemantics.httpclient.SimplHttpResponse; import ecologylab.net.ParsedURL; /** * A fake DownloadController for unit test. * * @author quyin */ public class FakeDownloadController extends AbstractDownloadController { private FakeDownloadControllerFactory factory; public FakeDownloadController(FakeDownloadControllerFactory factory) { this.factory = factory; } @Override public void setUserAgent(String userAgent) { // no op } @Override public boolean accessAndDownload(ParsedURL location) throws IOException { setOriginalLocation(location); String url = location.toString(); if (factory.presetResponses().containsKey(url)) { SimplHttpResponse resp = factory.presetResponses().get(url); if (resp.getUrl() == null) { resp.setUrl(url); } setHttpResponse(resp); return true; } return false; } @Override public boolean isGood() { return getHttpResponse() != null; } }