Class TaskAction
- All Implemented Interfaces:
Action,ModelObject,SearchableModelObject,SearchItem
- Direct Known Subclasses:
AbstractScmTagAction
Action implementation for those who kick some
processing asynchronously (such as SCM tagging.)
The class offers the basic set of functionality to do it.
- Since:
- 1.191
- Author:
- Kohsuke Kawaguchi
- See Also:
-
Field Summary
FieldsModifier and TypeFieldDescriptionprotected WeakReference<AnnotatedLargeText>Hold the log of the tagging operation.protected TaskThreadIf non-null, that means either the activity is in progress asynchronously, or it failed unexpectedly and the thread is dead. -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoiddoClearError(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) Clears the error status.voiddoProgressiveHtml(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) Handles incremental log output.voiddoProgressiveLog(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) Handles incremental log output.protected abstract ACLgetACL()Gets theACLagainst whichgetPermission()is checked.abstract StringGets the name of the icon.org.kohsuke.stapler.framework.io.LargeTextgetLog()Deprecated.protected abstract PermissionGets the permission object that represents the permission (againstgetACL()) to perform this task.Returns the URL of this item relative to the parentSearchItem.Obtains the log file.Methods inherited from class hudson.model.AbstractModelObject
getSearch, getSearchIndex, getSearchName, makeSearchIndex, requirePOST, sendError, sendError, sendError, sendError, sendError, sendError, sendError, sendErrorMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface hudson.model.Action
getDisplayName, getUrlName
-
Field Details
-
workerThread
If non-null, that means either the activity is in progress asynchronously, or it failed unexpectedly and the thread is dead. -
log
Hold the log of the tagging operation.
-
-
Constructor Details
-
TaskAction
public TaskAction()
-
-
Method Details
-
getPermission
Gets the permission object that represents the permission (againstgetACL()) to perform this task. Generally your implementation ofgetIconFileName()should return null if!getACL().hasPermission2(getPermission()). -
getACL
Gets theACLagainst whichgetPermission()is checked. -
getIconFileName
Description copied from interface:ActionGets the name of the icon.- Specified by:
getIconFileNamein 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.jellyand 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:
-
getLog
Deprecated.as of 1.350 UseobtainLog(), which returns the same object in a more type-safe signature. -
obtainLog
Obtains the log file.The default implementation get this from
workerThread, so when it's complete, the log could be gone any time.Derived classes that persist the text should override this method so that it fetches the file from disk.
-
getSearchUrl
Description copied from interface:SearchItemReturns the URL of this item relative to the parentSearchItem.- Specified by:
getSearchUrlin interfaceSearchItem- Returns:
- URL like "foo" or "foo/bar". The path can end with '/'. The path that starts with '/' will be interpreted as the absolute path (within the context path of Jenkins.)
-
getWorkerThread
-
doProgressiveLog
public void doProgressiveLog(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) throws IOException Handles incremental log output.- Throws:
IOException
-
doProgressiveHtml
public void doProgressiveHtml(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) throws IOException Handles incremental log output.- Throws:
IOException
-
doClearError
public void doClearError(org.kohsuke.stapler.StaplerRequest2 req, org.kohsuke.stapler.StaplerResponse2 rsp) throws IOException, jakarta.servlet.ServletException Clears the error status.- Throws:
IOExceptionjakarta.servlet.ServletException
-
obtainLog(), which returns the same object in a more type-safe signature.