diff --git a/.github/workflows/earlyaccess-javadoc.yml b/.github/workflows/earlyaccess-javadoc.yml
new file mode 100644
index 0000000000..a4f487cb1c
--- /dev/null
+++ b/.github/workflows/earlyaccess-javadoc.yml
@@ -0,0 +1,43 @@
+# This workflow will build a Java project with Maven
+# For more information see: https://help.github.com/actions/language-and-framework-guides/building-and-testing-java-with-maven
+
+name: JDK-EA Javadoc
+
+on: [push, pull_request]
+
+jobs:
+ applications:
+ name: Unit Test EA
+ strategy:
+ fail-fast: false
+ matrix:
+ os: [ubuntu-latest]
+ java-version: [23]
+
+ runs-on: ${{ matrix.os }}
+
+ steps:
+ - name: Git Checkout
+ uses: actions/checkout@v4
+ - name: Download JDK ${{ matrix.java-version }} from jdk.java.net
+ uses: oracle-actions/setup-java@v1
+ id: download-jdk
+ with:
+ website: jdk.java.net
+ release: ${{ matrix.java-version }}
+ - name: 'Print outputs'
+ shell: bash
+ run: |
+ echo 'Outputs'
+ echo "steps.download-jdk.outputs.archive = ${{ steps.download-jdk.outputs.archive }}"
+ echo "steps.download-jdk.outputs.version = ${{ steps.download-jdk.outputs.version }}"
+ - name: Set Maven Wrapper
+ run: mvn -N wrapper:wrapper -Dmaven=3.6.3 --no-transfer-progress
+ - name: 'JDK Version'
+ run: java --version
+ - name: Build Generator
+ run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean install -pl 'eclipse-collections-code-generator,eclipse-collections-code-generator-maven-plugin' --no-transfer-progress
+ - name: Javadoc
+ run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean javadoc:aggregate install -pl '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage' --no-transfer-progress
+ env:
+ MAVEN_OPTS: "-Xmx2g"
diff --git a/.github/workflows/pull-request.yml b/.github/workflows/pull-request.yml
index b39148ba6f..aed9c20179 100644
--- a/.github/workflows/pull-request.yml
+++ b/.github/workflows/pull-request.yml
@@ -36,7 +36,7 @@ jobs:
distribution: 'zulu'
java-version: ${{ matrix.java-version }}
- name: Unit-Test
- run: ./mvnw verify --projects '!p2-repository,!org.eclipse.collections:org.eclipse.collections'
+ run: ./mvnw verify
env:
MAVEN_OPTS: "-Xmx1g"
@@ -60,7 +60,7 @@ jobs:
- run: mvn --non-recursive wrapper:wrapper -Dmaven=3.9.6
- run: java --version
- name: Unit-Test
- run: ./mvnw verify --projects '!p2-repository,!org.eclipse.collections:org.eclipse.collections'
+ run: ./mvnw verify
env:
MAVEN_OPTS: "-Xmx2g"
@@ -123,11 +123,11 @@ jobs:
distribution: 'zulu'
java-version: 11
- name: JavaDoc Aggregate
- run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean install javadoc:aggregate --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage,!p2-repository,!org.eclipse.collections:org.eclipse.collections'
+ run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean javadoc:aggregate verify --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage'
env:
MAVEN_OPTS: "-Xmx1g"
- name: JavaDoc Jar
- run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean install javadoc:jar --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage,!p2-repository,!org.eclipse.collections:org.eclipse.collections'
+ run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean install javadoc:jar --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage'
env:
MAVEN_OPTS: "-Xmx1g"
@@ -151,6 +151,6 @@ jobs:
- run: mvn --non-recursive wrapper:wrapper -Dmaven=3.9.6
- run: java --version
- name: Javadoc
- run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean install javadoc:aggregate --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage,!p2-repository,!org.eclipse.collections:org.eclipse.collections'
+ run: ./mvnw -Dsurefire.useFile=false -DskipTests -Denforcer.skip=true clean javadoc:aggregate verify --projects '!unit-tests,!serialization-tests,!jcstress-tests,!junit-trait-runner,!unit-tests-java8,!test-coverage'
env:
MAVEN_OPTS: "-Xmx2g"
diff --git a/eclipse-collections-api/bnd.bnd b/eclipse-collections-api/bnd.bnd
index 53bf626337..ac95a5b097 100644
--- a/eclipse-collections-api/bnd.bnd
+++ b/eclipse-collections-api/bnd.bnd
@@ -1,6 +1,10 @@
-package-version=${version;===;${Bundle-Version}}
+package-version=${versionmask;===;${Bundle-Version}}
-Automatic-Module-Name: org.eclipse.collections.api
+-jpms-module-info: org.eclipse.collections.api;version="${package-version}"
Bundle-SymbolicName: org.eclipse.collections.api
Export-Package: \
*;version="${package-version}"
+
+Require-Capability: \
+ osgi.extender;\
+ filter:="(&(osgi.extender=osgi.serviceloader.processor)(version>=1.0)(!(version>=2.0)))"
diff --git a/eclipse-collections-code-generator-maven-plugin/pom.xml b/eclipse-collections-code-generator-maven-plugin/pom.xml
index 0f37a786d6..d6cabd266e 100644
--- a/eclipse-collections-code-generator-maven-plugin/pom.xml
+++ b/eclipse-collections-code-generator-maven-plugin/pom.xml
@@ -50,13 +50,6 @@
provided
-
- org.apache.maven
- maven-model
- 3.9.0
- provided
-
-
org.apache.maven.plugin-tools
maven-plugin-annotations
diff --git a/eclipse-collections-code-generator-maven-plugin/src/main/java/org/eclipse/collections/codegenerator/maven/GenerateServicesMojo.java b/eclipse-collections-code-generator-maven-plugin/src/main/java/org/eclipse/collections/codegenerator/maven/GenerateServicesMojo.java
deleted file mode 100644
index dcadce2f65..0000000000
--- a/eclipse-collections-code-generator-maven-plugin/src/main/java/org/eclipse/collections/codegenerator/maven/GenerateServicesMojo.java
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * Copyright (c) 2022 Goldman Sachs and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * and Eclipse Distribution License v. 1.0 which accompany this distribution.
- * The Eclipse Public License is available at http://www.eclipse.org/legal/epl-v10.html
- * and the Eclipse Distribution License is available at
- * http://www.eclipse.org/org/documents/edl-v10.php.
- */
-
-package org.eclipse.collections.codegenerator.maven;
-
-import java.io.File;
-import java.util.ArrayList;
-import java.util.List;
-
-import org.apache.maven.model.Resource;
-import org.apache.maven.plugins.annotations.LifecyclePhase;
-import org.apache.maven.plugins.annotations.Mojo;
-import org.apache.maven.plugins.annotations.Parameter;
-import org.apache.maven.plugins.annotations.ResolutionScope;
-
-@Mojo(
- name = "generate-services",
- defaultPhase = LifecyclePhase.GENERATE_RESOURCES,
- threadSafe = true,
- requiresDependencyResolution = ResolutionScope.COMPILE)
-public class GenerateServicesMojo extends AbstractGenerateMojo
-{
- @Parameter(property = "templateDirectory", required = true, defaultValue = "services")
- private String templateDirectory;
-
- @Parameter(property = "outputDirectory", defaultValue = "${project.build.directory}/generated-resources/META-INF/services", required = true)
- private File outputDirectory;
-
- @Override
- public String getTemplateDirectory()
- {
- return this.templateDirectory;
- }
-
- @Override
- public File getOutputDirectory()
- {
- return this.outputDirectory;
- }
-
- @Override
- protected String getFileExtension()
- {
- return "";
- }
-
- @Override
- protected void addGeneratedDirectoryToMaven()
- {
- List excludes = new ArrayList<>();
- excludes.add("**/*.crc");
-
- Resource resource = new Resource();
- resource.setDirectory(this.outputDirectory.getAbsolutePath());
- resource.setTargetPath("META-INF/services");
- resource.setExcludes(excludes);
- this.mavenProject.addResource(resource);
- }
-}
diff --git a/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitiveObjectMap.stg b/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitiveObjectMap.stg
index 9996e37a51..a96bfad6f1 100644
--- a/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitiveObjectMap.stg
+++ b/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitiveObjectMap.stg
@@ -186,7 +186,7 @@ public interface MutableObjectMap\ extends ObjectMap\, Mutable
* Puts all of the key/value mappings from the specified pairs into this map. If this
* map already has a value associated with one of the keys in the pairs, it will be
* replaced with the value in the pair.
- * @param iterable the pairs to put into this map
+ * @param keyValuePairs the pairs to put into this map
* @return this map
* @see #putPair(ObjectPair)
*/
diff --git a/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitivePrimitiveMap.stg b/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitivePrimitiveMap.stg
index c6bef3d866..78f3e2a2e1 100644
--- a/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitivePrimitiveMap.stg
+++ b/eclipse-collections-code-generator/src/main/resources/api/map/mutablePrimitivePrimitiveMap.stg
@@ -204,7 +204,7 @@ public interface MutableMap extends Map, MutablePair)
*/
diff --git a/eclipse-collections-code-generator/src/main/resources/api/map/objectPrimitiveMap.stg b/eclipse-collections-code-generator/src/main/resources/api/map/objectPrimitiveMap.stg
index fc786ac2eb..01644d0f5c 100644
--- a/eclipse-collections-code-generator/src/main/resources/api/map/objectPrimitiveMap.stg
+++ b/eclipse-collections-code-generator/src/main/resources/api/map/objectPrimitiveMap.stg
@@ -111,7 +111,7 @@ public interface ObjectMap\ extends Iterable
/**
* Implements the injectInto pattern with each key/value pair of the map.
- * @param value to be injected into the map
+ * @param injectedValue value to be injected into the map
* @param function to apply to the injected value and key/value pairs
* @return result of injecting the injectedValue into the map
* @since 11.1
diff --git a/eclipse-collections-code-generator/src/main/resources/api/map/primitiveObjectMap.stg b/eclipse-collections-code-generator/src/main/resources/api/map/primitiveObjectMap.stg
index 499a230046..26d843fd27 100644
--- a/eclipse-collections-code-generator/src/main/resources/api/map/primitiveObjectMap.stg
+++ b/eclipse-collections-code-generator/src/main/resources/api/map/primitiveObjectMap.stg
@@ -76,7 +76,7 @@ public interface ObjectMap\ extends PrimitiveObjectMap\
/**
* Implements the injectInto pattern with each key/value pair of the map.
- * @param value to be injected into the map
+ * @param injectedValue value to be injected into the map
* @param function to apply to the injected value and key/value pairs
* @return result of injecting the injectedValue into the map
* @since 11.1
diff --git a/eclipse-collections-code-generator/src/main/resources/api/map/primitivePrimitiveMap.stg b/eclipse-collections-code-generator/src/main/resources/api/map/primitivePrimitiveMap.stg
index 62c9b95995..29338b4254 100644
--- a/eclipse-collections-code-generator/src/main/resources/api/map/primitivePrimitiveMap.stg
+++ b/eclipse-collections-code-generator/src/main/resources/api/map/primitivePrimitiveMap.stg
@@ -92,7 +92,7 @@ public interface Map extends ValuesMap
/**
* Implements the injectInto pattern with each key/value pair of the map.
- * @param value to be injected into the map
+ * @param injectedValue value to be injected into the map
* @param function to apply to the injected value and key/value pairs
* @return result of injecting the injectedValue into the map
* @since 11.1
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/bag/immutable/immutablePrimitiveBagFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/bag/immutable/immutablePrimitiveBagFactoryImpl.stg
index 6641ae1b6f..7516fe59bc 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/bag/immutable/immutablePrimitiveBagFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/bag/immutable/immutablePrimitiveBagFactoryImpl.stg
@@ -27,6 +27,7 @@ import org.eclipse.collections.impl.factory.primitive.Bags;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableBagFactory.class)
public class ImmutableBagFactoryImpl implements ImmutableBagFactory
{
public static final ImmutableBagFactory INSTANCE = new ImmutableBagFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/bag/mutable/mutablePrimitiveBagFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/bag/mutable/mutablePrimitiveBagFactoryImpl.stg
index 1dabdb7519..f3607ab790 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/bag/mutable/mutablePrimitiveBagFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/bag/mutable/mutablePrimitiveBagFactoryImpl.stg
@@ -26,6 +26,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableBagFactory.class)
public class MutableBagFactoryImpl implements MutableBagFactory
{
public static final MutableBagFactory INSTANCE = new MutableBagFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/list/immutable/immutablePrimitiveListFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/list/immutable/immutablePrimitiveListFactoryImpl.stg
index 4990ee9511..3b65234628 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/list/immutable/immutablePrimitiveListFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/list/immutable/immutablePrimitiveListFactoryImpl.stg
@@ -25,6 +25,7 @@ import org.eclipse.collections.impl.factory.primitive.Lists;
*
* @since 3.2.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableListFactory.class)
public class ImmutableListFactoryImpl implements ImmutableListFactory
{
public static final ImmutableListFactory INSTANCE = new ImmutableListFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/list/mutable/mutablePrimitiveListFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/list/mutable/mutablePrimitiveListFactoryImpl.stg
index 6a3ac512e5..c581788caf 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/list/mutable/mutablePrimitiveListFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/list/mutable/mutablePrimitiveListFactoryImpl.stg
@@ -26,6 +26,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableListFactory.class)
public class MutableListFactoryImpl implements MutableListFactory
{
public static final MutableListFactory INSTANCE = new MutableListFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutableObjectPrimitiveMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutableObjectPrimitiveMapFactoryImpl.stg
index 0f36992ba2..0b128610f5 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutableObjectPrimitiveMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutableObjectPrimitiveMapFactoryImpl.stg
@@ -27,6 +27,7 @@ import org.eclipse.collections.impl.factory.primitive.ObjectMaps;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableObjectMapFactory.class)
public class ImmutableObjectMapFactoryImpl implements ImmutableObjectMapFactory
{
public static final ImmutableObjectMapFactory INSTANCE = new ImmutableObjectMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitiveObjectMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitiveObjectMapFactoryImpl.stg
index b8c0f28903..80771e531d 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitiveObjectMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitiveObjectMapFactoryImpl.stg
@@ -28,6 +28,7 @@ import org.eclipse.collections.impl.factory.primitive.ObjectMaps;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableObjectMapFactory.class)
public class ImmutableObjectMapFactoryImpl implements ImmutableObjectMapFactory
{
public static final ImmutableObjectMapFactory INSTANCE = new ImmutableObjectMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitivePrimitiveMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitivePrimitiveMapFactoryImpl.stg
index 96f36fef87..b98b663cfc 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitivePrimitiveMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/immutable/immutablePrimitivePrimitiveMapFactoryImpl.stg
@@ -30,6 +30,7 @@ import org.eclipse.collections.impl.factory.primitive.Maps;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableMapFactory.class)
public class ImmutableMapFactoryImpl implements ImmutableMapFactory
{
public static final ImmutableMapFactory INSTANCE = new ImmutableMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveHashingStrategyMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveHashingStrategyMapFactoryImpl.stg
index c99bd00a90..d6d2382240 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveHashingStrategyMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveHashingStrategyMapFactoryImpl.stg
@@ -23,6 +23,7 @@ import org.eclipse.collections.api.map.primitive.MutableObjectMap;
*
* @since 11.1.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableObjectHashingStrategyMapFactory.class)
public class MutableObjectHashingStrategyMapFactoryImpl implements MutableObjectHashingStrategyMapFactory
{
public static final MutableObjectHashingStrategyMapFactory INSTANCE = new MutableObjectHashingStrategyMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveMapFactoryImpl.stg
index 88cd4ef661..17afafce00 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutableObjectPrimitiveMapFactoryImpl.stg
@@ -27,6 +27,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableObjectMapFactory.class)
public class MutableObjectMapFactoryImpl implements MutableObjectMapFactory
{
public static final MutableObjectMapFactory INSTANCE = new MutableObjectMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitiveObjectMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitiveObjectMapFactoryImpl.stg
index 0181ca2588..12deee728e 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitiveObjectMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitiveObjectMapFactoryImpl.stg
@@ -29,6 +29,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableObjectMapFactory.class)
public class MutableObjectMapFactoryImpl implements MutableObjectMapFactory
{
public static final MutableObjectMapFactory INSTANCE = new MutableObjectMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitivePrimitiveMapFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitivePrimitiveMapFactoryImpl.stg
index ed4fa06fb5..4af3b5fdf9 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitivePrimitiveMapFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/map/mutable/mutablePrimitivePrimitiveMapFactoryImpl.stg
@@ -31,6 +31,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableMapFactory.class)
public class MutableMapFactoryImpl implements MutableMapFactory
{
public static final MutableMapFactory INSTANCE = new MutableMapFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/set/immutable/immutablePrimitiveSetFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/set/immutable/immutablePrimitiveSetFactoryImpl.stg
index b59785bc5b..48d8cf258f 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/set/immutable/immutablePrimitiveSetFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/set/immutable/immutablePrimitiveSetFactoryImpl.stg
@@ -27,6 +27,7 @@ import org.eclipse.collections.impl.factory.primitive.Sets;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableSetFactory.class)
public class ImmutableSetFactoryImpl implements ImmutableSetFactory
{
public static final ImmutableSetFactory INSTANCE = new ImmutableSetFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/set/mutable/mutablePrimitiveSetFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/set/mutable/mutablePrimitiveSetFactoryImpl.stg
index ca93e7697a..68d6443413 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/set/mutable/mutablePrimitiveSetFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/set/mutable/mutablePrimitiveSetFactoryImpl.stg
@@ -26,6 +26,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableSetFactory.class)
public class MutableSetFactoryImpl implements MutableSetFactory
{
public static final MutableSetFactory INSTANCE = new MutableSetFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/stack/immutable/immutablePrimitiveStackFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/stack/immutable/immutablePrimitiveStackFactoryImpl.stg
index 1f38966cae..6f1a49b598 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/stack/immutable/immutablePrimitiveStackFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/stack/immutable/immutablePrimitiveStackFactoryImpl.stg
@@ -25,6 +25,7 @@ import org.eclipse.collections.impl.factory.primitive.Stacks;
*
* @since 4.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableStackFactory.class)
public class ImmutableStackFactoryImpl implements ImmutableStackFactory
{
public static final ImmutableStackFactory INSTANCE = new ImmutableStackFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/impl/stack/mutable/mutablePrimitiveStackFactoryImpl.stg b/eclipse-collections-code-generator/src/main/resources/impl/stack/mutable/mutablePrimitiveStackFactoryImpl.stg
index 384e003ffe..8fb2478666 100644
--- a/eclipse-collections-code-generator/src/main/resources/impl/stack/mutable/mutablePrimitiveStackFactoryImpl.stg
+++ b/eclipse-collections-code-generator/src/main/resources/impl/stack/mutable/mutablePrimitiveStackFactoryImpl.stg
@@ -26,6 +26,7 @@ import org.eclipse.collections.impl.utility.Iterate;
*
* @since 6.0.
*/
+@aQute.bnd.annotation.spi.ServiceProvider(MutableStackFactory.class)
public class MutableStackFactoryImpl implements MutableStackFactory
{
public static final MutableStackFactory INSTANCE = new MutableStackFactoryImpl();
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutableObjectPrimitiveMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutableObjectPrimitiveMapFactory.stg
deleted file mode 100644
index 7b613dc343..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutableObjectPrimitiveMapFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.map.primitive.ImmutableObjectMapFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.map.immutable.primitive.ImmutableObjectMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveBagFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveBagFactory.stg
deleted file mode 100644
index 79c83def44..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveBagFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.bag.primitive.ImmutableBagFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.bag.immutable.primitive.ImmutableBagFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveListFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveListFactory.stg
deleted file mode 100644
index 25e76fcefd..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveListFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.list.primitive.ImmutableListFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.list.immutable.primitive.ImmutableListFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveObjectMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveObjectMapFactory.stg
deleted file mode 100644
index 66c18f3589..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveObjectMapFactory.stg
+++ /dev/null
@@ -1,13 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.map.primitive.ImmutableObjectMapFactory"
-
-skipBoolean() ::= "true"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.map.immutable.primitive.ImmutableObjectMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitivePrimitiveMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitivePrimitiveMapFactory.stg
deleted file mode 100644
index 487e2f5b07..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitivePrimitiveMapFactory.stg
+++ /dev/null
@@ -1,12 +0,0 @@
-hasTwoPrimitives() ::= "true"
-targetPath() ::= ""
-
-fileName(primitive1, primitive2, sameTwoPrimitives) ::= "org.eclipse.collections.api.factory.map.primitive.ImmutableMapFactory"
-
-class(primitive1, primitive2, sameTwoPrimitives) ::= <<
-
->>
-
-body(type1, type2, name1, name2) ::= <<
-org.eclipse.collections.impl.map.immutable.primitive.ImmutableMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveSetFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveSetFactory.stg
deleted file mode 100644
index 2423220271..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveSetFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.set.primitive.ImmutableSetFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.set.immutable.primitive.ImmutableSetFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveStackFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveStackFactory.stg
deleted file mode 100644
index e84de1c54f..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceImmutablePrimitiveStackFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.stack.primitive.ImmutableStackFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.stack.immutable.primitive.ImmutableStackFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveHashingStrategyMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveHashingStrategyMapFactory.stg
deleted file mode 100644
index 5846d66e29..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveHashingStrategyMapFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.map.primitive.MutableObjectHashingStrategyMapFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.map.mutable.primitive.MutableObjectHashingStrategyMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveMapFactory.stg
deleted file mode 100644
index 39c01f0b8a..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutableObjectPrimitiveMapFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.map.primitive.MutableObjectMapFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.map.mutable.primitive.MutableObjectMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveBagFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveBagFactory.stg
deleted file mode 100644
index 0fa52a155f..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveBagFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.bag.primitive.MutableBagFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.bag.mutable.primitive.MutableBagFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveListFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveListFactory.stg
deleted file mode 100644
index 7c952d2611..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveListFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.list.primitive.MutableListFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.list.mutable.primitive.MutableListFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveObjectMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveObjectMapFactory.stg
deleted file mode 100644
index 9ccad03337..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveObjectMapFactory.stg
+++ /dev/null
@@ -1,13 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.map.primitive.MutableObjectMapFactory"
-
-skipBoolean() ::= "true"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.map.mutable.primitive.MutableObjectMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitivePrimitiveMapFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitivePrimitiveMapFactory.stg
deleted file mode 100644
index 9658392d3a..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitivePrimitiveMapFactory.stg
+++ /dev/null
@@ -1,12 +0,0 @@
-hasTwoPrimitives() ::= "true"
-targetPath() ::= ""
-
-fileName(primitive1, primitive2, sameTwoPrimitives) ::= "org.eclipse.collections.api.factory.map.primitive.MutableMapFactory"
-
-class(primitive1, primitive2, sameTwoPrimitives) ::= <<
-
->>
-
-body(type1, type2, name1, name2) ::= <<
-org.eclipse.collections.impl.map.mutable.primitive.MutableMapFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveSetFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveSetFactory.stg
deleted file mode 100644
index e8412ef801..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveSetFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.set.primitive.MutableSetFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.set.mutable.primitive.MutableSetFactoryImpl
->>
diff --git a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveStackFactory.stg b/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveStackFactory.stg
deleted file mode 100644
index e7cc38564a..0000000000
--- a/eclipse-collections-code-generator/src/main/resources/services/serviceMutablePrimitiveStackFactory.stg
+++ /dev/null
@@ -1,11 +0,0 @@
-targetPath() ::= ""
-
-fileName(primitive) ::= "org.eclipse.collections.api.factory.stack.primitive.MutableStackFactory"
-
-class(primitive) ::= <<
-
->>
-
-body(type, name, wrapperName) ::= <<
-org.eclipse.collections.impl.stack.mutable.primitive.MutableStackFactoryImpl
->>
diff --git a/eclipse-collections/bnd.bnd b/eclipse-collections/bnd.bnd
index 0a2323af31..f6baf3d1e5 100644
--- a/eclipse-collections/bnd.bnd
+++ b/eclipse-collections/bnd.bnd
@@ -1,6 +1,6 @@
-package-version=${version;===;${Bundle-Version}}
+package-version=${versionmask;===;${Bundle-Version}}
-Automatic-Module-Name: org.eclipse.collections.impl
+-jpms-module-info: org.eclipse.collections.impl;version="${package-version}"
Bundle-SymbolicName: org.eclipse.collections.impl
Export-Package: \
diff --git a/eclipse-collections/pom.xml b/eclipse-collections/pom.xml
index 01d17c4c6d..118ded38f5 100644
--- a/eclipse-collections/pom.xml
+++ b/eclipse-collections/pom.xml
@@ -42,6 +42,12 @@
${project.version}
+
+ biz.aQute.bnd
+ biz.aQute.bnd.annotation
+ 6.4.1
+
+
@@ -53,14 +59,6 @@
eclipse-collections-code-generator-maven-plugin
${project.version}
-
- generate-resources
-
- generate-services
-
- generate-services
-
-
generate-sources
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/immutable/ImmutableBagFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/immutable/ImmutableBagFactoryImpl.java
index 73cf9f5ad4..4adfdf0f85 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/immutable/ImmutableBagFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/immutable/ImmutableBagFactoryImpl.java
@@ -15,6 +15,7 @@
import org.eclipse.collections.api.factory.bag.ImmutableBagFactory;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableBagFactory.class)
public class ImmutableBagFactoryImpl implements ImmutableBagFactory
{
public static final ImmutableBagFactory INSTANCE = new ImmutableBagFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MultiReaderMutableBagFactory.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MultiReaderMutableBagFactory.java
index 08f286941a..f17aea3f5b 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MultiReaderMutableBagFactory.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MultiReaderMutableBagFactory.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.bag.MultiReaderBag;
import org.eclipse.collections.api.factory.bag.MultiReaderBagFactory;
+@aQute.bnd.annotation.spi.ServiceProvider(MultiReaderBagFactory.class)
public class MultiReaderMutableBagFactory implements MultiReaderBagFactory
{
public static final MultiReaderBagFactory INSTANCE = new MultiReaderMutableBagFactory();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MutableBagFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MutableBagFactoryImpl.java
index 5c693d5d7d..3f81c7b629 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MutableBagFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/mutable/MutableBagFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.bag.MutableBag;
import org.eclipse.collections.api.factory.bag.MutableBagFactory;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableBagFactory.class)
public class MutableBagFactoryImpl implements MutableBagFactory
{
public static final MutableBagFactory INSTANCE = new MutableBagFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/immutable/ImmutableSortedBagFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/immutable/ImmutableSortedBagFactoryImpl.java
index 7d4ec316d2..ad2b679347 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/immutable/ImmutableSortedBagFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/immutable/ImmutableSortedBagFactoryImpl.java
@@ -19,6 +19,7 @@
import org.eclipse.collections.impl.bag.sorted.mutable.TreeBag;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableSortedBagFactory.class)
public class ImmutableSortedBagFactoryImpl implements ImmutableSortedBagFactory
{
public static final ImmutableSortedBagFactory INSTANCE = new ImmutableSortedBagFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/mutable/MutableSortedBagFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/mutable/MutableSortedBagFactoryImpl.java
index 8cd3513fc9..331dc73827 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/mutable/MutableSortedBagFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bag/sorted/mutable/MutableSortedBagFactoryImpl.java
@@ -15,6 +15,7 @@
import org.eclipse.collections.api.bag.sorted.MutableSortedBag;
import org.eclipse.collections.api.factory.bag.sorted.MutableSortedBagFactory;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableSortedBagFactory.class)
public class MutableSortedBagFactoryImpl implements MutableSortedBagFactory
{
public static final MutableSortedBagFactory INSTANCE = new MutableSortedBagFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/immutable/ImmutableBiMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/immutable/ImmutableBiMapFactoryImpl.java
index 2a7e7633b0..174b92e6bf 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/immutable/ImmutableBiMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/immutable/ImmutableBiMapFactoryImpl.java
@@ -19,6 +19,7 @@
import org.eclipse.collections.api.map.ImmutableMap;
import org.eclipse.collections.impl.utility.MapIterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableBiMapFactory.class)
public class ImmutableBiMapFactoryImpl implements ImmutableBiMapFactory
{
public static final ImmutableBiMapFactory INSTANCE = new ImmutableBiMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/mutable/MutableBiMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/mutable/MutableBiMapFactoryImpl.java
index 11bee207fd..57eb051307 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/mutable/MutableBiMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/bimap/mutable/MutableBiMapFactoryImpl.java
@@ -13,6 +13,7 @@
import org.eclipse.collections.api.bimap.MutableBiMap;
import org.eclipse.collections.api.factory.bimap.MutableBiMapFactory;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableBiMapFactory.class)
public class MutableBiMapFactoryImpl implements MutableBiMapFactory
{
public static final MutableBiMapFactory INSTANCE = new MutableBiMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/fixed/FixedSizeListFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/fixed/FixedSizeListFactoryImpl.java
index cd44af5d5e..24e2b4fb1a 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/fixed/FixedSizeListFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/fixed/FixedSizeListFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.list.FixedSizeList;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(FixedSizeListFactory.class)
public class FixedSizeListFactoryImpl implements FixedSizeListFactory
{
public static final FixedSizeListFactory INSTANCE = new FixedSizeListFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/immutable/ImmutableListFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/immutable/ImmutableListFactoryImpl.java
index 976dff9d08..c1c6cb239d 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/immutable/ImmutableListFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/immutable/ImmutableListFactoryImpl.java
@@ -20,6 +20,7 @@
import org.eclipse.collections.api.list.ImmutableList;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableListFactory.class)
public class ImmutableListFactoryImpl implements ImmutableListFactory
{
public static final ImmutableListFactory INSTANCE = new ImmutableListFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MultiReaderMutableListFactory.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MultiReaderMutableListFactory.java
index 3c2bf6f2e2..eacb9594b1 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MultiReaderMutableListFactory.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MultiReaderMutableListFactory.java
@@ -17,6 +17,7 @@
import org.eclipse.collections.api.factory.list.MultiReaderListFactory;
import org.eclipse.collections.api.list.MultiReaderList;
+@aQute.bnd.annotation.spi.ServiceProvider(MultiReaderListFactory.class)
public class MultiReaderMutableListFactory implements MultiReaderListFactory
{
public static final MultiReaderListFactory INSTANCE = new MultiReaderMutableListFactory();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MutableListFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MutableListFactoryImpl.java
index 7734093a5f..878e0b7b37 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MutableListFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/list/mutable/MutableListFactoryImpl.java
@@ -17,6 +17,7 @@
import org.eclipse.collections.api.factory.list.MutableListFactory;
import org.eclipse.collections.api.list.MutableList;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableListFactory.class)
public class MutableListFactoryImpl implements MutableListFactory
{
public static final MutableListFactory INSTANCE = new MutableListFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/fixed/FixedSizeMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/fixed/FixedSizeMapFactoryImpl.java
index f60112ba1f..3258ecc67e 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/fixed/FixedSizeMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/fixed/FixedSizeMapFactoryImpl.java
@@ -15,6 +15,7 @@
import org.eclipse.collections.api.factory.map.FixedSizeMapFactory;
import org.eclipse.collections.api.map.FixedSizeMap;
+@aQute.bnd.annotation.spi.ServiceProvider(FixedSizeMapFactory.class)
public class FixedSizeMapFactoryImpl implements FixedSizeMapFactory
{
public static final FixedSizeMapFactory INSTANCE = new FixedSizeMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/immutable/ImmutableMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/immutable/ImmutableMapFactoryImpl.java
index 91b283e6c0..79fb0efadd 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/immutable/ImmutableMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/immutable/ImmutableMapFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.factory.map.ImmutableMapFactory;
import org.eclipse.collections.api.map.ImmutableMap;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableMapFactory.class)
public class ImmutableMapFactoryImpl implements ImmutableMapFactory
{
public static final ImmutableMapFactory INSTANCE = new ImmutableMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/mutable/MutableMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/mutable/MutableMapFactoryImpl.java
index fa5efba518..86da7a5760 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/mutable/MutableMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/mutable/MutableMapFactoryImpl.java
@@ -17,6 +17,7 @@
import org.eclipse.collections.api.map.MapIterable;
import org.eclipse.collections.api.map.MutableMap;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableMapFactory.class)
public class MutableMapFactoryImpl implements MutableMapFactory
{
public static final MutableMapFactory INSTANCE = new MutableMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/immutable/ImmutableSortedMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/immutable/ImmutableSortedMapFactoryImpl.java
index bb39995f6d..b9a66e23b6 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/immutable/ImmutableSortedMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/immutable/ImmutableSortedMapFactoryImpl.java
@@ -17,6 +17,7 @@
import org.eclipse.collections.api.map.sorted.ImmutableSortedMap;
import org.eclipse.collections.impl.map.sorted.mutable.TreeSortedMap;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableSortedMapFactory.class)
public class ImmutableSortedMapFactoryImpl implements ImmutableSortedMapFactory
{
public static final ImmutableSortedMapFactory INSTANCE = new ImmutableSortedMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/mutable/MutableSortedMapFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/mutable/MutableSortedMapFactoryImpl.java
index a0892a87ec..66a625361d 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/mutable/MutableSortedMapFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/map/sorted/mutable/MutableSortedMapFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory;
import org.eclipse.collections.api.map.sorted.MutableSortedMap;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableSortedMapFactory.class)
public class MutableSortedMapFactoryImpl implements MutableSortedMapFactory
{
public static final MutableSortedMapFactory INSTANCE = new MutableSortedMapFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/fixed/FixedSizeSetFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/fixed/FixedSizeSetFactoryImpl.java
index a115fd6c2b..fe33a7fc19 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/fixed/FixedSizeSetFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/fixed/FixedSizeSetFactoryImpl.java
@@ -19,6 +19,7 @@
import org.eclipse.collections.impl.collector.Collectors2;
import org.eclipse.collections.impl.set.mutable.UnifiedSet;
+@aQute.bnd.annotation.spi.ServiceProvider(FixedSizeSetFactory.class)
public class FixedSizeSetFactoryImpl implements FixedSizeSetFactory
{
public static final FixedSizeSetFactory INSTANCE = new FixedSizeSetFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/immutable/ImmutableSetFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/immutable/ImmutableSetFactoryImpl.java
index 7cca2e3a19..aaf0495112 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/immutable/ImmutableSetFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/immutable/ImmutableSetFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.set.ImmutableSet;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableSetFactory.class)
public class ImmutableSetFactoryImpl implements ImmutableSetFactory
{
public static final ImmutableSetFactory INSTANCE = new ImmutableSetFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MultiReaderMutableSetFactory.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MultiReaderMutableSetFactory.java
index 79b9111ca3..c0e9d5a57a 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MultiReaderMutableSetFactory.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MultiReaderMutableSetFactory.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.factory.set.MultiReaderSetFactory;
import org.eclipse.collections.api.set.MultiReaderSet;
+@aQute.bnd.annotation.spi.ServiceProvider(MultiReaderSetFactory.class)
public class MultiReaderMutableSetFactory implements MultiReaderSetFactory
{
public static final MultiReaderSetFactory INSTANCE = new MultiReaderMutableSetFactory();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MutableSetFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MutableSetFactoryImpl.java
index 63c7753f7b..591ce410cd 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MutableSetFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/mutable/MutableSetFactoryImpl.java
@@ -16,6 +16,7 @@
import org.eclipse.collections.api.factory.set.MutableSetFactory;
import org.eclipse.collections.api.set.MutableSet;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableSetFactory.class)
public class MutableSetFactoryImpl implements MutableSetFactory
{
public static final MutableSetFactory INSTANCE = new MutableSetFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/immutable/ImmutableSortedSetFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/immutable/ImmutableSortedSetFactoryImpl.java
index 38715896d9..61650ab1f1 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/immutable/ImmutableSortedSetFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/immutable/ImmutableSortedSetFactoryImpl.java
@@ -17,6 +17,7 @@
import org.eclipse.collections.api.set.sorted.ImmutableSortedSet;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableSortedSetFactory.class)
public class ImmutableSortedSetFactoryImpl implements ImmutableSortedSetFactory
{
public static final ImmutableSortedSetFactory INSTANCE = new ImmutableSortedSetFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/mutable/MutableSortedSetFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/mutable/MutableSortedSetFactoryImpl.java
index 9b70913472..b0cfc8be1f 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/mutable/MutableSortedSetFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/set/sorted/mutable/MutableSortedSetFactoryImpl.java
@@ -15,6 +15,7 @@
import org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory;
import org.eclipse.collections.api.set.sorted.MutableSortedSet;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableSortedSetFactory.class)
public class MutableSortedSetFactoryImpl implements MutableSortedSetFactory
{
public static final MutableSortedSetFactory INSTANCE = new MutableSortedSetFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/immutable/ImmutableStackFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/immutable/ImmutableStackFactoryImpl.java
index ec683e2371..d80038344e 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/immutable/ImmutableStackFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/immutable/ImmutableStackFactoryImpl.java
@@ -14,6 +14,7 @@
import org.eclipse.collections.api.stack.ImmutableStack;
import org.eclipse.collections.impl.utility.Iterate;
+@aQute.bnd.annotation.spi.ServiceProvider(ImmutableStackFactory.class)
public class ImmutableStackFactoryImpl implements ImmutableStackFactory
{
public static final ImmutableStackFactory INSTANCE = new ImmutableStackFactoryImpl();
diff --git a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/MutableStackFactoryImpl.java b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/MutableStackFactoryImpl.java
index 070a8279d7..5e4385c398 100644
--- a/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/MutableStackFactoryImpl.java
+++ b/eclipse-collections/src/main/java/org/eclipse/collections/impl/stack/mutable/MutableStackFactoryImpl.java
@@ -15,6 +15,7 @@
import org.eclipse.collections.api.factory.stack.MutableStackFactory;
import org.eclipse.collections.api.stack.MutableStack;
+@aQute.bnd.annotation.spi.ServiceProvider(MutableStackFactory.class)
public class MutableStackFactoryImpl implements MutableStackFactory
{
public static final MutableStackFactory INSTANCE = new MutableStackFactoryImpl();
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.ImmutableBagFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.ImmutableBagFactory
deleted file mode 100644
index 52dd9b4ea4..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.ImmutableBagFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bag.immutable.ImmutableBagFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MultiReaderBagFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MultiReaderBagFactory
deleted file mode 100644
index 042f7b3d8b..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MultiReaderBagFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bag.mutable.MultiReaderMutableBagFactory
\ No newline at end of file
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MutableBagFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MutableBagFactory
deleted file mode 100644
index ae5a38d6b5..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.MutableBagFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bag.mutable.MutableBagFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.ImmutableSortedBagFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.ImmutableSortedBagFactory
deleted file mode 100644
index 66af4a6ea6..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.ImmutableSortedBagFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bag.sorted.immutable.ImmutableSortedBagFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.MutableSortedBagFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.MutableSortedBagFactory
deleted file mode 100644
index 7f03c90b24..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bag.sorted.MutableSortedBagFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bag.sorted.mutable.MutableSortedBagFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.ImmutableBiMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.ImmutableBiMapFactory
deleted file mode 100644
index 0cd3401a07..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.ImmutableBiMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bimap.immutable.ImmutableBiMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.MutableBiMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.MutableBiMapFactory
deleted file mode 100644
index 137db2bc8c..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.bimap.MutableBiMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.bimap.mutable.MutableBiMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.FixedSizeListFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.FixedSizeListFactory
deleted file mode 100644
index ef796e8824..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.FixedSizeListFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.list.fixed.FixedSizeListFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.ImmutableListFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.ImmutableListFactory
deleted file mode 100644
index 71e068f534..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.ImmutableListFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.list.immutable.ImmutableListFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MultiReaderListFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MultiReaderListFactory
deleted file mode 100644
index 9ce223f31f..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MultiReaderListFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.list.mutable.MultiReaderMutableListFactory
\ No newline at end of file
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MutableListFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MutableListFactory
deleted file mode 100644
index 8da041d597..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.list.MutableListFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.list.mutable.MutableListFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.FixedSizeMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.FixedSizeMapFactory
deleted file mode 100644
index 2b39fa8c6a..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.FixedSizeMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.map.fixed.FixedSizeMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.ImmutableMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.ImmutableMapFactory
deleted file mode 100644
index 7768a2bbb7..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.ImmutableMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.map.immutable.ImmutableMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.MutableMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.MutableMapFactory
deleted file mode 100644
index d40160c93b..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.MutableMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.map.mutable.MutableMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.ImmutableSortedMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.ImmutableSortedMapFactory
deleted file mode 100644
index 6cebb1842b..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.ImmutableSortedMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.map.sorted.immutable.ImmutableSortedMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory
deleted file mode 100644
index 579e8b1107..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.map.sorted.MutableSortedMapFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.map.sorted.mutable.MutableSortedMapFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.FixedSizeSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.FixedSizeSetFactory
deleted file mode 100644
index 04e6427f16..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.FixedSizeSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.fixed.FixedSizeSetFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.ImmutableSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.ImmutableSetFactory
deleted file mode 100644
index 24118bc270..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.ImmutableSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.immutable.ImmutableSetFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MultiReaderSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MultiReaderSetFactory
deleted file mode 100644
index 7564861fbc..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MultiReaderSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.mutable.MultiReaderMutableSetFactory
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MutableSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MutableSetFactory
deleted file mode 100644
index 8035d2c658..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.MutableSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.mutable.MutableSetFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.ImmutableSortedSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.ImmutableSortedSetFactory
deleted file mode 100644
index 9fe16fa3e8..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.ImmutableSortedSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.sorted.immutable.ImmutableSortedSetFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory
deleted file mode 100644
index a7f6c5ea8b..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.set.sorted.MutableSortedSetFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.set.sorted.mutable.MutableSortedSetFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.ImmutableStackFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.ImmutableStackFactory
deleted file mode 100644
index 0e2c6dbb1b..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.ImmutableStackFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.stack.immutable.ImmutableStackFactoryImpl
diff --git a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.MutableStackFactory b/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.MutableStackFactory
deleted file mode 100644
index 4536966e45..0000000000
--- a/eclipse-collections/src/main/resources/META-INF/services/org.eclipse.collections.api.factory.stack.MutableStackFactory
+++ /dev/null
@@ -1 +0,0 @@
-org.eclipse.collections.impl.stack.mutable.MutableStackFactoryImpl
diff --git a/p2-feature/org.eclipse.collections.feature/feature.xml b/p2-feature/org.eclipse.collections.feature/feature.xml
index cc1eb797a2..1fed0116c4 100644
--- a/p2-feature/org.eclipse.collections.feature/feature.xml
+++ b/p2-feature/org.eclipse.collections.feature/feature.xml
@@ -8,10 +8,11 @@
license-feature-version="1.0.1">
+ id="org.eclipse.collections.api"
+ version="0.0.0"/>
+
+
diff --git a/p2-feature/org.eclipse.collections.feature/pom.xml b/p2-feature/org.eclipse.collections.feature/pom.xml
index 60e1e9015c..980ef180d7 100644
--- a/p2-feature/org.eclipse.collections.feature/pom.xml
+++ b/p2-feature/org.eclipse.collections.feature/pom.xml
@@ -19,18 +19,18 @@
org.eclipse.collections.feature
eclipse-feature
+ Eclipse Collections p2 Feature
- org.eclipse.tycho.extras
- tycho-source-feature-plugin
- ${tycho-extras-version}
+ org.eclipse.tycho
+ tycho-source-plugin
- source-feature
+ feature-source
package
- source-feature
+ feature-source
@@ -38,7 +38,6 @@
org.eclipse.tycho
tycho-p2-plugin
- ${tycho-version}
attached-p2-metadata
@@ -49,20 +48,30 @@
-
- org.eclipse.cbi.maven.plugins
- eclipse-jarsigner-plugin
- 1.3.2
-
-
- sign
- verify
-
- sign
-
-
-
-
+
+
+
+ release-artifacts
+
+
+
+ org.eclipse.cbi.maven.plugins
+ eclipse-jarsigner-plugin
+ 1.3.4
+
+
+ sign
+ verify
+
+ sign
+
+
+
+
+
+
+
+
diff --git a/p2-feature/org.eclipse.collections.repository/pom.xml b/p2-feature/org.eclipse.collections.repository/pom.xml
index 3b22fb69af..65c1ae8c5f 100644
--- a/p2-feature/org.eclipse.collections.repository/pom.xml
+++ b/p2-feature/org.eclipse.collections.repository/pom.xml
@@ -19,6 +19,7 @@
p2-repository
eclipse-repository
+ Eclipse Collections p2 Repository
@@ -26,7 +27,6 @@
tycho-p2-repository-plugin
Eclipse Collections
- true
diff --git a/p2-feature/org.eclipse.collections.target/org.eclipse.collections.target.target b/p2-feature/org.eclipse.collections.target/org.eclipse.collections.target.target
new file mode 100644
index 0000000000..0715830e50
--- /dev/null
+++ b/p2-feature/org.eclipse.collections.target/org.eclipse.collections.target.target
@@ -0,0 +1,46 @@
+
+
+
+
+
+
+
+ org.eclipse.collections
+ eclipse-collections-api
+ 12.0.0-SNAPSHOT
+ jar
+
+
+
+
+
+
+ org.eclipse.collections
+ eclipse-collections
+ 12.0.0-SNAPSHOT
+ jar
+
+
+
+
+
+
+ org.apache.aries.spifly
+ org.apache.aries.spifly.dynamic.framework.extension
+ 1.3.7
+ jar
+
+
+
+
+
+
+ org.eclipse.platform
+ org.eclipse.osgi
+ 3.19.0
+ jar
+
+
+
+
+
\ No newline at end of file
diff --git a/p2-feature/org.eclipse.collections.target/pom.xml b/p2-feature/org.eclipse.collections.target/pom.xml
new file mode 100644
index 0000000000..e4a92de435
--- /dev/null
+++ b/p2-feature/org.eclipse.collections.target/pom.xml
@@ -0,0 +1,18 @@
+
+
+
+ org.eclipse.collections
+ p2-feature
+ 12.0.0-SNAPSHOT
+
+
+ 4.0.0
+ target
+
+ eclipse-target-definition
+
+ Eclipse Collections p2 Repository Target Definition
+
\ No newline at end of file
diff --git a/p2-feature/pom.xml b/p2-feature/pom.xml
index dfe9e08790..eb141830e2 100644
--- a/p2-feature/pom.xml
+++ b/p2-feature/pom.xml
@@ -16,9 +16,10 @@
p2-feature
pom
- Eclipse Collections p2 Repository with Feature Build
+ Eclipse Collections p2 Parent
+ org.eclipse.collections.target
org.eclipse.collections.feature
org.eclipse.collections.repository
@@ -28,46 +29,54 @@
UTF-8
- 1.7.0
- 1.7.0
+
+ 4.0.7
+ 4.0.7
'v'yyyyMMdd-HHmm
warning
-
- file:///${project.basedir}/../../p2-repository/org.eclipse.collections/target/repository
+
+
+
+ org.eclipse.collections
+ eclipse-collections
+ ${project.version}
+
+
+ org.eclipse.collections
+ eclipse-collections-api
+ ${project.version}
+
+
-
+
-
+
org.eclipse.tycho
tycho-maven-plugin
-
-
- org.eclipse.tycho
- tycho-core
- ${tycho-version}
-
-
- org.eclipse.tycho
- tycho-p2-facade
- ${tycho-version}
-
-
true
-
+
org.eclipse.tycho
target-platform-configuration
+
+
+ org.eclipse.collections
+ target
+ ${project.version}
+
+
+ honor
*
@@ -75,7 +84,6 @@
*
- true
@@ -90,7 +98,8 @@
${tycho-version}
- org.eclipse.tycho.extras
+
+ org.eclipse.tycho
tycho-buildtimestamp-jgit
${tycho-version}
@@ -154,11 +163,6 @@
tycho-source-plugin
${tycho-version}
-
- org.eclipse.tycho.extras
- tycho-source-feature-plugin
- ${tycho-extras-version}
-
org.eclipse.tycho.extras
tycho-custom-bundle-plugin
@@ -179,11 +183,6 @@
https://download.eclipse.org/cbi/updates/license/
p2
-
- collections.plugin.repository
- ${collections.repository.url}
- p2
-
diff --git a/p2-repository/pom.xml b/p2-repository/pom.xml
index f57ac267df..0b622a1d31 100644
--- a/p2-repository/pom.xml
+++ b/p2-repository/pom.xml
@@ -49,7 +49,7 @@
UTF-8
- 1.7.0
+ 4.0.7
1.3.0
@@ -113,18 +113,6 @@
org.eclipse.tycho
tycho-maven-plugin
true
-
-
- org.eclipse.tycho
- tycho-core
- ${tycho-version}
-
-
- org.eclipse.tycho
- tycho-p2-facade
- ${tycho-version}
-
-
@@ -232,11 +220,6 @@
tycho-source-plugin
${tycho-version}
-
- org.eclipse.tycho.extras
- tycho-source-feature-plugin
- ${tycho-version}
-
org.eclipse.tycho.extras
tycho-custom-bundle-plugin
diff --git a/pom.xml b/pom.xml
index ce2454e7fe..2f5768c2cb 100644
--- a/pom.xml
+++ b/pom.xml
@@ -25,8 +25,8 @@
Eclipse Collections Parent Project
Eclipse Collections is a collections framework for Java. It has JDK-compatible List, Set and Map
- implementations with a rich API and set of utility classes that work with any JDK compatible Collections,
- Arrays, Maps or Strings. The iteration protocol was inspired by the Smalltalk collection framework.
+implementations with a rich API and set of utility classes that work with any JDK compatible Collections,
+Arrays, Maps or Strings. The iteration protocol was inspired by the Smalltalk collection framework.
https://github.com/eclipse/eclipse-collections
@@ -111,7 +111,6 @@
junit-trait-runner
unit-tests-java8
test-coverage
- p2-repository
@@ -222,7 +221,6 @@
eclipse-collections-code-generator-maven-plugin
p2-feature
p2-repository
- p2-repository
java.util.logging
@@ -564,7 +562,7 @@
biz.aQute.bnd
bnd-maven-plugin
- 5.1.1
+ 6.4.0
@@ -828,7 +826,7 @@
org.eclipse.cbi.maven.plugins
eclipse-jarsigner-plugin
- 1.3.2
+ 1.3.4
jarsign