public class P2ResolverImpl extends java.lang.Object implements P2Resolver
Modifier and Type | Field and Description |
---|---|
private java.util.Map<java.lang.String,java.lang.String> |
additionalFilterProperties |
private java.util.List<org.eclipse.equinox.p2.metadata.IRequirement> |
additionalRequirements |
private P2TargetPlatform |
context |
private java.util.Set<org.eclipse.equinox.p2.metadata.IInstallableUnit> |
currentProjectUnits |
private java.util.List<TargetEnvironment> |
environments |
private MavenLogger |
logger |
private org.eclipse.core.runtime.IProgressMonitor |
monitor |
private TargetPlatformFactoryImpl |
targetPlatformFactory |
private java.util.Set<org.eclipse.equinox.p2.metadata.IInstallableUnit> |
usedTargetPlatformUnits |
ANY_QUALIFIER
Constructor and Description |
---|
P2ResolverImpl(TargetPlatformFactoryImpl targetPlatformFactory,
MavenLogger logger) |
Modifier and Type | Method and Description |
---|---|
private void |
addArtifactFile(DefaultP2ResolutionResult result,
org.eclipse.equinox.p2.metadata.IInstallableUnit iu,
org.eclipse.equinox.p2.metadata.IArtifactKey key,
java.io.File artifactLocation) |
private void |
addDependenciesForTests() |
void |
addDependency(java.lang.String type,
java.lang.String id,
java.lang.String versionRange) |
private void |
addExternalMavenArtifact(DefaultP2ResolutionResult result,
IArtifactFacade mavenArtifact,
org.eclipse.equinox.p2.metadata.IInstallableUnit iu) |
protected void |
addMavenArtifact(DefaultP2ResolutionResult result,
org.eclipse.equinox.p2.metadata.IInstallableUnit iu,
java.lang.String id,
java.lang.String version,
java.lang.String mavenClassifier,
java.io.File location) |
private void |
addReactorProject(DefaultP2ResolutionResult result,
ReactorProjectIdentities project,
org.eclipse.equinox.p2.metadata.IInstallableUnit iu) |
private void |
addUnit(DefaultP2ResolutionResult result,
org.eclipse.equinox.p2.metadata.IInstallableUnit iu,
ReactorProject currentProject,
java.util.Set<java.lang.String> missingArtifacts) |
private void |
collectNonReactorIUs(DefaultP2ResolutionResult result,
java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> newState) |
P2ResolutionResult |
collectProjectDependencies(TargetPlatform targetPlatform,
ReactorProject project) |
private void |
failIfArtifactsMissing(java.util.Set<java.lang.String> missingArtifacts) |
java.util.List<org.eclipse.equinox.p2.metadata.IRequirement> |
getAdditionalRequirements() |
private java.lang.String |
getFeatureId(org.eclipse.equinox.p2.metadata.IInstallableUnit iu) |
P2ResolutionResult |
getTargetPlatformAsResolutionResult(TargetPlatformConfigurationStub tpConfiguration,
java.lang.String eeName) |
private boolean |
isBundleOrFragmentWithId(org.eclipse.equinox.p2.metadata.IInstallableUnit iu,
java.lang.String id) |
private boolean |
isProduct(org.eclipse.equinox.p2.metadata.IInstallableUnit iu) |
private boolean |
isPureIU(org.eclipse.equinox.p2.metadata.IInstallableUnit iu) |
private static org.eclipse.equinox.p2.metadata.IRequirement |
optionalGreedyRequirementTo(java.lang.String bundleId) |
protected P2ResolutionResult |
resolveDependencies(ReactorProject project,
AbstractResolutionStrategy strategy,
TargetEnvironment environment) |
java.util.List<P2ResolutionResult> |
resolveDependencies(TargetPlatform targetPlatform,
ReactorProject project)
Returns list ordered of resolution result, one per requested TargetEnvironment.
|
P2ResolutionResult |
resolveInstallableUnit(TargetPlatform targetPlatform,
java.lang.String id,
java.lang.String versionRange)
Resolves specified installable unit identified by id and versionRange.
|
P2ResolutionResult |
resolveMetadata(TargetPlatformConfigurationStub tpConfiguration,
java.lang.String eeName) |
void |
setAdditionalFilterProperties(java.util.Map<java.lang.String,java.lang.String> additionalFilterProperties)
Sets additional properties that will be used to evaluate filter expressions in the p2
metadata.
|
private void |
setContext(TargetPlatform targetPlatform,
ReactorProject currentProject) |
void |
setEnvironments(java.util.List<TargetEnvironment> environments) |
private P2ResolutionResult |
toResolutionResult(java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> newState,
ReactorProject currentProject) |
private final MavenLogger logger
private final org.eclipse.core.runtime.IProgressMonitor monitor
private java.util.List<TargetEnvironment> environments
private java.util.Map<java.lang.String,java.lang.String> additionalFilterProperties
private final java.util.List<org.eclipse.equinox.p2.metadata.IRequirement> additionalRequirements
private TargetPlatformFactoryImpl targetPlatformFactory
private P2TargetPlatform context
private java.util.Set<org.eclipse.equinox.p2.metadata.IInstallableUnit> currentProjectUnits
private java.util.Set<org.eclipse.equinox.p2.metadata.IInstallableUnit> usedTargetPlatformUnits
public P2ResolverImpl(TargetPlatformFactoryImpl targetPlatformFactory, MavenLogger logger)
private void setContext(TargetPlatform targetPlatform, ReactorProject currentProject)
public java.util.List<P2ResolutionResult> resolveDependencies(TargetPlatform targetPlatform, ReactorProject project)
P2Resolver
resolveDependencies
in interface P2Resolver
project
- The reactor project to be resolved. May be null
, in which case only
the additional dependencies are resolved.P2Resolver.addDependency(String, String, String)
public P2ResolutionResult collectProjectDependencies(TargetPlatform targetPlatform, ReactorProject project)
collectProjectDependencies
in interface P2Resolver
public P2ResolutionResult resolveMetadata(TargetPlatformConfigurationStub tpConfiguration, java.lang.String eeName)
resolveMetadata
in interface P2Resolver
public P2ResolutionResult getTargetPlatformAsResolutionResult(TargetPlatformConfigurationStub tpConfiguration, java.lang.String eeName)
getTargetPlatformAsResolutionResult
in interface P2Resolver
protected P2ResolutionResult resolveDependencies(ReactorProject project, AbstractResolutionStrategy strategy, TargetEnvironment environment)
private P2ResolutionResult toResolutionResult(java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> newState, ReactorProject currentProject)
private void addUnit(DefaultP2ResolutionResult result, org.eclipse.equinox.p2.metadata.IInstallableUnit iu, ReactorProject currentProject, java.util.Set<java.lang.String> missingArtifacts)
private void failIfArtifactsMissing(java.util.Set<java.lang.String> missingArtifacts)
private void collectNonReactorIUs(DefaultP2ResolutionResult result, java.util.Collection<org.eclipse.equinox.p2.metadata.IInstallableUnit> newState)
private void addArtifactFile(DefaultP2ResolutionResult result, org.eclipse.equinox.p2.metadata.IInstallableUnit iu, org.eclipse.equinox.p2.metadata.IArtifactKey key, java.io.File artifactLocation)
private void addReactorProject(DefaultP2ResolutionResult result, ReactorProjectIdentities project, org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
private void addExternalMavenArtifact(DefaultP2ResolutionResult result, IArtifactFacade mavenArtifact, org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
protected void addMavenArtifact(DefaultP2ResolutionResult result, org.eclipse.equinox.p2.metadata.IInstallableUnit iu, java.lang.String id, java.lang.String version, java.lang.String mavenClassifier, java.io.File location)
private boolean isPureIU(org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
private java.lang.String getFeatureId(org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
private boolean isBundleOrFragmentWithId(org.eclipse.equinox.p2.metadata.IInstallableUnit iu, java.lang.String id)
private boolean isProduct(org.eclipse.equinox.p2.metadata.IInstallableUnit iu)
public void setEnvironments(java.util.List<TargetEnvironment> environments)
setEnvironments
in interface P2Resolver
public void setAdditionalFilterProperties(java.util.Map<java.lang.String,java.lang.String> additionalFilterProperties)
P2Resolver
setAdditionalFilterProperties
in interface P2Resolver
public void addDependency(java.lang.String type, java.lang.String id, java.lang.String versionRange) throws IllegalArtifactReferenceException
addDependency
in interface P2Resolver
IllegalArtifactReferenceException
private void addDependenciesForTests()
private static org.eclipse.equinox.p2.metadata.IRequirement optionalGreedyRequirementTo(java.lang.String bundleId)
public java.util.List<org.eclipse.equinox.p2.metadata.IRequirement> getAdditionalRequirements()
public P2ResolutionResult resolveInstallableUnit(TargetPlatform targetPlatform, java.lang.String id, java.lang.String versionRange)
P2Resolver
resolveInstallableUnit
in interface P2Resolver