in lib/crawler/api/crawl.rb [22:45]
def initialize(config)
raise ArgumentError, 'Invalid config' unless config.is_a?(Config)
raise ArgumentError, 'Missing domain allowlist' if config.domain_allowlist.empty?
raise ArgumentError, 'Seed URLs need to be an enumerator' unless config.seed_urls.is_a?(Enumerator)
raise ArgumentError, 'Need at least one Seed URL' unless config.seed_urls.any?
@config = config
@executor = HttpExecutor.new(config)
@crawl_queue = Crawler::Data::UrlQueue.create(config)
@seen_urls = Crawler::Data::SeenUrls.new
@shutdown_started = Concurrent::AtomicBoolean.new(false)
@sink = Crawler::OutputSink.create(config)
@allow_resume = false
end