public abstract class ConsoleAnnotatorFactory<T> extends Object implements ExtensionPoint
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.
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.
ExtensionPoint.LegacyInstancesAreScopedToHudson
Constructor and Description |
---|
ConsoleAnnotatorFactory() |
Modifier and Type | Method and Description |
---|---|
static ExtensionList<ConsoleAnnotatorFactory> |
all()
All the registered instances.
|
void |
doScriptJs(org.kohsuke.stapler.StaplerRequest req,
org.kohsuke.stapler.StaplerResponse rsp)
Serves the JavaScript file associated with this console annotator factory.
|
void |
doStyleCss(org.kohsuke.stapler.StaplerRequest req,
org.kohsuke.stapler.StaplerResponse rsp) |
boolean |
hasScript()
Returns true if this descriptor has a JavaScript to be inserted on applicable console page.
|
boolean |
hasStylesheet() |
abstract ConsoleAnnotator<T> |
newInstance(T context)
Called when a console output page is requested to create a stateful
ConsoleAnnotator . |
Class<?> |
type()
For which context type does this annotator work?
|
public abstract ConsoleAnnotator<T> newInstance(T context)
ConsoleAnnotator
.
This method can be invoked concurrently by multiple threads.
context
- The model object that owns the console output, such as Run
.
This method is only called when the context object if assignable to
the advertised type.public Class<?> type()
public boolean hasScript()
public boolean hasStylesheet()
@WebMethod(name="script.js") public void doScriptJs(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp) throws IOException, javax.servlet.ServletException
IOException
javax.servlet.ServletException
@WebMethod(name="style.css") public void doStyleCss(org.kohsuke.stapler.StaplerRequest req, org.kohsuke.stapler.StaplerResponse rsp) throws IOException, javax.servlet.ServletException
IOException
javax.servlet.ServletException
public static ExtensionList<ConsoleAnnotatorFactory> all()
Copyright © 2004–2021. All rights reserved.