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

com.google.inject.assistedinject.AssistedMethod Maven / Gradle / Ivy

package com.google.inject.assistedinject;

import com.google.inject.TypeLiteral;
import com.google.inject.spi.Dependency;

import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
import java.util.Set;

/**
 * Details about how a method in an assisted inject factory will be assisted.
 */
public interface AssistedMethod {

    /**
     * Returns the factory method that is being assisted.
     */
    Method getFactoryMethod();

    /**
     * Returns the implementation type that will be created when the method is
     * used.
     */
    TypeLiteral getImplementationType();

    /**
     * Returns the constructor that will be used to construct instances of the
     * implementation.
     */
    Constructor getImplementationConstructor();

    /**
     * Returns all non-assisted dependencies required to construct and inject
     * the implementation.
     */
    Set> getDependencies();
}




© 2015 - 2024 Weber Informatics LLC | Privacy Policy