Package hudson.util

Class AlternativeUiTextProvider

java.lang.Object
hudson.util.AlternativeUiTextProvider
All Implemented Interfaces:
ExtensionPoint

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.

Since:
1.401
Author:
Kohsuke Kawaguchi