Package br.com.caelum.iogi

Source Code of br.com.caelum.iogi.DependenciesInjector

/**
*
*/
package br.com.caelum.iogi;

import java.util.Collection;

import br.com.caelum.iogi.reflection.Target;
import br.com.caelum.iogi.spi.DependencyProvider;
import br.com.caelum.iogi.util.NullDependencyProvider;

public class DependenciesInjector {
  private final DependencyProvider dependencyProvider;

  public DependenciesInjector(final DependencyProvider dependencyProvider) {
    this.dependencyProvider = dependencyProvider;
  }
 
  public boolean canObtainDependenciesFor(final Collection<Target<?>> targets) {
    for (final Target<?> target : targets) {
      if (!dependencyProvider.canProvide(target)) {
        return false;
      }
    }
    return true;
  }
 
  public Object provide(final Target<?> target) {
    return dependencyProvider.provide(target);
  }

    public static DependenciesInjector nullDependenciesInjector() {
        return new DependenciesInjector(new NullDependencyProvider());
    }
}
TOP

Related Classes of br.com.caelum.iogi.DependenciesInjector

TOP
Copyright © 2018 www.massapi.com. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.