se.jbee.inject.bootstrap.Linker Maven / Gradle / Ivy
Go to download
Show more of this group Show more artifacts with this name
Show all versions of silk-di Show documentation
Show all versions of silk-di Show documentation
Silk Java dependency injection framework
/*
* Copyright (c) 2012, Jan Bernitt
*
* Licensed under the Apache License, Version 2.0, http://www.apache.org/licenses/LICENSE-2.0
*/
package se.jbee.inject.bootstrap;
/**
* A strategy to create actual artifacts that reflect actual links between an abstract type
* and its actual implementation(s). This includes the strategy how to construct them (what includes
* which constructor is picked).
*
* @author Jan Bernitt ([email protected])
*
* @param
* The type of the artifacts created. This can be any kind of data the is derived from
* the input ({@link Bindings}).
*/
public interface Linker {
/**
* Links the {@link Bindings} described by the given {@link Module}s to a list of artifacts that
* represent those in some linker specific form.
*
* @param inspector
* Default used to pick constructors (and maybe methods used as factories)
* @param modules
* A list of {@link Module}s to link together.
* @return A list of artifacts resulting from the {@link Module}'s declaration of
* {@link Bindings}.
*/
T[] link( Inspector inspector, Module... modules );
}
© 2015 - 2025 Weber Informatics LLC | Privacy Policy