You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by ss...@apache.org on 2021/12/03 09:14:32 UTC

[sling-org-apache-sling-models-jacksonexporter] branch feature/SLING-10964-rankedservices-replacement created (now 73c2ef9)

This is an automated email from the ASF dual-hosted git repository.

sseifert pushed a change to branch feature/SLING-10964-rankedservices-replacement
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-models-jacksonexporter.git.


      at 73c2ef9  SLING-10964 Sling Models Exporter: Replace RankedServices with DS Field Injection

This branch includes the following new commits:

     new 73c2ef9  SLING-10964 Sling Models Exporter: Replace RankedServices with DS Field Injection

The 1 revisions listed above as "new" are entirely new to this
repository and will be described in separate emails.  The revisions
listed as "add" were already present in the repository and have only
been added to this reference.


[sling-org-apache-sling-models-jacksonexporter] 01/01: SLING-10964 Sling Models Exporter: Replace RankedServices with DS Field Injection

Posted by ss...@apache.org.
This is an automated email from the ASF dual-hosted git repository.

sseifert pushed a commit to branch feature/SLING-10964-rankedservices-replacement
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-models-jacksonexporter.git

commit 73c2ef9542e1e2990442f17a42198e68bd2a2548
Author: Stefan Seifert <st...@users.noreply.github.com>
AuthorDate: Fri Dec 3 10:14:03 2021 +0100

    SLING-10964 Sling Models Exporter: Replace RankedServices with DS Field Injection
---
 pom.xml                                                |  6 ------
 .../models/jacksonexporter/impl/JacksonExporter.java   | 18 ++++--------------
 2 files changed, 4 insertions(+), 20 deletions(-)

diff --git a/pom.xml b/pom.xml
index e1776ae..0a06d3e 100644
--- a/pom.xml
+++ b/pom.xml
@@ -99,12 +99,6 @@
             <scope>provided</scope>
         </dependency>
         <dependency>
-            <groupId>org.apache.sling</groupId>
-            <artifactId>org.apache.sling.commons.osgi</artifactId>
-            <version>2.4.0</version>
-            <scope>provided</scope>
-        </dependency>
-        <dependency>
             <groupId>javax.servlet</groupId>
             <artifactId>javax.servlet-api</artifactId>
             <scope>provided</scope>
diff --git a/src/main/java/org/apache/sling/models/jacksonexporter/impl/JacksonExporter.java b/src/main/java/org/apache/sling/models/jacksonexporter/impl/JacksonExporter.java
index 07a9e1c..87a9c59 100644
--- a/src/main/java/org/apache/sling/models/jacksonexporter/impl/JacksonExporter.java
+++ b/src/main/java/org/apache/sling/models/jacksonexporter/impl/JacksonExporter.java
@@ -20,10 +20,9 @@ package org.apache.sling.models.jacksonexporter.impl;
 
 import java.io.IOException;
 import java.io.StringWriter;
+import java.util.Collection;
 import java.util.Map;
 
-import org.apache.sling.commons.osgi.Order;
-import org.apache.sling.commons.osgi.RankedServices;
 import org.apache.sling.models.export.spi.ModelExporter;
 import org.apache.sling.models.factory.ExportException;
 import org.apache.sling.models.jacksonexporter.ModuleProvider;
@@ -56,7 +55,9 @@ public class JacksonExporter implements ModelExporter {
 
     private static final int MAPPER_FEATURE_PREFIX_LENGTH = MAPPER_FEATURE_PREFIX.length();
 
-    private final RankedServices<ModuleProvider> moduleProviders = new RankedServices<>(Order.ASCENDING);
+    @Reference(service = ModuleProvider.class,
+            cardinality = ReferenceCardinality.MULTIPLE, policy = ReferencePolicy.DYNAMIC)
+    private volatile Collection<ModuleProvider> moduleProviders;
 
     @Override
     public boolean isSupported(@NotNull Class<?> clazz) {
@@ -121,17 +122,6 @@ public class JacksonExporter implements ModelExporter {
         }
     }
 
-    @Reference(name = "moduleProvider", service = ModuleProvider.class,
-            cardinality = ReferenceCardinality.MULTIPLE, policy = ReferencePolicy.DYNAMIC,
-            bind = "bindModuleProvider", unbind = "unbindModuleProvider")
-    protected void bindModuleProvider(final ModuleProvider moduleProvider, final Map<String, Object> props) {
-        moduleProviders.bind(moduleProvider, props);
-    }
-
-    protected void unbindModuleProvider(final ModuleProvider moduleProvider, final Map<String, Object> props) {
-        moduleProviders.unbind(moduleProvider, props);
-    }
-
     @Override
     public @NotNull String getName() {
         return "jackson";