Package org.apache.maven.toolchain.v4
Class MavenToolchainsMerger
java.lang.Object
org.apache.maven.toolchain.v4.MavenToolchainsMerger
-
Nested Class Summary
Modifier and TypeClassDescriptionstatic interface
Use to compute keys for data structures -
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionprotected MavenToolchainsMerger.KeyComputer<ToolchainModel>
protected MavenToolchainsMerger.KeyComputer<TrackableBase>
static <T> List<T>
merge
(List<T> tgt, List<T> src, boolean sourceDominant, MavenToolchainsMerger.KeyComputer<T> computer) Merge two listsstatic <T> List<T>
merge
(List<T> tgt, List<T> src, MavenToolchainsMerger.KeyComputer<T> computer, BinaryOperator<T> remapping) merge
(PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<?, ?> hints) Merges the specified source object into the given target object.protected void
mergePersistedToolchains
(PersistedToolchains.Builder builder, PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) protected PersistedToolchains
mergePersistedToolchains
(PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) protected void
mergePersistedToolchains_Toolchains
(PersistedToolchains.Builder builder, PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeToolchainModel
(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) protected ToolchainModel
mergeToolchainModel
(ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeToolchainModel_Configuration
(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeToolchainModel_Provides
(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeToolchainModel_Type
(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) protected void
mergeTrackableBase
(TrackableBase.Builder builder, TrackableBase target, TrackableBase source, boolean sourceDominant, Map<Object, Object> context) protected TrackableBase
mergeTrackableBase
(TrackableBase target, TrackableBase source, boolean sourceDominant, Map<Object, Object> context)
-
Constructor Details
-
MavenToolchainsMerger
public MavenToolchainsMerger() -
MavenToolchainsMerger
public MavenToolchainsMerger(boolean deepMerge)
-
-
Method Details
-
merge
public PersistedToolchains merge(PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<?, ?> hints) Merges the specified source object into the given target object.- Parameters:
target
- The target object whose existing contents should be merged with the source, must not benull
.source
- The (read-only) source object that should be merged into the target object, may benull
.sourceDominant
- A flag indicating whether either the target object or the source object provides the dominant data.hints
- A set of key-value pairs that customized merger implementations can use to carry domain-specific information along, may benull
.
-
mergeTrackableBase
protected TrackableBase mergeTrackableBase(TrackableBase target, TrackableBase source, boolean sourceDominant, Map<Object, Object> context) -
mergeTrackableBase
protected void mergeTrackableBase(TrackableBase.Builder builder, TrackableBase target, TrackableBase source, boolean sourceDominant, Map<Object, Object> context) -
mergePersistedToolchains
protected PersistedToolchains mergePersistedToolchains(PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) -
mergePersistedToolchains
protected void mergePersistedToolchains(PersistedToolchains.Builder builder, PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) -
mergePersistedToolchains_Toolchains
protected void mergePersistedToolchains_Toolchains(PersistedToolchains.Builder builder, PersistedToolchains target, PersistedToolchains source, boolean sourceDominant, Map<Object, Object> context) -
mergeToolchainModel
protected ToolchainModel mergeToolchainModel(ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) -
mergeToolchainModel
protected void mergeToolchainModel(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) -
mergeToolchainModel_Type
protected void mergeToolchainModel_Type(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) -
mergeToolchainModel_Provides
protected void mergeToolchainModel_Provides(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) -
mergeToolchainModel_Configuration
protected void mergeToolchainModel_Configuration(ToolchainModel.Builder builder, ToolchainModel target, ToolchainModel source, boolean sourceDominant, Map<Object, Object> context) -
getTrackableBaseKey
-
getPersistedToolchainsKey
-
getToolchainModelKey
-
merge
public static <T> List<T> merge(List<T> tgt, List<T> src, boolean sourceDominant, MavenToolchainsMerger.KeyComputer<T> computer) Merge two lists -
merge
public static <T> List<T> merge(List<T> tgt, List<T> src, MavenToolchainsMerger.KeyComputer<T> computer, BinaryOperator<T> remapping)
-