Class Publisher
- java.lang.Object
-
- hudson.tasks.BuildStepCompatibilityLayer
-
- hudson.tasks.Publisher
-
- All Implemented Interfaces:
Describable<Publisher>
,BuildStep
public abstract class Publisher extends BuildStepCompatibilityLayer implements Describable<Publisher>
BuildStep
s that run after the build is completed.To register a custom
Publisher
from a plugin, putExtension
on your descriptor implementation.Starting 1.178, publishers are exposed to all kinds of different project type, not just the freestyle project type (in particular, the native maven2 job type.) This is convenient default for
Publisher
s in particular initially, but we encourage advanced plugins to consider writing MavenReporter, as it offers the potential of reducing the amount of configuration needed to run the plugin. For those plugins that don't wantPublisher
to show up in different job type, useBuildStepDescriptor
for the base type of your descriptor to control which job type it supports.- Author:
- Kohsuke Kawaguchi
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static class
Publisher.DescriptorExtensionListImpl
Publisher
has a special sort semantics that requires a subtype.-
Nested classes/interfaces inherited from interface hudson.tasks.BuildStep
BuildStep.PublisherList
-
-
Field Summary
-
Fields inherited from interface hudson.tasks.BuildStep
BUILDERS, PUBLISHERS
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Deprecated Methods Modifier and Type Method Description static DescriptorExtensionList<Publisher,Descriptor<Publisher>>
all()
Returns all the registeredPublisher
descriptors.Descriptor<Publisher>
getDescriptor()
Gets the descriptor for this instance.Action
getProjectAction(Project project)
Deprecated.since 1.150boolean
needsToRunAfterFinalized()
Return true if thisPublisher
needs to run after the build result is fully finalized.boolean
prebuild(Build build, BuildListener listener)
Deprecated.since 1.150-
Methods inherited from class hudson.tasks.BuildStepCompatibilityLayer
getProjectAction, getProjectActions, perform, perform, prebuild
-
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Methods inherited from interface hudson.tasks.BuildStep
getRequiredMonitorService
-
-
-
-
Constructor Detail
-
Publisher
@Deprecated protected Publisher()
-
-
Method Detail
-
prebuild
@Deprecated public boolean prebuild(Build build, BuildListener listener)
Deprecated.since 1.150Default implementation that does nothing.- Overrides:
prebuild
in classBuildStepCompatibilityLayer
-
getProjectAction
@Deprecated public Action getProjectAction(Project project)
Deprecated.since 1.150Default implementation that does nothing.- Overrides:
getProjectAction
in classBuildStepCompatibilityLayer
-
needsToRunAfterFinalized
public boolean needsToRunAfterFinalized()
Return true if thisPublisher
needs to run after the build result is fully finalized.The execution of normal
Publisher
s are considered within a part of the build. This allows publishers to mark the build as a failure, or to include their execution time in the total build time.So normally, that is the preferable behavior, but in a few cases this is problematic. One of such cases is when a publisher needs to trigger other builds, which in turn need to see this build as a completed build. Those plugins that need to do this can return true from this method, so that the
BuildStepCompatibilityLayer.perform(AbstractBuild, Launcher, BuildListener)
method is called after the build is marked as completed.When
Publisher
behaves this way, note that they can no longer change the build status anymore.- Since:
- 1.153
-
getDescriptor
public Descriptor<Publisher> getDescriptor()
Description copied from interface:Describable
Gets the descriptor for this instance.Descriptor
is a singleton for every concreteDescribable
implementation, so ifa.getClass() == b.getClass()
then by defaulta.getDescriptor() == b.getDescriptor()
as well. (In rare cases a single implementation class may be used for instances with distinct descriptors.)- Specified by:
getDescriptor
in interfaceDescribable<Publisher>
-
all
public static DescriptorExtensionList<Publisher,Descriptor<Publisher>> all()
Returns all the registeredPublisher
descriptors.
-
-