This is an automated email from the ASF dual-hosted git repository.
rmannibucau pushed a commit to branch rmannibucau/scan-mojo
in repository https://gitbox.apache.org/repos/asf/openwebbeans.git
commit 6863edf69a3743b42b381a8e288d5141ab437f94
Author: Romain Manni-Bucau
AuthorDate: Sat Dec 5 21:12:25 2020 +0100
basic scan mojo
---
pom.xml| 2 +
.../webbeans/config/OpenWebBeansConfiguration.java | 7 +
.../corespi/scanner/AbstractMetaDataDiscovery.java | 3 +-
.../webbeans/corespi/scanner/xbean/CdiArchive.java | 49 ++-
.../InterceptorAnnotatedDiscoveryTest.java | 4 +-
webbeans-maven-plugin/pom.xml | 118 ++
.../org/apache/openwebbeans/maven/ScanMojo.java| 457 +
.../src/main/resources/META-INF/MANIFEST.MF| 1 +
.../apache/webbeans/web/tests/WebBeansTest.java| 4 +-
9 files changed, 640 insertions(+), 5 deletions(-)
diff --git a/pom.xml b/pom.xml
index 3d672d1..c37574a 100644
--- a/pom.xml
+++ b/pom.xml
@@ -504,6 +504,7 @@
+**/HelpMojo.java
openwebbeans/owb-checks-default.xml
openwebbeans/owb-header.txt
true
@@ -649,6 +650,7 @@
webbeans-se
webbeans-junit5
webbeans-slf4j
+ webbeans-maven-plugin
diff --git
a/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
b/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
index 7eab234..82486a5 100644
---
a/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
+++
b/webbeans-impl/src/main/java/org/apache/webbeans/config/OpenWebBeansConfiguration.java
@@ -556,4 +556,11 @@ public class OpenWebBeansConfiguration
return generatorJavaVersion;
}
+
+public void cleanBuiltTimeScanning()
+{
+configProperties.stringPropertyNames().stream()
+.filter(it ->
it.startsWith("openwebbeans.buildtime.scanning."))
+.forEach(configProperties::remove);
+}
}
diff --git
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/AbstractMetaDataDiscovery.java
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/AbstractMetaDataDiscovery.java
index 210556e..797f093 100644
---
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/AbstractMetaDataDiscovery.java
+++
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/AbstractMetaDataDiscovery.java
@@ -129,7 +129,8 @@ public abstract class AbstractMetaDataDiscovery implements
BdaScannerService
}
archive = new CdiArchive(
beanArchiveService, WebBeansUtil.getCurrentClassLoader(),
-beanDeploymentUrls, userFilter, getAdditionalArchive());
+beanDeploymentUrls, userFilter, getAdditionalArchive(),
+webBeansContext.getOpenWebBeansConfiguration());
finder = new OwbAnnotationFinder(archive);
return finder;
diff --git
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/CdiArchive.java
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/CdiArchive.java
index b77aaf0..1b7c199 100644
---
a/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/CdiArchive.java
+++
b/webbeans-impl/src/main/java/org/apache/webbeans/corespi/scanner/xbean/CdiArchive.java
@@ -18,14 +18,18 @@
*/
package org.apache.webbeans.corespi.scanner.xbean;
+import org.apache.webbeans.config.OpenWebBeansConfiguration;
import org.apache.webbeans.spi.BeanArchiveService;
import org.apache.webbeans.spi.BeanArchiveService.BeanArchiveInformation;
import org.apache.xbean.finder.archive.Archive;
+import org.apache.xbean.finder.archive.ClassesArchive;
import org.apache.xbean.finder.archive.ClasspathArchive;
import org.apache.xbean.finder.archive.CompositeArchive;
import org.apache.xbean.finder.archive.FilteredArchive;
import org.apache.xbean.finder.filter.Filter;
+import org.apache.xbean.finder.util.Files;
+import java.io.File;
import java.io.IOException;
import java.io.InputStream;
import java.net.URL;
@@ -35,6 +39,10 @@ import java.util.HashMap;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
+import java.util.Objects;
+import java.util.stream.Stream;
+
+import static java.util.stream.Collectors.toList;
/**
* this delegate pattern is interesting
@@ -53,7 +61,7 @@ public class CdiArchive implements Archive
private final Archive delegate;
public CdiArchive(BeanArchiveService beanArchiveService, ClassLoader
loader, Map urls,
- Filter userFilter, Archive customArchive)
+ Filter userFilter, Archive customArchive,
OpenWebBeansConfiguration config)
{
Collection archives = new ArrayList<>();