Class PluginRealmHelper

java.lang.Object
org.eclipse.tycho.helper.PluginRealmHelper

@Component(role=PluginRealmHelper.class) public class PluginRealmHelper extends Object
Helper class that allows execution of components from maven plugin class realms. Normally, these components are not visible from tycho-core extensions plugin and require treatment. Typical usage
 @Requirement
 private EquinoxServiceFactory equinox;
 
 @Requirement
 private PluginRealmHelper pluginRealmHelper;
 
 ...
 
 public void someMethod(final MavenSession session, final MavenProject project) throws MavenExecutionException {
    pluginRealmHelper..execute(session, project, new Runnable() {
        public void run() {
            try {
                equinox.lookup(SomeComponent.class).someComponentMethod();
            } catch (ComponentLookupException e) {
                // have not found anything
            }
        }
    }, new PluginFilter() {
        public boolean accept(PluginDescriptor descriptor) {
            return true if the plugin is relevant;
        }
    });
 }
 
  • Field Details

    • mavenPluginManager

      @Requirement protected org.apache.maven.plugin.MavenPluginManager mavenPluginManager
  • Constructor Details

    • PluginRealmHelper

      public PluginRealmHelper()
  • Method Details

    • visitPluginExtensions

      public <T> void visitPluginExtensions(org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession mavenSession, Class<T> type, Consumer<? super T> consumer) throws org.apache.maven.plugin.version.PluginVersionResolutionException, org.apache.maven.plugin.PluginDescriptorParsingException, org.apache.maven.plugin.InvalidPluginDescriptorException, org.apache.maven.plugin.PluginResolutionException, org.apache.maven.plugin.PluginManagerException
      Throws:
      org.apache.maven.plugin.version.PluginVersionResolutionException
      org.apache.maven.plugin.PluginDescriptorParsingException
      org.apache.maven.plugin.InvalidPluginDescriptorException
      org.apache.maven.plugin.PluginResolutionException
      org.apache.maven.plugin.PluginManagerException
    • execute

      public void execute(org.apache.maven.project.MavenProject project, org.apache.maven.execution.MavenSession mavenSession, Runnable runnable, PluginRealmHelper.PluginFilter filter) throws org.apache.maven.plugin.version.PluginVersionResolutionException, org.apache.maven.plugin.PluginDescriptorParsingException, org.apache.maven.plugin.InvalidPluginDescriptorException, org.apache.maven.plugin.PluginResolutionException, org.apache.maven.plugin.PluginManagerException
      Throws:
      org.apache.maven.plugin.version.PluginVersionResolutionException
      org.apache.maven.plugin.PluginDescriptorParsingException
      org.apache.maven.plugin.InvalidPluginDescriptorException
      org.apache.maven.plugin.PluginResolutionException
      org.apache.maven.plugin.PluginManagerException