Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixing Javadoc for fixing the pipeline #155

Merged
merged 4 commits into from
Jun 7, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -10,9 +10,9 @@
* <p>This is used to define a linear "chunk" from the graph of FlowNodes returned by a {@link ForkScanner}, after it applies ordering.
* <p>This is done by invoking {@link ForkScanner#visitSimpleChunks(SimpleChunkVisitor, ChunkFinder)}.
* <p>Your {@link SimpleChunkVisitor} will receive callbacks about chunk boundaries on the basis of the ChunkFinder.
* It is responsible for tracking the state based on events fired
* It is responsible for tracking the state based on events fired.
*
* <p><p><em>Common uses:</em>
* <p><em>Common uses:</em>
* <ul>
* <li>Find all {@link FlowNode}s within a specific block type, such the block created by a timeout block, 'node' (executor) block, etc</li>
* <li>Find all {@link FlowNode}s between specific markers, such as labels, milestones, or steps generating an error</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -29,10 +29,10 @@
import javax.annotation.Nonnull;

/**
* Common container interface for a series of {@link FlowNode}s with a logical start and end.
* <p><p> We use this because every plugin has a different way of storing info about the nodes.
* <p>Common container interface for a series of {@link FlowNode}s with a logical start and end.
* <p>We use this because every plugin has a different way of storing info about the nodes.
*
* <p> Common uses:
* <p>Common uses:
* <ul>
* <li>A single FlowNode (when coupling with timing/status APIs)</li>
* <li>A block (with a {@link org.jenkinsci.plugins.workflow.graph.BlockStartNode} and {@link org.jenkinsci.plugins.workflow.graph.BlockEndNode})</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -32,21 +32,21 @@

/**
* This visitor's callbacks are invoked as we walk through a pipeline flow graph, and it splits it into chunks.
* <p> A {@link ForkScanner#visitSimpleChunks(SimpleChunkVisitor, ChunkFinder)} creates these FlowChunks using a {@link ChunkFinder} to define the chunk boundaries.
* <p>A {@link ForkScanner#visitSimpleChunks(SimpleChunkVisitor, ChunkFinder)} creates these FlowChunks using a {@link ChunkFinder} to define the chunk boundaries.
*
* <p>We walk through the {@link FlowNode}s in reverse order from end to start, so <em>end callbacks are invoked before
* their corresponding start callbacks.</em>
*
* <p><strong>Callback types</strong>
* <p> There are two kinds of callbacks - chunk callbacks, and parallel structure callbacks
* <p>There are two kinds of callbacks - chunk callbacks, and parallel structure callbacks.
* <p><strong>Chunk Callbacks:</strong>
* <ul>
* <li>{@link #chunkStart(FlowNode, FlowNode, ForkScanner)} - detected the start of a chunk beginning with a node</li>
* <li>{@link #chunkEnd(FlowNode, FlowNode, ForkScanner)} - detected the end of a chunk, terminating with a node </li>
* <li>{@link #atomNode(FlowNode, FlowNode, FlowNode, ForkScanner)} - most nodes, which aren't boundaries of chunks</li>
* </ul>
*
* <p><p><strong>Chunk callback rules:</strong>
* <p><strong>Chunk callback rules:</strong>
* <ol>
* <li>For a single node, it may have EITHER OR BOTH chunkStart and chunkEnd events</li>
* <li>Every node that doesn't get a startChunk/endChunk callback gets an atomNode callback.</li>
Expand All @@ -55,20 +55,20 @@
* <li>You cannot have a atomNode callback AND a start/end for the same flownode (application of the above).</li>
* </ol>
*
* <p>Parallel Structure Callbacks: Zero, One, or (in niche cases) several different ones may be invoked for any given FlowNode</p>
* <p>Parallel Structure Callbacks: Zero, One, or (in niche cases) several different ones may be invoked for any given FlowNode.
* <p>These are used to provide awareness of parallel/branching structures if they need special handling.
* <ul>
* <li>{@link #parallelStart(FlowNode, FlowNode, ForkScanner)}</li>
* <li>{@link #parallelEnd(FlowNode, FlowNode, ForkScanner)}</li>
* <li>{@link #parallelBranchStart(FlowNode, FlowNode, ForkScanner)}</li>
* <li>{@link #parallelBranchEnd(FlowNode, FlowNode, ForkScanner)}</li>
* </ul>
* <em>The cases where a node triggers multiple callbacks are where it is one of several forked branches of an incomplete parallel
* <p><em>The cases where a node triggers multiple callbacks are where it is one of several forked branches of an incomplete parallel
* block. In this case it can be a parallelBranchEnd, also potentially a parallelEnd, plus whatever role that node might normally
* have (such as the start of another parallel).</em>
*
* <p>Implementations get to decide how to use and handle chunks, and should be stateful.
* <p><h3>At a minimum they should handle:</h3>
* <h3>At a minimum they should handle:</h3>
* <ul>
* <li>Cases where there is no enclosing chunk (no start/end found, or outside a chunk)</li>
* <li>Cases where there is no chunk end to match the start, because we haven't finished running a block</li>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,13 +10,14 @@
* Extension point for adding a column to a table rendering of {@link FlowNode}s.
*
* <p>
* This object must have the <tt>column.groovy</tt>. This view
* This object must have the <code>column.groovy</code>. This view
* is called for each cell of this column. The {@link FlowNode} object
* is passed in the "node" variable. The view should render
* a {@code <td>} tag.
*</p>
*
* <p>
* This object may have an additional <tt>columnHeader.groovy</tt>. The default column header
* This object may have an additional <code>columnHeader.groovy</code>. The default column header
* will render {@link #getColumnCaption()}.
*
* @author Kohsuke Kawaguchi
Expand Down