diff options
author | Pascal Rapicault | 2010-01-13 17:29:41 +0000 |
---|---|---|
committer | Pascal Rapicault | 2010-01-13 17:29:41 +0000 |
commit | 18189f0d42f7375660762dc6c885cf31683ae562 (patch) | |
tree | 17775d847bed9a33f3c68b74db2df75a2139c0bc /bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java | |
parent | c363f2984a09b73c422e38f4556fd3b23eafe958 (diff) | |
download | rt.equinox.p2-18189f0d42f7375660762dc6c885cf31683ae562.tar.gz rt.equinox.p2-18189f0d42f7375660762dc6c885cf31683ae562.tar.xz rt.equinox.p2-18189f0d42f7375660762dc6c885cf31683ae562.zip |
Merging api branch back to HEADv20100113
Diffstat (limited to 'bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java')
-rw-r--r-- | bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java | 43 |
1 files changed, 2 insertions, 41 deletions
diff --git a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java index 49742867a..d67a1ca39 100644 --- a/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java +++ b/bundles/org.eclipse.equinox.p2.metadata/src/org/eclipse/equinox/internal/p2/metadata/RequirementChange.java @@ -10,7 +10,7 @@ *******************************************************************************/ package org.eclipse.equinox.internal.p2.metadata; -import org.eclipse.equinox.internal.provisional.p2.metadata.*; +import org.eclipse.equinox.p2.metadata.IRequirementChange; public class RequirementChange implements IRequirementChange { private IRequiredCapability applyOn; @@ -39,46 +39,7 @@ public class RequirementChange implements IRequirementChange { if (toMatch.getRange().equals(applyOn.getRange())) return true; - return intersect(toMatch.getRange(), applyOn.getRange()) == null ? false : true; - } - - private VersionRange intersect(VersionRange r1, VersionRange r2) { - Version resultMin = null; - boolean resultMinIncluded = false; - Version resultMax = null; - boolean resultMaxIncluded = false; - - int minCompare = r1.getMinimum().compareTo(r2.getMinimum()); - if (minCompare < 0) { - resultMin = r2.getMinimum(); - resultMinIncluded = r2.getIncludeMinimum(); - } else if (minCompare > 0) { - resultMin = r1.getMinimum(); - resultMinIncluded = r1.getIncludeMinimum(); - } else if (minCompare == 0) { - resultMin = r1.getMinimum(); - resultMinIncluded = r1.getIncludeMinimum() && r2.getIncludeMinimum(); - } - - int maxCompare = r1.getMaximum().compareTo(r2.getMaximum()); - if (maxCompare > 0) { - resultMax = r2.getMaximum(); - resultMaxIncluded = r2.getIncludeMaximum(); - } else if (maxCompare < 0) { - resultMax = r1.getMaximum(); - resultMaxIncluded = r1.getIncludeMaximum(); - } else if (maxCompare == 0) { - resultMax = r1.getMaximum(); - resultMaxIncluded = r1.getIncludeMaximum() && r2.getIncludeMaximum(); - } - - int resultRangeComparison = resultMin.compareTo(resultMax); - if (resultRangeComparison < 0) - return new VersionRange(resultMin, resultMinIncluded, resultMax, resultMaxIncluded); - else if (resultRangeComparison == 0 && resultMinIncluded == resultMaxIncluded) - return new VersionRange(resultMin, resultMinIncluded, resultMax, resultMaxIncluded); - else - return null; + return toMatch.getRange().intersect(applyOn.getRange()) != null; } public int hashCode() { |