diff options
author | Fred Bricon | 2013-08-28 16:55:24 +0000 |
---|---|---|
committer | Fred Bricon | 2013-09-30 07:53:54 +0000 |
commit | 601f18cf2f007d80e6347217c302989218e96f47 (patch) | |
tree | 838d412ff5e4b2af02445ea7df4aaf841974a9cc /org.eclipse.m2e.discovery | |
parent | bc2d4140e3aaf327ece012c4e42b6edc6bc5a38c (diff) | |
download | m2e-core-601f18cf2f007d80e6347217c302989218e96f47.tar.gz m2e-core-601f18cf2f007d80e6347217c302989218e96f47.tar.xz m2e-core-601f18cf2f007d80e6347217c302989218e96f47.zip |
Minimize Lifecycle Mapping parsing during discovery
Signed-off-by: Fred Bricon <fbricon@gmail.com>
Diffstat (limited to 'org.eclipse.m2e.discovery')
-rw-r--r-- | org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/MavenDiscoveryService.java | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/MavenDiscoveryService.java b/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/MavenDiscoveryService.java index 027ec208..dad800c6 100644 --- a/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/MavenDiscoveryService.java +++ b/org.eclipse.m2e.discovery/src/org/eclipse/m2e/internal/discovery/MavenDiscoveryService.java @@ -57,6 +57,7 @@ import org.eclipse.m2e.core.embedder.IMavenExecutionContext; import org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingFactory; import org.eclipse.m2e.core.internal.lifecyclemapping.LifecycleMappingResult; import org.eclipse.m2e.core.internal.lifecyclemapping.MappingMetadataSource; +import org.eclipse.m2e.core.internal.lifecyclemapping.SimpleMappingMetadataSource; import org.eclipse.m2e.core.internal.lifecyclemapping.discovery.ILifecycleMappingRequirement; import org.eclipse.m2e.core.internal.lifecyclemapping.discovery.IMavenDiscovery; import org.eclipse.m2e.core.internal.lifecyclemapping.discovery.IMavenDiscoveryProposal; @@ -168,6 +169,9 @@ public class MavenDiscoveryService implements IMavenDiscoveryUI, IMavenDiscovery Collection<CatalogItem> selectedItems = toCatalogItems(preselected); List<LifecycleMappingMetadataSource> selectedSources = toMetadataSources(preselected); + Map<String, List<MappingMetadataSource>> metadataSourcesMap = LifecycleMappingFactory.getProjectMetadataSourcesMap( + mavenProject, null, mojoExecutions, false, monitor); + for(CatalogItemCacheEntry itemEntry : items) { CatalogItem item = itemEntry.getItem(); LifecycleMappingMetadataSource src = itemEntry.getMetadataSource(); @@ -182,7 +186,7 @@ public class MavenDiscoveryService implements IMavenDiscoveryUI, IMavenDiscovery } if(src != null) { - log.debug("Considering catalog item '{}'", item.getName()); //$NON-NLS-1$ + log.debug("Considering catalog item '{}' for project {}", item.getName(), mavenProject.getName()); //$NON-NLS-1$ src.setSource(item); @@ -193,9 +197,10 @@ public class MavenDiscoveryService implements IMavenDiscoveryUI, IMavenDiscovery sources.add(src); } - List<MappingMetadataSource> metadataSources = LifecycleMappingFactory.getProjectMetadataSources(mavenProject, - sources, mojoExecutions, false, monitor); + metadataSourcesMap.put("bundleMetadataSources", + Collections.singletonList((MappingMetadataSource) new SimpleMappingMetadataSource(sources))); + List<MappingMetadataSource> metadataSources = LifecycleMappingFactory.asList(metadataSourcesMap); LifecycleMappingFactory.calculateEffectiveLifecycleMappingMetadata(mappingResult, metadataSources, mavenProject, mojoExecutions, false, monitor); |