Package org.codehaus.mojo.flatten
Class ModelBuilderThreadSafetyWorkaround
java.lang.Object
org.codehaus.mojo.flatten.ModelBuilderThreadSafetyWorkaround
Works around thread safety issues when modifying the global singleton
DefaultModelBuilder
with custom ProfileInjector and ProfileSelector. Instead of modifying the global
DefaultModelBuilder, this class
creates a new DefaultModelBuilder and equips it with the currently active components like
ModelProcessor, ModelValidator etc.
which might have been modified/provided by other Maven extensions.- Since:
- 1.2.3
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate org.apache.maven.model.composition.DependencyManagementImporterprivate org.apache.maven.model.management.DependencyManagementInjectorprivate org.apache.maven.model.plugin.LifecycleBindingsInjectorprivate org.apache.maven.model.interpolation.ModelInterpolatorprivate org.apache.maven.model.normalization.ModelNormalizerprivate org.apache.maven.model.path.ModelPathTranslatorprivate org.apache.maven.model.building.ModelProcessorprivate org.apache.maven.model.path.ModelUrlNormalizerprivate org.apache.maven.model.validation.ModelValidatorprivate org.apache.maven.model.plugin.PluginConfigurationExpanderprivate org.apache.maven.model.management.PluginManagementInjectorprivate org.apache.maven.model.plugin.ReportConfigurationExpanderprivate org.apache.maven.model.plugin.ReportingConverterprivate org.apache.maven.model.superpom.SuperPomProvider -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionorg.apache.maven.model.building.ModelBuildingResultbuild(org.apache.maven.model.building.ModelBuildingRequest buildingRequest, org.apache.maven.model.profile.ProfileInjector customInjector, org.apache.maven.model.profile.ProfileSelector customSelector)
-
Field Details
-
modelProcessor
@Inject private org.apache.maven.model.building.ModelProcessor modelProcessor -
modelValidator
@Inject private org.apache.maven.model.validation.ModelValidator modelValidator -
modelNormalizer
@Inject private org.apache.maven.model.normalization.ModelNormalizer modelNormalizer -
modelInterpolator
@Inject private org.apache.maven.model.interpolation.ModelInterpolator modelInterpolator -
modelPathTranslator
@Inject private org.apache.maven.model.path.ModelPathTranslator modelPathTranslator -
modelUrlNormalizer
@Inject private org.apache.maven.model.path.ModelUrlNormalizer modelUrlNormalizer -
superPomProvider
@Inject private org.apache.maven.model.superpom.SuperPomProvider superPomProvider -
inheritanceAssembler
-
pluginManagementInjector
@Inject private org.apache.maven.model.management.PluginManagementInjector pluginManagementInjector -
dependencyManagementInjector
@Inject private org.apache.maven.model.management.DependencyManagementInjector dependencyManagementInjector -
dependencyManagementImporter
@Inject private org.apache.maven.model.composition.DependencyManagementImporter dependencyManagementImporter -
lifecycleBindingsInjector
@Inject @Nullable private org.apache.maven.model.plugin.LifecycleBindingsInjector lifecycleBindingsInjector -
pluginConfigurationExpander
@Inject private org.apache.maven.model.plugin.PluginConfigurationExpander pluginConfigurationExpander -
reportConfigurationExpander
@Inject private org.apache.maven.model.plugin.ReportConfigurationExpander reportConfigurationExpander -
reportingConverter
@Inject private org.apache.maven.model.plugin.ReportingConverter reportingConverter
-
-
Constructor Details
-
ModelBuilderThreadSafetyWorkaround
public ModelBuilderThreadSafetyWorkaround()
-
-
Method Details
-
build
public org.apache.maven.model.building.ModelBuildingResult build(org.apache.maven.model.building.ModelBuildingRequest buildingRequest, org.apache.maven.model.profile.ProfileInjector customInjector, org.apache.maven.model.profile.ProfileSelector customSelector) throws org.apache.maven.model.building.ModelBuildingException - Throws:
org.apache.maven.model.building.ModelBuildingException
-