mirror of
https://github.com/jenkinsci/jenkins.git
synced 2026-11-13 20:12:14 +00:00
Introduce a `HasWidgets` interface holding generic facilities to look up applicable widgets, as well as binding widgets to relative urls based on their url names. The following classes are concerned * View * Job * ComputerSet * Computer Introduce a generic `WidgetFactory` to allow plugins to contribute widgets to the mentioned types. This deprecates the pattern of annotating Widget implementations with @Extension, in favor of typed `WidgetFactory` annotated implementation. Moved views `ajaxExecutors` and `ajaxBuildQueue` back to the widgets they belong to. The specific logic is now in the `WidgetFactory` implementations (as `ajax` view). Add a `getUrl` method to Widget. This allows to resolve custom widget views under `widget/<widgetName>` both under the Jenkins root object, jobs and views. `<t:queue>` and `<t:executors>` taglibs usage outside of widget context is now deprecated. Instead, implement a WidgetFactory passing the relevant data.