Skip to content

Commit

Permalink
Enhance the map of reactor units
Browse files Browse the repository at this point in the history
Signed-off-by: Christoph Läubrich <laeubi@laeubi-soft.de>
  • Loading branch information
laeubi committed Jan 7, 2022
1 parent 7328349 commit c688b19
Showing 1 changed file with 15 additions and 2 deletions.
Expand Up @@ -30,6 +30,7 @@
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
import java.util.Set;
import java.util.stream.Collectors;

Expand All @@ -54,6 +55,8 @@
import org.eclipse.tycho.core.shared.MavenContext;
import org.eclipse.tycho.core.shared.MavenLogger;
import org.eclipse.tycho.p2.maven.repository.Activator;
import org.eclipse.tycho.p2.metadata.IArtifactFacade;
import org.eclipse.tycho.p2.metadata.ReactorProjectFacade;
import org.eclipse.tycho.p2.remote.IRepositoryIdManager;
import org.eclipse.tycho.p2.target.ee.ExecutionEnvironmentResolutionHandler;
import org.eclipse.tycho.p2.target.facade.PomDependencyCollector;
Expand Down Expand Up @@ -496,6 +499,8 @@ P2TargetPlatform createTargetPlatformWithUpdatedReactorUnits(PreliminaryTargetPl
// external units are already filtered, only reactor units need to be filtered again
if (reactorUnitsMap != null) {
allUnits.addAll(filterUnits(configuredFilters, reactorUnitsMap.keySet()));
} else {
reactorUnitsMap = new LinkedHashMap<>();
}

IRawArtifactFileProvider pomDependencyArtifactRepo = pomDependencyCollector.getArtifactRepoOfPublishedBundles();
Expand All @@ -506,10 +511,18 @@ P2TargetPlatform createTargetPlatformWithUpdatedReactorUnits(PreliminaryTargetPl
ArtifactRepositoryBlackboard.putRepository(blackboardKey, new ProviderOnlyArtifactRepository(jointArtifacts,
Activator.getProvisioningAgent(), blackboardKey.toURI()));
logger.debug("Registered artifact repository " + blackboardKey);
//FIXME map POM deps to reactor ReactorProjectIdentities??
allUnits.addAll(filterUnits(configuredFilters, pomDependencyCollector.gatherMavenInstallableUnits()));
Map<IInstallableUnit, IArtifactFacade> mavenInstallableUnits = pomDependencyCollector
.getMavenInstallableUnits();
for (Entry<IInstallableUnit, IArtifactFacade> entry : mavenInstallableUnits.entrySet()) {
IArtifactFacade value = entry.getValue();
if (value instanceof ReactorProjectFacade) {
ReactorProjectFacade projectFacade = (ReactorProjectFacade) value;
reactorUnitsMap.put(entry.getKey(), projectFacade.getReactorProject().getIdentities());
}
}
return new FinalTargetPlatformImpl(allUnits, preliminaryTP.getEEResolutionHints(), jointArtifacts,
localArtifactRepository, pomDependencyCollector.getMavenInstallableUnits(), reactorUnitsMap);
localArtifactRepository, mavenInstallableUnits, reactorUnitsMap);
}

protected Collection<? extends IInstallableUnit> filterUnits(TargetPlatformFilterEvaluator configuredFilters,
Expand Down

0 comments on commit c688b19

Please sign in to comment.