Class InvisibleAction
- java.lang.Object
-
- hudson.model.InvisibleAction
-
- All Implemented Interfaces:
Action
,ModelObject
- Direct Known Subclasses:
InterruptedBuildAction
,WebSocketAgents
,WebSocketEcho
public abstract class InvisibleAction extends Object implements Action
PartialAction
implementation that doesn't have any UI presence (unless thegetUrlName()
is overrided).This class can be used as a convenient base class, when you use
Action
for just storing data associated with a build.It could also be used to reduce the amount of code required to just create an accessible url for tests by overriding the
getUrlName()
method.- Since:
- 1.188
- Author:
- Kohsuke Kawaguchi
-
-
Constructor Summary
Constructors Constructor Description InvisibleAction()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description String
getDisplayName()
Gets the string to be displayed.String
getIconFileName()
Gets the name of the icon.String
getUrlName()
Gets the URL path name.
-
-
-
Method Detail
-
getIconFileName
public final String getIconFileName()
Description copied from interface:Action
Gets the name of the icon.- Specified by:
getIconFileName
in interfaceAction
- Returns:
- If the icon name is prefixed with "symbol-", a Jenkins Symbol
will be used.
If just a file name (like "abc.gif") is returned, it will be interpreted as a file name inside
/images/24x24
. This is useful for using one of the stock images.If an absolute file name that starts from '/' is returned (like "/plugin/foo/abc.gif"), then it will be interpreted as a path from the context root of Jenkins. This is useful to pick up image files from a plugin.
Finally, return null to hide it from the task list. This is normally not very useful, but this can be used for actions that only contribute
floatBox.jelly
and no task list item. The other case where this is useful is to avoid showing links that require a privilege when the user is anonymous. - See Also:
- Jenkins Symbols,
Functions.isAnonymous()
,Functions.getIconFilePath(Action)
-
getDisplayName
public final String getDisplayName()
Description copied from interface:Action
Gets the string to be displayed. The convention is to capitalize the first letter of each word, such as "Test Result".- Specified by:
getDisplayName
in interfaceAction
- Specified by:
getDisplayName
in interfaceModelObject
- Returns:
- Can be null in case the action is hidden.
-
getUrlName
public String getUrlName()
Description copied from interface:Action
Gets the URL path name.For example, if this method returns "xyz", and if the parent object (that this action is associated with) is bound to /foo/bar/zot, then this action object will be exposed to /foo/bar/zot/xyz.
This method should return a string that's unique among other
Action
s.The returned string can be an absolute URL, like "http://www.sun.com/", which is useful for directly connecting to external systems.
If the returned string starts with '/', like '/foo', then it's assumed to be relative to the context path of the Jenkins webapp.
- Specified by:
getUrlName
in interfaceAction
- Returns:
- null if this action object doesn't need to be bound to web
(when you do that, be sure to also return null from
Action.getIconFileName()
. - See Also:
Functions.getActionUrl(String, Action)
-
-