diff --git a/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java b/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java index f434ef0693..5222871ffa 100644 --- a/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java +++ b/maven-artifact/src/main/java/org/apache/maven/artifact/versioning/ComparableVersion.java @@ -29,9 +29,11 @@ import java.util.Properties; import java.util.Stack; /** + *
* Generic implementation of version comparison. - * - *
Features: + *
+ * + * Features: *-
' (hyphen) and '.
' (dot) separators,* Create a version range from a string representation - *
- * Some spec examples are + * + * Some spec examples are: *1.0
Version 1.0[1.0,2.0)
Versions 1.0 (included) to 2.0 (not included)* Encapsulates parameters of MojoExecutionListener callback methods and is meant to provide API evolution path should * it become necessary to introduce new parameters in the existing callbacks in the future. + *
+ * Note: This class is part of work in progress and can be changed or removed without notice. * * @see MojoExecutionListener * @see org.apache.maven.execution.scope.WeakMojoExecutionListener * @since 3.1.2 - * @provisional This class is part of work in progress and can be changed or removed without notice. */ public class MojoExecutionEvent { diff --git a/maven-core/src/main/java/org/apache/maven/execution/MojoExecutionListener.java b/maven-core/src/main/java/org/apache/maven/execution/MojoExecutionListener.java index c2fb7a18b3..97d6b03987 100644 --- a/maven-core/src/main/java/org/apache/maven/execution/MojoExecutionListener.java +++ b/maven-core/src/main/java/org/apache/maven/execution/MojoExecutionListener.java @@ -22,11 +22,13 @@ package org.apache.maven.execution; import org.apache.maven.plugin.MojoExecutionException; /** + ** Extension point that allows build extensions observe and possibly veto mojo executions. + *
+ * Note: This interface is part of work in progress and can be changed or removed without notice. * * @see org.apache.maven.execution.scope.WeakMojoExecutionListener * @since 3.1.2 - * @provisional This interface is part of work in progress and can be changed or removed without notice. */ public interface MojoExecutionListener { diff --git a/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionEvent.java b/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionEvent.java index fb71078f39..96cb2262dc 100644 --- a/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionEvent.java +++ b/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionEvent.java @@ -25,12 +25,14 @@ import org.apache.maven.plugin.MojoExecution; import org.apache.maven.project.MavenProject; /** + ** Encapsulates parameters of ProjectExecutionListener callback methods and is meant to provide API evolution path * should it become necessary to introduce new parameters in the existing callbacks in the future. + *
+ * Note: This class is part of work in progress and can be changed or removed without notice. * * @see ProjectExecutionListener * @since 3.1.2 - * @provisional This class is part of work in progress and can be changed or removed without notice. */ public class ProjectExecutionEvent { diff --git a/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionListener.java b/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionListener.java index d7e891838d..279742505e 100644 --- a/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionListener.java +++ b/maven-core/src/main/java/org/apache/maven/execution/ProjectExecutionListener.java @@ -22,12 +22,14 @@ package org.apache.maven.execution; import org.apache.maven.lifecycle.LifecycleExecutionException; /** + ** Extension point that allows build extensions observe and possibly veto project build execution. + *
+ * Note: This interface is part of work in progress and can be changed or removed without notice. * * @see ExecutionListener * @see MojoExecutionListener * @since 3.1.2 - * @provisional This interface is part of work in progress and can be changed or removed without notice. */ public interface ProjectExecutionListener { diff --git a/maven-core/src/main/java/org/apache/maven/execution/scope/WeakMojoExecutionListener.java b/maven-core/src/main/java/org/apache/maven/execution/scope/WeakMojoExecutionListener.java index 102bc1d70e..da78de7ab8 100644 --- a/maven-core/src/main/java/org/apache/maven/execution/scope/WeakMojoExecutionListener.java +++ b/maven-core/src/main/java/org/apache/maven/execution/scope/WeakMojoExecutionListener.java @@ -28,10 +28,11 @@ import org.apache.maven.plugin.MojoExecutionException; * Unlike {@link org.apache.maven.execution.MojoExecutionListener}, this extension point does not * trigger instantiation of the component, hence "weak" class name prefix. Only applies to mojo execution * scoped components. + * + * Note: This interface is part of work in progress and can be changed or removed without notice. * * @see org.apache.maven.execution.MojoExecutionListener * @since 3.1.2 - * @provisional This interface is part of work in progress and can be changed or removed without notice. */ public interface WeakMojoExecutionListener { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java index b85bac77c4..c52a4409cf 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/MojoExecutionConfigurator.java @@ -23,10 +23,11 @@ import org.apache.maven.plugin.MojoExecution; import org.apache.maven.project.MavenProject; /** + ** A MojoExecutionConfigurator is responsible for creating the configuration for Mojo based on configuration for a Mojo * in the MavenProject and the default configuration for the Mojo from the containing plugin's plugin.xml descriptor. - * - * @provisional + *
+ * Note: This interface is part of work in progress and can be changed or removed without notice. * @author Jason van Zyl * @since 3.3.1, MNG-5753 */ diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/BuildListCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/BuildListCalculator.java index 7fba304f81..76454f810d 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/BuildListCalculator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/BuildListCalculator.java @@ -29,9 +29,10 @@ import java.util.Collections; import java.util.List; /** + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Kristian Rosenvold - * This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = BuildListCalculator.class ) public class BuildListCalculator diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java index 46aff9e8e5..1e81b18fe0 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleExecutionPlanCalculator.java @@ -62,11 +62,11 @@ import org.codehaus.plexus.util.xml.pull.XmlPullParserException; import com.google.common.collect.ImmutableMap; /** + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (Extract class) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = LifecycleExecutionPlanCalculator.class ) public class DefaultLifecycleExecutionPlanCalculator diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java index a72ce8edd4..9e402e6479 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecyclePluginAnalyzer.java @@ -42,13 +42,13 @@ import java.util.Map; import java.util.Set; /** + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author jdcasey * @author Kristian Rosenvold (extracted class only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = LifeCyclePluginAnalyzer.class ) public class DefaultLifecyclePluginAnalyzer diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java index 20e5585afc..cb49050c71 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DefaultLifecycleTaskSegmentCalculator.java @@ -40,17 +40,17 @@ import java.util.Arrays; import java.util.List; /** + ** Calculates the task segments in the build + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author jdcasey * @author Kristian Rosenvold (extracted class) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ - @Component( role = LifecycleTaskSegmentCalculator.class ) public class DefaultLifecycleTaskSegmentCalculator implements LifecycleTaskSegmentCalculator diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DependencyContext.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DependencyContext.java index 0e4a708feb..7ee499f4b1 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DependencyContext.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/DependencyContext.java @@ -27,13 +27,14 @@ import java.util.Collections; import java.util.TreeSet; /** + ** Context of dependency artifacts for a particular project. - * + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (class extract only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ // TODO From a concurrency perspective, this class is not good. The combination of mutable/immutable state is not nice public class DependencyContext diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ExecutionPlanItem.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ExecutionPlanItem.java index 4a404e9338..a52eeb0b17 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ExecutionPlanItem.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ExecutionPlanItem.java @@ -29,9 +29,10 @@ import java.util.ArrayList; import java.util.List; /** + ** Wraps individual MojoExecutions, containing information about completion status and scheduling. - *
- * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Kristian Rosenvold diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/GoalTask.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/GoalTask.java index f1664034a4..abcdda596e 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/GoalTask.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/GoalTask.java @@ -20,9 +20,10 @@ package org.apache.maven.lifecycle.internal; */ /** + ** A task that is a goal - *
- * TODO From a concurrency perspective, this class is not good. The combination of mutable/immutable state is not nice + * + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java index a99fb658e9..69b7c10a58 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDebugLogger.java @@ -36,14 +36,15 @@ import java.util.Set; import java.util.TreeSet; /** + ** Logs debug output from the various lifecycle phases. + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author Kristian Rosenvold (extracted class only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = LifecycleDebugLogger.class ) public class LifecycleDebugLogger diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java index 0947ed3d59..0d42aeb36c 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleDependencyResolver.java @@ -51,14 +51,14 @@ import org.eclipse.aether.util.filter.AndDependencyFilter; import org.eclipse.aether.util.filter.ScopeDependencyFilter; /** + ** Resolves dependencies for the artifacts in context of the lifecycle build - * + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author Kristian Rosenvold (extracted class) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Named public class LifecycleDependencyResolver diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculator.java index 7d35b10258..7a8d9c9a11 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleExecutionPlanCalculator.java @@ -39,7 +39,6 @@ import java.util.List; * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (extract interface only) - * */ public interface LifecycleExecutionPlanCalculator { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java index 343fbf95e0..548fe6c8ff 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleModuleBuilder.java @@ -37,14 +37,15 @@ import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.component.annotations.Requirement; /** + ** Builds one or more lifecycles for a full module - * + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author Kristian Rosenvold (extracted class) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = LifecycleModuleBuilder.class ) public class LifecycleModuleBuilder diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecyclePluginResolver.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecyclePluginResolver.java index f02552aec9..b22e3591e4 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecyclePluginResolver.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecyclePluginResolver.java @@ -34,11 +34,10 @@ import org.codehaus.plexus.component.annotations.Component; import org.codehaus.plexus.component.annotations.Requirement; /** + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (Extract class) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = LifecyclePluginResolver.class ) public class LifecyclePluginResolver diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTask.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTask.java index 0b5fff3422..56aafd5a18 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTask.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTask.java @@ -20,9 +20,10 @@ package org.apache.maven.lifecycle.internal; */ /** + ** A task that is a lifecycle - *
- * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTaskSegmentCalculator.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTaskSegmentCalculator.java index a721355b04..7dd84d8d1b 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTaskSegmentCalculator.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/LifecycleTaskSegmentCalculator.java @@ -33,17 +33,17 @@ import org.apache.maven.plugin.version.PluginVersionResolutionException; import java.util.List; /** + ** Calculates the task segments in the build + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author jdcasey * @author Kristian Rosenvold (extracted interface) - * - * NOTE: This interface is not part of any public api and can be changed or deleted without prior notice. */ - public interface LifecycleTaskSegmentCalculator { List* Resolves dependencies for the artifacts in context of the lifecycle build + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann * @author Jason van Zyl * @author jdcasey * @author Kristian Rosenvold (extracted class only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ @Component( role = MojoDescriptorCreator.class ) public class MojoDescriptorCreator diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java index 2e4c117e14..766aed1469 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/MojoExecutor.java @@ -50,13 +50,14 @@ import java.util.Set; import java.util.TreeSet; /** + ** Executes an individual mojo + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @author Jason van Zyl * @author Benjamin Bentmann * @author Kristian Rosenvold - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * @since 3.0 */ @Component( role = MojoExecutor.class ) diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/PhaseRecorder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/PhaseRecorder.java index a09a3cb9a0..3316c50130 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/PhaseRecorder.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/PhaseRecorder.java @@ -23,11 +23,10 @@ import org.apache.maven.plugin.MojoExecution; import org.apache.maven.project.MavenProject; /** + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ public class PhaseRecorder { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectArtifactFactory.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectArtifactFactory.java index b4a8107509..8665c80737 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectArtifactFactory.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectArtifactFactory.java @@ -26,10 +26,12 @@ import org.apache.maven.project.MavenProject; import org.apache.maven.project.artifact.InvalidDependencyVersionException; /** + ** Component interface responsible for creation of MavenProject#dependencyArtifacts instances. + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.2.4 - * @provisional This interface is part of work in progress and can be changed or removed without notice. */ public interface ProjectArtifactFactory { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectBuildList.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectBuildList.java index 2d7371ba7e..29a6aa5b3e 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectBuildList.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectBuildList.java @@ -33,13 +33,14 @@ import org.apache.maven.execution.MavenSession; import org.apache.maven.project.MavenProject; /** + ** A list of project segments, ordered so that all ProjectSegments from first TaskSegment come before any * subsequent TaskSegments. + *
+ * Note: This interface is part of work in progress and can be changed or removed without notice. * * @since 3.0 * @author Kristian Rosenvold - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ public class ProjectBuildList implements Iterable* Provides the positional index of the project + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (extracted class only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ // TODO Kristian wonders if this class really is necessary and if it overlaps other concepts. public final class ProjectIndex diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectSegment.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectSegment.java index 5ef7745462..89f8354c7d 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectSegment.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/ProjectSegment.java @@ -27,29 +27,33 @@ import java.util.List; /** * A build context that matches a mavenproject to a given tasksegment, and the session to be used. - * + ** A note to the reader; - *
+ * + ** There are several issues/discussions regarding how "aggregator" plugins should be handled. * Read for instance http://docs.codehaus.org/display/MAVEN/Deterministic+Lifecycle+Planning - *
+ * + ** In their current implementation they are "bolted" onto the lifecycle by separating them * into TaskSegments. This class represents the execution context of one such task segment. - *
+ * + ** Wise voices have suggested that maybe aggregators shouldn't be bound to the ordinary * lifecycle at all, in which case we wouldn't be needing this class at all ( and * ProjectBuildList.getByTaskSegments). Or maybe they should be introduced in the calculation * of the execution plan instead, which seems much nicer. - *
+ * + ** Additionally this class contains a clone of the MavenSession, which is *only* needed * because it has as notion of a "current" project. + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Jason van Zyl * @author Benjamin Bentmann * @author Kristian Rosenvold - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ public final class ProjectSegment { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/TaskSegment.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/TaskSegment.java index 16eb76a3c8..8a44343553 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/TaskSegment.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/TaskSegment.java @@ -26,11 +26,11 @@ import java.util.List; /** * Describes the required task segment as provided on the maven command line; i.e. "clean jetty:run install" * + * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. + * * @since 3.0 * @author Benjamin Bentmann * @author Kristian Rosenvold (extracted class only) - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ public final class TaskSegment { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java index 155abf920f..5d78f80c15 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/Builder.java @@ -29,11 +29,12 @@ import org.apache.maven.lifecycle.internal.ReactorContext; import org.apache.maven.lifecycle.internal.TaskSegment; /** + ** A {@link Builder} encapsulates a strategy for building a set of Maven projects. The default strategy in Maven builds * the the projects serially, but a {@link Builder} can employ any type of concurrency model to build the projects. - * + *
+ * Note: This interface is part of work in progress and can be changed or removed without notice. * @author jvanzyl - * @provisional */ public interface Builder { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ConcurrencyDependencyGraph.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ConcurrencyDependencyGraph.java index 4613165915..d7d764e4bc 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ConcurrencyDependencyGraph.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ConcurrencyDependencyGraph.java @@ -30,12 +30,13 @@ import java.util.List; import java.util.Set; /** + ** Presents a view of the Dependency Graph that is suited for concurrent building. + *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. * * @since 3.0 * @author Kristian Rosenvold - * - * NOTE: This class is not part of any public api and can be changed or deleted without prior notice. */ public class ConcurrencyDependencyGraph { diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java index f0fa2ac740..072aec8b3d 100644 --- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java +++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/MultiThreadedBuilder.java @@ -49,12 +49,12 @@ import org.codehaus.plexus.logging.Logger; * This builder uses a number of threads equal to the minimum of the degree of concurrency (which is the thread count * set with-T
on the command-line) and the number of projects to build. As such, building a single project
* will always result in a sequential build, regardless of the thread count.
+ *
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
*
* @since 3.0
* @author Kristian Rosenvold
* Builds one or more lifecycles for a full module
- *
- * NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
*/
@Component( role = Builder.class, hint = "multithreaded" )
public class MultiThreadedBuilder
diff --git a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ThreadOutputMuxer.java b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ThreadOutputMuxer.java
index 0a99f75b18..edf8ab68a6 100644
--- a/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ThreadOutputMuxer.java
+++ b/maven-core/src/main/java/org/apache/maven/lifecycle/internal/builder/multithreaded/ThreadOutputMuxer.java
@@ -33,12 +33,12 @@ import org.apache.maven.lifecycle.internal.ProjectBuildList;
import org.apache.maven.lifecycle.internal.ProjectSegment;
/**
+ * NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
+ * This class in particular may spontaneously self-combust and be replaced by a plexus-compliant thread aware
+ * logger implementation at any time.
+ *
* @since 3.0
* @author Kristian Rosenvold
- *
- * NOTE: This class is not part of any public api and can be changed or deleted without prior notice.
- * This class in particular may spontaneously self-combust and be replaced by a plexus-compliant thread aware
- * logger implementation at any time.
*/
@SuppressWarnings( { "SynchronizationOnLocalVariableOrMethodParameter" } )
public class ThreadOutputMuxer
diff --git a/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java b/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
index 984e22ab32..e701ec1d7a 100644
--- a/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
+++ b/maven-core/src/main/java/org/apache/maven/plugin/PluginParameterExpressionEvaluator.java
@@ -34,7 +34,7 @@ import org.codehaus.plexus.util.introspection.ReflectionValueExtractor;
/**
* Evaluator for plugin parameters expressions. Content surrounded by ${
and }
is evaluated.
- * Recognized values are:expression | evaluation result | ||||
---|---|---|---|---|---|
session | the actual {@link MavenSession} | ||||
session.* | (since Maven 3) |
Descriptor Element | *Annotation | @@ -73,7 +70,7 @@ import org.apache.maven.plugin.logging.SystemStreamLog; *The configurator type to use when injecting parameter values into this Mojo. The value is normally
* deduced from the Mojo's implementation language, but can be specified to allow a custom
* ComponentConfigurator implementation to be used.
- * + * * NOTE: This will only be used in very special cases, using a highly controlled vocabulary of possible * values. (Elements like this are why it's a good idea to use the descriptor tools.) * |
@@ -83,7 +80,7 @@ import org.apache.maven.plugin.logging.SystemStreamLog;
* @phase <phaseName> | *No | *Binds this Mojo to a particular phase of the standard build lifecycle, if specified.
- * + * * NOTE: This is only required if this Mojo is to participate in the standard build process. * |
* No | *Flags this Mojo as requiring the dependencies in the specified scope (or an implied scope) to be
* resolved before it can execute.
- * + * * NOTE: Currently supports compile, runtime, and test scopes. * |
*
@@ -114,9 +111,8 @@ import org.apache.maven.plugin.logging.SystemStreamLog;
* description | *none (detected) | *No | - *The description of this Mojo's functionality. Using the toolset, this will be the class-level
- * Javadoc description provided.
- * + * | The description of this Mojo's functionality. Using the toolset, this will be the class-level
+ * Javadoc description provided. * NOTE: While this is not a required part of the Mojo specification, it SHOULD be provided to * enable future tool support for browsing, etc. and for clarity. * |
@@ -127,7 +123,7 @@ import org.apache.maven.plugin.logging.SystemStreamLog;
* No | *Specifications for the parameters which this Mojo uses will be provided in parameter sub-elements
* in this section.
- * + * * NOTE: Parameters are discussed in more detail below. * |
*
@@ -159,9 +155,10 @@ public abstract class AbstractMojo
}
/**
+ *
---|