package org.elasticsearch.river.mongodb.embed;
import org.apache.commons.lang3.Validate;
import de.flapdoodle.embed.mongo.Command;
import de.flapdoodle.embed.process.extract.UUIDTempNaming;
import de.flapdoodle.embed.process.io.directories.UserHome;
import de.flapdoodle.embed.process.io.progress.StandardConsoleProgressListener;
public class TokuDownloadConfigBuilder extends de.flapdoodle.embed.process.config.store.DownloadConfigBuilder {
private static final String DEFAULT_DOWNLOAD_PATH = "http://www.tokutek.com/tokumx-for-mongodb/tokumx-community-edition-download/?file=";
public TokuDownloadConfigBuilder packageResolverForCommand(Command command) {
Validate.isTrue(command == Command.MongoD, "Only command de.flapdoodle.embed.mongo.Command.MongoD is currently supported");
packageResolver(new TokuPaths());
return this;
}
public TokuDownloadConfigBuilder defaultsForCommand(Command command) {
return defaults().packageResolverForCommand(command);
}
public TokuDownloadConfigBuilder defaults() {
fileNaming().setDefault(new UUIDTempNaming());
downloadPath(DEFAULT_DOWNLOAD_PATH);
progressListener().setDefault(new StandardConsoleProgressListener());
artifactStorePath().setDefault(new UserHome(".embedmongo"));
downloadPrefix().setDefault(new DownloadPrefix("embedtokumx-download"));
userAgent().setDefault(new UserAgent(
"Mozilla/5.0 (compatible; elasticsearch-river-mongodb tests; https://github.com/richardwilly98/elasticsearch-river-mongodb)"));
return this;
}
}