Repository: karaf Updated Branches: refs/heads/master bbe54b867 -> e8e985a1c
Fix Jaas integration test Project: http://git-wip-us.apache.org/repos/asf/karaf/repo Commit: http://git-wip-us.apache.org/repos/asf/karaf/commit/e8e985a1 Tree: http://git-wip-us.apache.org/repos/asf/karaf/tree/e8e985a1 Diff: http://git-wip-us.apache.org/repos/asf/karaf/diff/e8e985a1 Branch: refs/heads/master Commit: e8e985a1cf885c80c94d39f42d3c56e25e81476d Parents: bbe54b8 Author: Guillaume Nodet <[email protected]> Authored: Tue Jul 22 18:13:41 2014 +0200 Committer: Guillaume Nodet <[email protected]> Committed: Tue Jul 22 18:14:06 2014 +0200 ---------------------------------------------------------------------- assemblies/features/standard/pom.xml | 2 ++ .../java/org/apache/karaf/itests/JaasTest.java | 2 +- .../tooling/features/ValidateDescriptorMojo.java | 18 ++++++++++++++++-- 3 files changed, 19 insertions(+), 3 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/karaf/blob/e8e985a1/assemblies/features/standard/pom.xml ---------------------------------------------------------------------- diff --git a/assemblies/features/standard/pom.xml b/assemblies/features/standard/pom.xml index 0474f4d..8edbe22 100644 --- a/assemblies/features/standard/pom.xml +++ b/assemblies/features/standard/pom.xml @@ -444,9 +444,11 @@ <phase>compile</phase> <goals> <goal>features-generate-descriptor</goal> + <goal>features-validate-descriptor</goal> </goals> <configuration> <addBundlesToPrimaryFeature>false</addBundlesToPrimaryFeature> + <file>${project.build.directory}/feature/feature.xml</file> </configuration> </execution> </executions> http://git-wip-us.apache.org/repos/asf/karaf/blob/e8e985a1/itests/src/test/java/org/apache/karaf/itests/JaasTest.java ---------------------------------------------------------------------- diff --git a/itests/src/test/java/org/apache/karaf/itests/JaasTest.java b/itests/src/test/java/org/apache/karaf/itests/JaasTest.java index 27d3299..a329899 100644 --- a/itests/src/test/java/org/apache/karaf/itests/JaasTest.java +++ b/itests/src/test/java/org/apache/karaf/itests/JaasTest.java @@ -63,7 +63,7 @@ public class JaasTest extends KarafTestSupport { for (int i=0; i<10; i++) { doLogin(); } - assertEquals(3, bundleContext.getServiceReferences(ArtifactInstaller.class.getName(), null).length); + assertEquals(2, bundleContext.getServiceReferences(ArtifactInstaller.class.getName(), null).length); } private void doLogin() throws Exception { http://git-wip-us.apache.org/repos/asf/karaf/blob/e8e985a1/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/ValidateDescriptorMojo.java ---------------------------------------------------------------------- diff --git a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/ValidateDescriptorMojo.java b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/ValidateDescriptorMojo.java index 8263454..dff75e1 100644 --- a/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/ValidateDescriptorMojo.java +++ b/tooling/karaf-maven-plugin/src/main/java/org/apache/karaf/tooling/features/ValidateDescriptorMojo.java @@ -19,6 +19,7 @@ package org.apache.karaf.tooling.features; import aQute.bnd.header.OSGiHeader; import org.apache.felix.utils.manifest.Clause; +import org.apache.felix.utils.version.VersionTable; import org.apache.karaf.features.BundleInfo; import org.apache.karaf.features.Dependency; import org.apache.karaf.features.Feature; @@ -40,6 +41,7 @@ import org.apache.maven.plugin.MojoFailureException; import org.apache.maven.shared.dependency.tree.DependencyNode; import org.apache.maven.shared.dependency.tree.DependencyTreeBuilder; import org.apache.maven.shared.dependency.tree.traversal.DependencyNodeVisitor; +import org.osgi.framework.Version; import java.io.*; import java.net.URI; @@ -657,11 +659,23 @@ public class ValidateDescriptorMojo extends MojoSupport { } public Feature get(String name, String version) throws Exception { + Feature best = null; for (Feature feature : features) { - if (name.equals(feature.getName()) && version.equals(feature.getVersion())) { - return feature; + if (name.equals(feature.getName())) { + if (best == null) { + best = feature; + } else { + Version v1 = VersionTable.getVersion(feature.getVersion()); + Version v2 = VersionTable.getVersion(best.getVersion()); + if (v1.compareTo(v2) > 0) { + best = feature; + } + } } } + if (best != null) { + return best; + } throw new Exception(String.format("Unable to find definition for feature %s (version %s)", name, version)); }
