Class PluginConfigurator

java.lang.Object
org.codehaus.plexus.component.configurator.AbstractComponentConfigurator
org.codehaus.plexus.component.configurator.BasicComponentConfigurator
io.github.ascopes.protobufmavenplugin.plexus.PluginConfigurator
All Implemented Interfaces:
org.codehaus.plexus.component.configurator.ComponentConfigurator

@Description("Configures Plexus to work with this Maven Plugin") @Named("protobuf-maven-plugin-configurator") @Singleton public class PluginConfigurator extends org.codehaus.plexus.component.configurator.BasicComponentConfigurator
Custom configurator for this Maven plugin which allows us to inject additional converter types to handle parsing parameters, as well as other future bootstrapping concerns.

This is a global singleton to avoid multiple instances at runtime. Any converters must take care to avoid storing state, since classloaders may vary between Mojo executions. We previously scoped this to Mojo execution scope but this resulted in issues classloading due to the way Plexus pools classloaders.

Since:
3.1.3
Author:
Ashley Scopes
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final String
     

    Fields inherited from class org.codehaus.plexus.component.configurator.AbstractComponentConfigurator

    converterLookup

    Fields inherited from interface org.codehaus.plexus.component.configurator.ComponentConfigurator

    ROLE
  • Constructor Summary

    Constructors
    Constructor
    Description
    PluginConfigurator(List<org.codehaus.plexus.component.configurator.converters.ConfigurationConverter> configurationConverters)
     
  • Method Summary

    Methods inherited from class org.codehaus.plexus.component.configurator.BasicComponentConfigurator

    configureComponent

    Methods inherited from class org.codehaus.plexus.component.configurator.AbstractComponentConfigurator

    configureComponent, configureComponent

    Methods inherited from class Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Field Details

  • Constructor Details

    • PluginConfigurator

      @Inject public PluginConfigurator(List<org.codehaus.plexus.component.configurator.converters.ConfigurationConverter> configurationConverters)