Jenkins defines extension points, which are interfaces or abstract classes that model an aspect of its behavior. The interface or class defines contracts of what needs implementation, and Jenkins allows plugins to contribute those implementations.
To register an implementation, make sure you mark it with
The extensions index is a useful list of the extension points used in Jenkins and Jenkins plugins.
More information can be found in the Extensibility section.