![JAR search and dependency download from the Maven repository](/logo.png)
fr.whimtrip.ext.jwhtscrapper.service.base.AutomaticScrapperManager Maven / Gradle / Ivy
Show all versions of whimtrip-ext-scrapper Show documentation
package fr.whimtrip.ext.jwhtscrapper.service.base;
import fr.whimtrip.ext.jwhtscrapper.intfr.AutomaticScrapperClient;
import fr.whimtrip.ext.jwhtscrapper.intfr.ScrapperHelper;
import org.jetbrains.annotations.NotNull;
import java.util.List;
/**
* Part of project jwht-scrapper
* Created on 26/07/18
*
*
* This interface provide a description of how an AutomaticScrapperManager
* should behave.
*
*
*
* This manager class is a factory pattern class that will instanciate
* ready to use {@link AutomaticScrapperClient} with only the list of objects
* to initiate the scrapping from and the helper class to coordinate
* them all.
*
*
*
* This is meant to be used and shared at the application level altough several
* different AutomaticScrapperManager can coexist at the application level, it
* is usually a common use case to use only one in the application scope.
*
*
* @author Louis-wht
* @since 1.0.0
*/
public interface AutomaticScrapperManager {
/**
*
*
* This method is a simple factory method to instanciate and
* prepare a {@link AutomaticScrapperClient}.
*
*
* @param parentObjs the objects that will be used to create the urls
* to scrap and be reused all along the scrapping
* process through the correct {@link ScrapperHelper}.
* @param helper the helper class that will guide and direct the whole
* scrapping process as well as its configurations.
* @param the type of Parent Objects
* @param the type of Helper Clazz
* @return a {@link AutomaticScrapperClient} built out of the submited input.
*/
> AutomaticScrapperClient createClient(
@NotNull final List
parentObjs,
@NotNull final H helper
);
}