if (!Pattern.compile("(?s)^http[s]?://.*$").matcher(beginUrl).matches()) {
throw new IllegalArgumentException("beginUrl must start with http:// or https://");
}
this.beginUrl = beginUrl;
downloader = new WebDownloader();
normalizer = new DefaultLinkNormalizer(beginUrl);
minPoolSize = 30;
maxPoolSize = 30;
keepAliveMilliseconds = 30000;
requestDelayMilliseconds = 1000;
}