public abstract class ToolLocationTranslator extends Object implements ExtensionPoint
ToolInstallation
for the given Node
.
This extension point is useful when there's a deterministic rule of where tools are installed.
One can program such a logic and contribute a ToolLocationTranslator
.
Compared to manually specifying ToolLocationNodeProperty
, duplicated configurations
can be avoided this way.
Entry point to the translation process is
ToolInstallation.translateFor(Node, TaskListener)
ExtensionPoint.LegacyInstancesAreScopedToHudson
Constructor and Description |
---|
ToolLocationTranslator() |
Modifier and Type | Method and Description |
---|---|
static ExtensionList<ToolLocationTranslator> |
all()
Returns all the registered
ToolLocationTranslator s. |
abstract String |
getToolHome(Node node,
ToolInstallation installation,
TaskListener log)
Called for each
ToolInstallation.translateFor(Node, TaskListener) invocations
(which normally means it's invoked for each NodeSpecific.forNode(Node, TaskListener) )
to translate the tool location into the node specific location. |
public abstract String getToolHome(Node node, ToolInstallation installation, TaskListener log) throws IOException, InterruptedException
ToolInstallation.translateFor(Node, TaskListener)
invocations
(which normally means it's invoked for each NodeSpecific.forNode(Node, TaskListener)
)
to translate the tool location into the node specific location.
If this implementation is capable of determining the location, return the path in the absolute file name.
(This method doesn't return File
so that it can handle path names of a different OS.
Otherwise return null to let other ToolLocationTranslator
s a chance to do translations
on their own.
IOException
InterruptedException
public static ExtensionList<ToolLocationTranslator> all()
ToolLocationTranslator
s.Copyright © 2004–2022. All rights reserved.