title: How to Instantiate an object with dynamic members with Dagger2?
body: <p>I have a class which gets arguments in a constructor:</p>
  
  <pre><code>public class Dependency{
    Dependency(int number1, int number2, int number3, DependencyListener listener){}     
  }
  </code></pre>
  
  <p>each dependent class needs to path different arguments in order to instantiate a dependency.
  How should i define the module and the component that other classes could initiate it properly while transferring different values and passing 'this' as the listener?</p>
  
  <p>Also, How should i use the @Inject method in this case?</p>
  
  <p><strong>Edit 1</strong></p>
  
  <p>@jeff-bowman
  I was thinking of using the following method:</p>
  
  <pre><code>@Module public class DependencyModule {
    int first;
    int second;
    int third;
    DependencyListener listener;
  
    public DependencyModule(int first, int second, int third, DependencyListener listener) {
      this.first = first;
      this.second = second;
      this.third = third;
      this.listener = listener
    }
  
    @Provides Dependency provideDependency(int first, int second, int third, DependencyListener listener) {
      return new Dependency(first, second, third, listener)
    }
  }
  
  @Component(modules = { DependencyModule.class }) public interface     
  DependencyComponent {
    void inject(DependentClass1 target);
    void inject(DependentClass2 target);
    void inject(DependentClass3 target);
  }
  </code></pre>
  
  <p>and in each DependentClass i would do:</p>
  
  <pre><code>public class DependentClass{
    @Inject Dependency;
    public DependentClass{
        DaggerDependencyComponent.builder().dependencyModule(new DependencyModule(first, second, third, this)).build().inject();
    }
  }
  </code></pre>
  
  <p>Is it a good practice?</p>