package hudson.model; import hudson.Extension; import hudson.ExtensionList; import hudson.ExtensionPoint; import java.util.Collection; import java.util.Collections; import jenkins.model.TransientActionFactory; /** * Extension point for inserting transient {@link Action}s into {@link Run}s. * * To register your implementation, put {@link Extension} on your subtype. * * @author Lucie Votypkova * @since 1.458 * @see Action * @deprecated Does not contribute to {@link Run#getActions}. Use {@link TransientActionFactory} instead. */ @Deprecated public abstract class TransientBuildActionFactory implements ExtensionPoint { /** * Creates actions for the given build. * * @param target for which the action objects are requested. Never null. * @return Can be empty but must not be null. */ public Collection<? extends Action> createFor(Run target) { if (target instanceof AbstractBuild) return createFor((AbstractBuild)target); else return Collections.emptyList(); } /** * @deprecated as of 1.461 * Override and call {@link #createFor(Run)} instead. */ @Deprecated public Collection<? extends Action> createFor(AbstractBuild target) { return Collections.emptyList(); } /** * Returns all the registered {@link TransientBuildActionFactory}s. */ public static ExtensionList<TransientBuildActionFactory> all() { return ExtensionList.lookup(TransientBuildActionFactory.class); } }