Package hudson.util

Class AlternativeUiTextProvider

  • All Implemented Interfaces:

    public abstract class AlternativeUiTextProvider
    extends Object
    implements ExtensionPoint
    Provides the alternative text to be rendered in the UI.

    In a few limited places in Jenkins, we want to provide an ability for plugins to replace the text to be shown in the UI. Since each such case is rather trivial and can't justify its own extension point, we consolidate all such use cases into a single extension point.

    Each such overridable UI text can have a context, which represents some information that enables the AlternativeUiTextProvider to make intelligent decision. This is normally some kind of a model object, such as AbstractProject.

    To define a new UI text that can be overridable by AlternativeUiTextProvider, define a constant of AlternativeUiTextProvider.Message (parameterized with the context object type), then call get(Message, Object) to obtain a text.

    To define an implementation that overrides text, define a subtype and put @Extension on it. See AbstractProject.getBuildNowText() as an example.

    Kohsuke Kawaguchi