Class ConsoleAnnotatorFactory<T>
- All Implemented Interfaces:
ExtensionPoint
- Direct Known Subclasses:
UrlAnnotator
ConsoleAnnotator
extension point. This class creates a new instance
of ConsoleAnnotator
that starts a new console annotation session.
ConsoleAnnotatorFactory
s are used whenever a browser requests console output (as opposed to when
the console output is being produced — for that see ConsoleNote
.)
ConsoleAnnotator
s returned by ConsoleAnnotatorFactory
are asked to start from
an arbitrary line of the output, because typically browsers do not request the entire console output.
Because of this, ConsoleAnnotatorFactory
is generally suitable for peep-hole local annotation
that only requires a small contextual information, such as keyword coloring, URL hyperlinking, and so on.
To register, put @Extension
on your ConsoleAnnotatorFactory
subtype.
Behaviour, JavaScript, and CSS
ConsoleNote
can have associated script.js
and style.css
(put them
in the same resource directory that you normally put Jelly scripts), which will be loaded into
the HTML page whenever the console notes are used. This allows you to use minimal markup in
code generation, and do the styling in CSS and perform the rest of the interesting work as a CSS behaviour/JavaScript.
- Since:
- 1.349
- Author:
- Kohsuke Kawaguchi
-
Nested Class Summary
Nested classes/interfaces inherited from interface hudson.ExtensionPoint
ExtensionPoint.LegacyInstancesAreScopedToHudson
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic ExtensionList<ConsoleAnnotatorFactory>
all()
All the registered instances.void
doScriptJs
(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) Serves the JavaScript file associated with this console annotator factory.void
doStyleCss
(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) boolean
Returns true if this descriptor has a JavaScript to be inserted on applicable console page.boolean
abstract ConsoleAnnotator<T>
newInstance
(T context) Called when a console output page is requested to create a statefulConsoleAnnotator
.Class<?>
type()
For which context type does this annotator work?
-
Constructor Details
-
ConsoleAnnotatorFactory
public ConsoleAnnotatorFactory()
-
-
Method Details
-
newInstance
Called when a console output page is requested to create a statefulConsoleAnnotator
.This method can be invoked concurrently by multiple threads.
- Parameters:
context
- The model object that owns the console output, such asRun
. This method is only called when the context object if assignable to the advertised type.- Returns:
- null if this factory is not going to participate in the annotation of this console.
-
type
For which context type does this annotator work? -
hasScript
public boolean hasScript()Returns true if this descriptor has a JavaScript to be inserted on applicable console page. -
hasStylesheet
public boolean hasStylesheet() -
doScriptJs
@WebMethod(name="script.js") public void doScriptJs(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) throws IOException, jakarta.servlet.ServletException Serves the JavaScript file associated with this console annotator factory.- Throws:
IOException
jakarta.servlet.ServletException
-
doStyleCss
@WebMethod(name="style.css") public void doStyleCss(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) throws IOException, jakarta.servlet.ServletException - Throws:
IOException
jakarta.servlet.ServletException
-
all
All the registered instances.
-