sirius.kernel.di.std.PriorityParts Maven / Gradle / Ivy
/*
* Made with all the love in the world
* by scireum in Remshalden, Germany
*
* Copyright by scireum GmbH
* http://www.scireum.de - [email protected]
*/
package sirius.kernel.di.std;
import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;
/**
* Inserts all parts registered in the GlobalContext as List.
*
* The references class must be an implementation of {@link Priorized} and all parts will
* be sorted by their priority (ascending) before the list is inserted.
*
* @see Parts
*/
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD)
public @interface PriorityParts {
/**
* Determines the lookup class used to retrieve the parts from the GlobalContext.
*
* @return the lookup class used to fetch all parts of interest.
*/
Class extends Priorized> value();
}