All Downloads are FREE. Search and download functionalities are using the official Maven repository.

com.google.caliper.runner.ExperimentingCaliperRun_Factory Maven / Gradle / Ivy

The newest version!
// Generated by Dagger (https://google.github.io/dagger).
package com.google.caliper.runner;

import com.google.caliper.api.ResultProcessor;
import com.google.caliper.core.BenchmarkClassModel;
import com.google.caliper.runner.experiment.ExperimentSelector;
import com.google.caliper.runner.instrument.Instrument;
import com.google.caliper.runner.options.CaliperOptions;
import com.google.caliper.runner.worker.dryrun.DryRunComponent;
import com.google.caliper.runner.worker.trial.TrialComponent;
import com.google.common.collect.ImmutableSet;
import com.google.common.util.concurrent.ListeningExecutorService;
import dagger.internal.Factory;
import java.io.PrintWriter;
import javax.inject.Provider;

public final class ExperimentingCaliperRun_Factory implements Factory {
  private final Provider optionsProvider;

  private final Provider stdoutProvider;

  private final Provider benchmarkClassProvider;

  private final Provider> instrumentsProvider;

  private final Provider> resultProcessorsProvider;

  private final Provider selectorProvider;

  private final Provider trialExecutorProvider;

  private final Provider dryRunComponentBuilderProvider;

  private final Provider trialComponentBuilderProvider;

  public ExperimentingCaliperRun_Factory(
      Provider optionsProvider,
      Provider stdoutProvider,
      Provider benchmarkClassProvider,
      Provider> instrumentsProvider,
      Provider> resultProcessorsProvider,
      Provider selectorProvider,
      Provider trialExecutorProvider,
      Provider dryRunComponentBuilderProvider,
      Provider trialComponentBuilderProvider) {
    this.optionsProvider = optionsProvider;
    this.stdoutProvider = stdoutProvider;
    this.benchmarkClassProvider = benchmarkClassProvider;
    this.instrumentsProvider = instrumentsProvider;
    this.resultProcessorsProvider = resultProcessorsProvider;
    this.selectorProvider = selectorProvider;
    this.trialExecutorProvider = trialExecutorProvider;
    this.dryRunComponentBuilderProvider = dryRunComponentBuilderProvider;
    this.trialComponentBuilderProvider = trialComponentBuilderProvider;
  }

  @Override
  public ExperimentingCaliperRun get() {
    return new ExperimentingCaliperRun(
        optionsProvider.get(),
        stdoutProvider.get(),
        benchmarkClassProvider.get(),
        instrumentsProvider.get(),
        resultProcessorsProvider.get(),
        selectorProvider.get(),
        trialExecutorProvider.get(),
        dryRunComponentBuilderProvider,
        trialComponentBuilderProvider.get());
  }

  public static ExperimentingCaliperRun_Factory create(
      Provider optionsProvider,
      Provider stdoutProvider,
      Provider benchmarkClassProvider,
      Provider> instrumentsProvider,
      Provider> resultProcessorsProvider,
      Provider selectorProvider,
      Provider trialExecutorProvider,
      Provider dryRunComponentBuilderProvider,
      Provider trialComponentBuilderProvider) {
    return new ExperimentingCaliperRun_Factory(
        optionsProvider,
        stdoutProvider,
        benchmarkClassProvider,
        instrumentsProvider,
        resultProcessorsProvider,
        selectorProvider,
        trialExecutorProvider,
        dryRunComponentBuilderProvider,
        trialComponentBuilderProvider);
  }

  public static ExperimentingCaliperRun newInstance(
      CaliperOptions options,
      PrintWriter stdout,
      BenchmarkClassModel benchmarkClass,
      ImmutableSet instruments,
      ImmutableSet resultProcessors,
      ExperimentSelector selector,
      ListeningExecutorService trialExecutor,
      Provider dryRunComponentBuilder,
      TrialComponent.Builder trialComponentBuilder) {
    return new ExperimentingCaliperRun(
        options,
        stdout,
        benchmarkClass,
        instruments,
        resultProcessors,
        selector,
        trialExecutor,
        dryRunComponentBuilder,
        trialComponentBuilder);
  }
}




© 2015 - 2025 Weber Informatics LLC | Privacy Policy