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

io.github.amayaframework.di.ArtifactProvider Maven / Gradle / Ivy

Go to download

A framework responsible for monitoring and automating the dependency injection process.

There is a newer version: 2.2.0
Show newest version
package io.github.amayaframework.di;

import com.github.romanqed.jfunc.Function0;

import java.util.function.Function;

/**
 * An interface describing the read-only version of the repository - the artifact provider.
 * It is used inside the builder implementation when resolving artifacts.
 */
public interface ArtifactProvider extends Function> {

    /**
     * Gets the instantiator associated with the specified artifact.
     *
     * @param artifact the specified artifact
     * @return null or {@link Function0} instance
     */
    Function0 apply(Artifact artifact);
}