You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2018/04/18 14:11:30 UTC
[sling-whiteboard] branch master updated: Move scanner classes into
scanner package hierarchy
This is an automated email from the ASF dual-hosted git repository.
cziegeler pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-whiteboard.git
The following commit(s) were added to refs/heads/master by this push:
new 1e005cb Move scanner classes into scanner package hierarchy
1e005cb is described below
commit 1e005cbccbf9a9d8441f4a01fabd066bf03695d1
Author: Carsten Ziegeler <cz...@apache.org>
AuthorDate: Wed Apr 18 16:11:24 2018 +0200
Move scanner classes into scanner package hierarchy
---
featuremodel/feature-analyser/pom.xml | 4 +-
.../feature/analyser/{service => }/Analyser.java | 17 ++---
.../apache/sling/feature/analyser/main/Main.java | 12 ++--
.../sling/feature/analyser/task/AnalyserTask.java | 3 +
.../feature/analyser/task/AnalyserTaskContext.java | 4 +-
.../task/impl/CheckBundleExportsImports.java | 2 +-
.../task/impl/CheckBundlesForInitialContent.java | 2 +-
.../task/impl/CheckBundlesForResources.java | 2 +-
.../task/impl/CheckRequirementsCapabilities.java | 4 +-
.../ApplicationDescriptor.java | 2 +-
.../{analyser => scanner}/ArtifactDescriptor.java | 2 +-
.../{analyser => scanner}/BundleDescriptor.java | 4 +-
.../{analyser => scanner}/ContainerDescriptor.java | 2 +-
.../feature/{analyser => scanner}/Descriptor.java | 2 +-
.../{analyser => scanner}/FeatureDescriptor.java | 2 +-
.../{analyser/service => scanner}/Scanner.java | 21 +++---
.../impl/ApplicationDescriptorImpl.java | 6 +-
.../impl/BundleDescriptorImpl.java | 4 +-
.../scanner/impl/ContentPackageDescriptor.java | 4 +-
.../scanner/impl/ContentPackageScanner.java | 3 +-
.../impl/ContentPackagesExtensionScanner.java | 4 +-
.../impl/FeatureDescriptorImpl.java | 4 +-
.../scanner/impl/FelixFrameworkScanner.java | 4 +-
.../feature/scanner/impl/RepoInitScanner.java | 4 +-
.../scanner/{ => spi}/ExtensionScanner.java | 4 +-
.../scanner/{ => spi}/FrameworkScanner.java | 4 +-
.../service => scanner/spi}/package-info.java | 2 +-
...che.sling.feature.scanner.spi.ExtensionScanner} | 0
...che.sling.feature.scanner.spi.FrameworkScanner} | 0
.../sling/feature/analyser/AnalyserTest.java | 25 +++----
.../feature/analyser/TestBundleResourceImpl.java | 1 +
.../sling/feature/resolver/FrameworkResolver.java | 4 +-
.../feature/resolver/impl/BundleResourceImpl.java | 2 +-
.../resolver/impl/BundleResourceImplTest.java | 6 +-
.../feature/support/util/CapabilityMatcher.java | 80 +---------------------
35 files changed, 85 insertions(+), 161 deletions(-)
diff --git a/featuremodel/feature-analyser/pom.xml b/featuremodel/feature-analyser/pom.xml
index 9498f48..5a7556a 100644
--- a/featuremodel/feature-analyser/pom.xml
+++ b/featuremodel/feature-analyser/pom.xml
@@ -78,8 +78,8 @@
<configuration>
<excludes>
<exclude>src/main/resources/META-INF/services/org.apache.sling.feature.analyser.task.AnalyserTask</exclude>
- <exclude>src/main/resources/META-INF/services/org.apache.sling.feature.scanner.ExtensionScanner</exclude>
- <exclude>src/main/resources/META-INF/services/org.apache.sling.feature.scanner.FrameworkScanner</exclude>
+ <exclude>src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.ExtensionScanner</exclude>
+ <exclude>src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.FrameworkScanner</exclude>
</excludes>
</configuration>
</plugin>
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Analyser.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Analyser.java
similarity index 96%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Analyser.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Analyser.java
index 42962fd..8124c9b 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Analyser.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Analyser.java
@@ -14,14 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser.service;
-
-import org.apache.sling.feature.Application;
-import org.apache.sling.feature.analyser.ApplicationDescriptor;
-import org.apache.sling.feature.analyser.task.AnalyserTask;
-import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
+package org.apache.sling.feature.analyser;
import java.io.IOException;
import java.util.ArrayList;
@@ -31,6 +24,14 @@ import java.util.List;
import java.util.ServiceLoader;
import java.util.Set;
+import org.apache.sling.feature.Application;
+import org.apache.sling.feature.analyser.task.AnalyserTask;
+import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
+import org.apache.sling.feature.scanner.ApplicationDescriptor;
+import org.apache.sling.feature.scanner.Scanner;
+import org.slf4j.Logger;
+import org.slf4j.LoggerFactory;
+
public class Analyser {
private final AnalyserTask[] tasks;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/main/Main.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/main/Main.java
index 24235ed..7874afa 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/main/Main.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/main/Main.java
@@ -16,19 +16,19 @@
*/
package org.apache.sling.feature.analyser.main;
+import java.io.File;
+import java.io.FileReader;
+import java.io.IOException;
+
import org.apache.sling.feature.Application;
-import org.apache.sling.feature.analyser.service.Analyser;
-import org.apache.sling.feature.analyser.service.Scanner;
+import org.apache.sling.feature.analyser.Analyser;
import org.apache.sling.feature.io.ArtifactManagerConfig;
import org.apache.sling.feature.io.json.ApplicationJSONReader;
+import org.apache.sling.feature.scanner.Scanner;
import org.apache.sling.feature.support.FeatureUtil;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
-import java.io.File;
-import java.io.FileReader;
-import java.io.IOException;
-
public class Main {
public static void main(final String[] args) {
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTask.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTask.java
index 8ef21bb..97cd99a 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTask.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTask.java
@@ -16,10 +16,13 @@
*/
package org.apache.sling.feature.analyser.task;
+import org.osgi.annotation.versioning.ConsumerType;
+
/**
* A analyser task analyses a specific part of the assembled
* application. It can report errors and warnings.
*/
+@ConsumerType
public interface AnalyserTask {
/** A unique (short) id. */
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTaskContext.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTaskContext.java
index 870e03a..b33fd80 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTaskContext.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/AnalyserTaskContext.java
@@ -17,8 +17,10 @@
package org.apache.sling.feature.analyser.task;
import org.apache.sling.feature.Application;
-import org.apache.sling.feature.analyser.ApplicationDescriptor;
+import org.apache.sling.feature.scanner.ApplicationDescriptor;
+import org.osgi.annotation.versioning.ProviderType;
+@ProviderType
public interface AnalyserTaskContext {
/**
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundleExportsImports.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundleExportsImports.java
index ee0dffd..0fc5a00 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundleExportsImports.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundleExportsImports.java
@@ -26,9 +26,9 @@ import java.util.Map;
import java.util.SortedMap;
import java.util.TreeMap;
-import org.apache.sling.feature.analyser.BundleDescriptor;
import org.apache.sling.feature.analyser.task.AnalyserTask;
import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.apache.sling.feature.support.util.PackageInfo;
import org.osgi.framework.Version;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForInitialContent.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForInitialContent.java
index 4dd0100..c45c2d7 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForInitialContent.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForInitialContent.java
@@ -19,9 +19,9 @@
package org.apache.sling.feature.analyser.task.impl;
import org.apache.sling.commons.osgi.ManifestHeader;
-import org.apache.sling.feature.analyser.BundleDescriptor;
import org.apache.sling.feature.analyser.task.AnalyserTask;
import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import java.util.ArrayList;
import java.util.List;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForResources.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForResources.java
index 603cfe4..92fe8db 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForResources.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckBundlesForResources.java
@@ -19,9 +19,9 @@
package org.apache.sling.feature.analyser.task.impl;
import org.apache.sling.commons.osgi.ManifestHeader;
-import org.apache.sling.feature.analyser.BundleDescriptor;
import org.apache.sling.feature.analyser.task.AnalyserTask;
import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import java.util.ArrayList;
import java.util.List;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckRequirementsCapabilities.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckRequirementsCapabilities.java
index 6029a13..77e270b 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckRequirementsCapabilities.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/task/impl/CheckRequirementsCapabilities.java
@@ -23,10 +23,10 @@ import java.util.SortedMap;
import java.util.TreeMap;
import java.util.stream.Collectors;
-import org.apache.sling.feature.analyser.ArtifactDescriptor;
-import org.apache.sling.feature.analyser.BundleDescriptor;
import org.apache.sling.feature.analyser.task.AnalyserTask;
import org.apache.sling.feature.analyser.task.AnalyserTaskContext;
+import org.apache.sling.feature.scanner.ArtifactDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.apache.sling.feature.support.util.CapabilityMatcher;
import org.osgi.resource.Requirement;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ApplicationDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ApplicationDescriptor.java
similarity index 96%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ApplicationDescriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ApplicationDescriptor.java
index d76f686..5dabc64 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ApplicationDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ApplicationDescriptor.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import org.apache.sling.feature.Application;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ArtifactDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ArtifactDescriptor.java
similarity index 96%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ArtifactDescriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ArtifactDescriptor.java
index 8517d2e..988b9d0 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ArtifactDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ArtifactDescriptor.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import java.io.File;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/BundleDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/BundleDescriptor.java
similarity index 96%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/BundleDescriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/BundleDescriptor.java
index c186fa5..748bec9 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/BundleDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/BundleDescriptor.java
@@ -14,11 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import java.util.jar.Manifest;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
+import org.apache.sling.feature.scanner.impl.BundleDescriptorImpl;
import org.apache.sling.feature.support.util.PackageInfo;
/**
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ContainerDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ContainerDescriptor.java
similarity index 98%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ContainerDescriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ContainerDescriptor.java
index 69efb78..0ae37f3 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/ContainerDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ContainerDescriptor.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import java.util.Collections;
import java.util.HashSet;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Descriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Descriptor.java
similarity index 98%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Descriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Descriptor.java
index d6237f8..a97cda0 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/Descriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Descriptor.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import java.util.Collections;
import java.util.HashSet;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/FeatureDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FeatureDescriptor.java
similarity index 95%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/FeatureDescriptor.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FeatureDescriptor.java
index 89739ce..d82b6f1 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/FeatureDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FeatureDescriptor.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser;
+package org.apache.sling.feature.scanner;
import org.apache.sling.feature.Feature;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Scanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Scanner.java
similarity index 90%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Scanner.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Scanner.java
index 4282d48..b0c29a9 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/Scanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/Scanner.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser.service;
+package org.apache.sling.feature.scanner;
import java.io.File;
import java.io.IOException;
@@ -29,27 +29,22 @@ import org.apache.sling.feature.Bundles;
import org.apache.sling.feature.Extension;
import org.apache.sling.feature.Extensions;
import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.analyser.ApplicationDescriptor;
-import org.apache.sling.feature.analyser.BundleDescriptor;
-import org.apache.sling.feature.analyser.ContainerDescriptor;
-import org.apache.sling.feature.analyser.FeatureDescriptor;
-import org.apache.sling.feature.analyser.impl.ApplicationDescriptorImpl;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
-import org.apache.sling.feature.analyser.impl.FeatureDescriptorImpl;
import org.apache.sling.feature.io.ArtifactManager;
import org.apache.sling.feature.io.ArtifactManagerConfig;
-import org.apache.sling.feature.scanner.ExtensionScanner;
-import org.apache.sling.feature.scanner.FrameworkScanner;
+import org.apache.sling.feature.scanner.impl.ApplicationDescriptorImpl;
+import org.apache.sling.feature.scanner.impl.BundleDescriptorImpl;
+import org.apache.sling.feature.scanner.impl.FeatureDescriptorImpl;
+import org.apache.sling.feature.scanner.spi.ExtensionScanner;
+import org.apache.sling.feature.scanner.spi.FrameworkScanner;
/**
* The scanner is a service that scans items and provides descriptions for these.
* The following items can be scanned individually
* <ul>
* <li>A bundle artifact
- * <li>An artifact (requires {@link ArtifactScannner}s)
* <li>An extension (requires {@link ExtensionScanner}s)
- * <li>A feature (requires {@link ArtifactScannner}s and {@link ExtensionScanner}s)
- * <li>A framework (requires {@link FrameworkScanner}s
+ * <li>A feature (requires {@link ExtensionScanner}s)
+ * <li>A framework (requires {@link FrameworkScanner}s)
* <li>An application (requires all scanner types)
* </ul>
*/
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/ApplicationDescriptorImpl.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ApplicationDescriptorImpl.java
similarity index 90%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/ApplicationDescriptorImpl.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ApplicationDescriptorImpl.java
index 0ef8d89..cf9248e 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/ApplicationDescriptorImpl.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ApplicationDescriptorImpl.java
@@ -14,11 +14,11 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser.impl;
+package org.apache.sling.feature.scanner.impl;
import org.apache.sling.feature.Application;
-import org.apache.sling.feature.analyser.ApplicationDescriptor;
-import org.apache.sling.feature.analyser.BundleDescriptor;
+import org.apache.sling.feature.scanner.ApplicationDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
/**
* Information about an application.
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/BundleDescriptorImpl.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/BundleDescriptorImpl.java
similarity index 97%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/BundleDescriptorImpl.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/BundleDescriptorImpl.java
index abe2a97..2f2c54b 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/BundleDescriptorImpl.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/BundleDescriptorImpl.java
@@ -14,7 +14,7 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser.impl;
+package org.apache.sling.feature.scanner.impl;
import java.io.File;
import java.io.IOException;
@@ -22,7 +22,7 @@ import java.util.Set;
import java.util.jar.Manifest;
import org.apache.sling.feature.Artifact;
-import org.apache.sling.feature.analyser.BundleDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.apache.sling.feature.support.util.ManifestParser;
import org.apache.sling.feature.support.util.ManifestUtil;
import org.apache.sling.feature.support.util.PackageInfo;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageDescriptor.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageDescriptor.java
index 7f75dd3..9d67b1e 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageDescriptor.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageDescriptor.java
@@ -22,8 +22,8 @@ import java.util.List;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.Configuration;
-import org.apache.sling.feature.analyser.ArtifactDescriptor;
-import org.apache.sling.feature.analyser.BundleDescriptor;
+import org.apache.sling.feature.scanner.ArtifactDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
/**
* Information about a content package.
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageScanner.java
index 90b84c7..5720166 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackageScanner.java
@@ -34,8 +34,7 @@ import java.util.zip.ZipInputStream;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.Configuration;
-import org.apache.sling.feature.analyser.BundleDescriptor;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackagesExtensionScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackagesExtensionScanner.java
index 59129df..4fc9fb6 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackagesExtensionScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/ContentPackagesExtensionScanner.java
@@ -23,9 +23,9 @@ import java.util.Set;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.Extension;
import org.apache.sling.feature.ExtensionType;
-import org.apache.sling.feature.analyser.ContainerDescriptor;
import org.apache.sling.feature.io.ArtifactManager;
-import org.apache.sling.feature.scanner.ExtensionScanner;
+import org.apache.sling.feature.scanner.ContainerDescriptor;
+import org.apache.sling.feature.scanner.spi.ExtensionScanner;
import org.apache.sling.feature.support.SlingConstants;
public class ContentPackagesExtensionScanner implements ExtensionScanner {
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/FeatureDescriptorImpl.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FeatureDescriptorImpl.java
similarity index 91%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/FeatureDescriptorImpl.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FeatureDescriptorImpl.java
index d7ac09a..63b2c1d 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/impl/FeatureDescriptorImpl.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FeatureDescriptorImpl.java
@@ -14,10 +14,10 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.analyser.impl;
+package org.apache.sling.feature.scanner.impl;
import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.analyser.FeatureDescriptor;
+import org.apache.sling.feature.scanner.FeatureDescriptor;
/**
* Information about a feature.
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FelixFrameworkScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FelixFrameworkScanner.java
index ac8afa1..a3fb70b 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FelixFrameworkScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/FelixFrameworkScanner.java
@@ -40,8 +40,8 @@ import org.apache.sling.commons.osgi.ManifestHeader;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.KeyValueMap;
-import org.apache.sling.feature.analyser.BundleDescriptor;
-import org.apache.sling.feature.scanner.FrameworkScanner;
+import org.apache.sling.feature.scanner.BundleDescriptor;
+import org.apache.sling.feature.scanner.spi.FrameworkScanner;
import org.apache.sling.feature.support.util.PackageInfo;
import org.apache.sling.feature.support.util.SubstVarUtil;
import org.osgi.framework.Constants;
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/RepoInitScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/RepoInitScanner.java
index 56a0891..3681ecf 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/RepoInitScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/impl/RepoInitScanner.java
@@ -20,9 +20,9 @@ import java.io.IOException;
import org.apache.sling.feature.Extension;
import org.apache.sling.feature.ExtensionType;
-import org.apache.sling.feature.analyser.ContainerDescriptor;
import org.apache.sling.feature.io.ArtifactManager;
-import org.apache.sling.feature.scanner.ExtensionScanner;
+import org.apache.sling.feature.scanner.ContainerDescriptor;
+import org.apache.sling.feature.scanner.spi.ExtensionScanner;
import org.apache.sling.feature.support.SlingConstants;
public class RepoInitScanner implements ExtensionScanner {
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ExtensionScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/ExtensionScanner.java
similarity index 93%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ExtensionScanner.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/ExtensionScanner.java
index 6ffdf36..773f210 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/ExtensionScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/ExtensionScanner.java
@@ -14,13 +14,13 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.scanner;
+package org.apache.sling.feature.scanner.spi;
import java.io.IOException;
import org.apache.sling.feature.Extension;
-import org.apache.sling.feature.analyser.ContainerDescriptor;
import org.apache.sling.feature.io.ArtifactManager;
+import org.apache.sling.feature.scanner.ContainerDescriptor;
import org.osgi.annotation.versioning.ConsumerType;
/**
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FrameworkScanner.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/FrameworkScanner.java
similarity index 93%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FrameworkScanner.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/FrameworkScanner.java
index 8661097..fcfc0ef 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/FrameworkScanner.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/FrameworkScanner.java
@@ -14,14 +14,14 @@
* See the License for the specific language governing permissions and
* limitations under the License.
*/
-package org.apache.sling.feature.scanner;
+package org.apache.sling.feature.scanner.spi;
import java.io.File;
import java.io.IOException;
import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.KeyValueMap;
-import org.apache.sling.feature.analyser.BundleDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.osgi.annotation.versioning.ConsumerType;
/**
diff --git a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/package-info.java b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/package-info.java
similarity index 94%
rename from featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/package-info.java
rename to featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/package-info.java
index 7d81b73..3ecb9cb 100644
--- a/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/analyser/service/package-info.java
+++ b/featuremodel/feature-analyser/src/main/java/org/apache/sling/feature/scanner/spi/package-info.java
@@ -18,6 +18,6 @@
*/
@org.osgi.annotation.versioning.Version("1.0.0")
-package org.apache.sling.feature.analyser.service;
+package org.apache.sling.feature.scanner.spi;
diff --git a/featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.ExtensionScanner b/featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.ExtensionScanner
similarity index 100%
rename from featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.ExtensionScanner
rename to featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.ExtensionScanner
diff --git a/featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.FrameworkScanner b/featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.FrameworkScanner
similarity index 100%
rename from featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.FrameworkScanner
rename to featuremodel/feature-analyser/src/main/resources/META-INF/services/org.apache.sling.feature.scanner.spi.FrameworkScanner
diff --git a/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/AnalyserTest.java b/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/AnalyserTest.java
index b77aef9..3d14b85 100644
--- a/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/AnalyserTest.java
+++ b/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/AnalyserTest.java
@@ -16,30 +16,31 @@
*/
package org.apache.sling.feature.analyser;
+import static junit.framework.TestCase.fail;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStreamReader;
+import java.io.Reader;
+import java.util.ArrayList;
+import java.util.List;
+
import org.apache.sling.feature.Application;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
-import org.apache.sling.feature.analyser.service.Analyser;
-import org.apache.sling.feature.analyser.service.Scanner;
+import org.apache.sling.feature.analyser.Analyser;
import org.apache.sling.feature.io.ArtifactManager;
import org.apache.sling.feature.io.ArtifactManagerConfig;
import org.apache.sling.feature.io.json.FeatureJSONReader;
import org.apache.sling.feature.io.json.FeatureJSONReader.SubstituteVariables;
+import org.apache.sling.feature.scanner.BundleDescriptor;
+import org.apache.sling.feature.scanner.Scanner;
+import org.apache.sling.feature.scanner.impl.BundleDescriptorImpl;
import org.apache.sling.feature.support.FeatureUtil;
import org.apache.sling.feature.support.resolver.FeatureResolver;
import org.apache.sling.feature.support.resolver.FeatureResource;
import org.junit.Test;
-import java.io.File;
-import java.io.IOException;
-import java.io.InputStreamReader;
-import java.io.Reader;
-import java.util.ArrayList;
-import java.util.List;
-
-import static junit.framework.TestCase.fail;
-
public class AnalyserTest {
@Test
public void testAnalyserWithCompleteFeature() throws Exception {
diff --git a/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/TestBundleResourceImpl.java b/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/TestBundleResourceImpl.java
index 11e7d5d..307d36c 100644
--- a/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/TestBundleResourceImpl.java
+++ b/featuremodel/feature-analyser/src/test/java/org/apache/sling/feature/analyser/TestBundleResourceImpl.java
@@ -20,6 +20,7 @@ import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.Feature;
import org.apache.sling.feature.OSGiCapability;
import org.apache.sling.feature.OSGiRequirement;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.apache.sling.feature.support.resolver.FeatureResource;
import org.apache.sling.feature.support.util.PackageInfo;
import org.osgi.framework.Version;
diff --git a/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/FrameworkResolver.java b/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/FrameworkResolver.java
index ba9d2af..88efe0c 100644
--- a/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/FrameworkResolver.java
+++ b/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/FrameworkResolver.java
@@ -32,12 +32,12 @@ import java.util.ServiceLoader;
import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.Feature;
-import org.apache.sling.feature.analyser.BundleDescriptor;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
import org.apache.sling.feature.io.ArtifactManager;
import org.apache.sling.feature.resolver.impl.BundleResourceImpl;
import org.apache.sling.feature.resolver.impl.FeatureResourceImpl;
import org.apache.sling.feature.resolver.impl.ResolveContextImpl;
+import org.apache.sling.feature.scanner.BundleDescriptor;
+import org.apache.sling.feature.scanner.impl.BundleDescriptorImpl;
import org.apache.sling.feature.support.resolver.FeatureResolver;
import org.apache.sling.feature.support.resolver.FeatureResource;
import org.osgi.framework.BundleContext;
diff --git a/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/impl/BundleResourceImpl.java b/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/impl/BundleResourceImpl.java
index 8a110cf..c591799 100644
--- a/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/impl/BundleResourceImpl.java
+++ b/featuremodel/feature-resolver/src/main/java/org/apache/sling/feature/resolver/impl/BundleResourceImpl.java
@@ -26,7 +26,7 @@ import org.apache.sling.feature.Artifact;
import org.apache.sling.feature.Feature;
import org.apache.sling.feature.OSGiCapability;
import org.apache.sling.feature.OSGiRequirement;
-import org.apache.sling.feature.analyser.BundleDescriptor;
+import org.apache.sling.feature.scanner.BundleDescriptor;
import org.apache.sling.feature.support.resolver.FeatureResource;
import org.apache.sling.feature.support.util.PackageInfo;
import org.osgi.framework.Version;
diff --git a/featuremodel/feature-resolver/src/test/java/org/apache/sling/feature/resolver/impl/BundleResourceImplTest.java b/featuremodel/feature-resolver/src/test/java/org/apache/sling/feature/resolver/impl/BundleResourceImplTest.java
index b56719d..b43bc04 100644
--- a/featuremodel/feature-resolver/src/test/java/org/apache/sling/feature/resolver/impl/BundleResourceImplTest.java
+++ b/featuremodel/feature-resolver/src/test/java/org/apache/sling/feature/resolver/impl/BundleResourceImplTest.java
@@ -35,9 +35,9 @@ import org.apache.sling.feature.ArtifactId;
import org.apache.sling.feature.Feature;
import org.apache.sling.feature.OSGiCapability;
import org.apache.sling.feature.OSGiRequirement;
-import org.apache.sling.feature.analyser.BundleDescriptor;
-import org.apache.sling.feature.analyser.Descriptor;
-import org.apache.sling.feature.analyser.impl.BundleDescriptorImpl;
+import org.apache.sling.feature.scanner.BundleDescriptor;
+import org.apache.sling.feature.scanner.Descriptor;
+import org.apache.sling.feature.scanner.impl.BundleDescriptorImpl;
import org.apache.sling.feature.support.resolver.FeatureResource;
import org.apache.sling.feature.support.util.PackageInfo;
import org.junit.Test;
diff --git a/featuremodel/feature-support/src/main/java/org/apache/sling/feature/support/util/CapabilityMatcher.java b/featuremodel/feature-support/src/main/java/org/apache/sling/feature/support/util/CapabilityMatcher.java
index 3d2995c..e476373 100644
--- a/featuremodel/feature-support/src/main/java/org/apache/sling/feature/support/util/CapabilityMatcher.java
+++ b/featuremodel/feature-support/src/main/java/org/apache/sling/feature/support/util/CapabilityMatcher.java
@@ -25,13 +25,10 @@ import java.lang.reflect.Method;
import java.lang.reflect.Modifier;
import java.util.ArrayList;
import java.util.Collection;
-import java.util.Collections;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
import java.util.Map.Entry;
-import java.util.Set;
-import java.util.concurrent.ConcurrentHashMap;
import org.osgi.framework.Constants;
import org.osgi.framework.Version;
@@ -41,68 +38,7 @@ import org.osgi.resource.Requirement;
public class CapabilityMatcher
{
- public static Set<Capability> match(Set<Capability> caps, final SimpleFilter sf)
- {
- Set<Capability> matches = Collections.newSetFromMap(new ConcurrentHashMap<Capability, Boolean>());
-
- if (sf.getOperation() == SimpleFilter.MATCH_ALL)
- {
- matches.addAll(caps);
- }
- else if (sf.getOperation() == SimpleFilter.AND)
- {
- // Evaluate each subfilter against the remaining capabilities.
- // For AND we calculate the intersection of each subfilter.
- // We can short-circuit the AND operation if there are no
- // remaining capabilities.
- final List<SimpleFilter> sfs = (List<SimpleFilter>) sf.getValue();
- for (int i = 0; (caps.size() > 0) && (i < sfs.size()); i++)
- {
- matches = match(caps, sfs.get(i));
- caps = matches;
- }
- }
- else if (sf.getOperation() == SimpleFilter.OR)
- {
- // Evaluate each subfilter against the remaining capabilities.
- // For OR we calculate the union of each subfilter.
- List<SimpleFilter> sfs = (List<SimpleFilter>) sf.getValue();
- for (int i = 0; i < sfs.size(); i++)
- {
- matches.addAll(match(caps, sfs.get(i)));
- }
- }
- else if (sf.getOperation() == SimpleFilter.NOT)
- {
- // Evaluate each subfilter against the remaining capabilities.
- // For OR we calculate the union of each subfilter.
- matches.addAll(caps);
- List<SimpleFilter> sfs = (List<SimpleFilter>) sf.getValue();
- for (int i = 0; i < sfs.size(); i++)
- {
- matches.removeAll(match(caps, sfs.get(i)));
- }
- }
- else
- {
- for (Iterator<Capability> it = caps.iterator(); it.hasNext(); )
- {
- Capability cap = it.next();
- Object lhs = cap.getAttributes().get(sf.getName());
- if (lhs != null)
- {
- if (compare(lhs, sf.getValue(), sf.getOperation()))
- {
- matches.add(cap);
- }
- }
- }
- }
-
- return matches;
- }
-
- public static boolean matches(Capability cap, SimpleFilter sf)
+ static boolean matches(Capability cap, SimpleFilter sf)
{
return matchesInternal(cap, sf) && matchMandatory(cap, sf);
}
@@ -161,20 +97,6 @@ public class CapabilityMatcher
return matched;
}
- private static Set<Capability> matchMandatory(
- Set<Capability> caps, SimpleFilter sf)
- {
- for (Iterator<Capability> it = caps.iterator(); it.hasNext(); )
- {
- Capability cap = it.next();
- if (!matchMandatory(cap, sf))
- {
- it.remove();
- }
- }
- return caps;
- }
-
private static boolean matchMandatory(Capability cap, SimpleFilter sf)
{
Map<String, Object> attrs = cap.getAttributes();
--
To stop receiving notification emails like this one, please contact
cziegeler@apache.org.