You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cs...@apache.org on 2020/05/24 18:12:35 UTC
[sling-org-apache-sling-distribution-journal] 01/01: SLING-9464 -
Use marker service to activate components only on distribution publisher
side
This is an automated email from the ASF dual-hosted git repository.
cschneider pushed a commit to branch SLING-9464-simple-marker
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-journal.git
commit 263f1680b7577e33a55fdbf28a623fbb5d6b8fe2
Author: Christian Schneider <cs...@adobe.com>
AuthorDate: Sun May 24 20:11:00 2020 +0200
SLING-9464 - Use marker service to activate components only on
distribution publisher side
---
.../journal/impl/publisher/DiscoveryService.java | 3 +++
.../impl/publisher/DistributionPublisher.java | 2 +-
.../publisher/DistributionPublisherMarker.java | 23 ++++++++++++++++++++++
.../impl/queue/impl/PubQueueCacheService.java | 4 ++++
4 files changed, 31 insertions(+), 1 deletion(-)
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DiscoveryService.java b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DiscoveryService.java
index 2e0b665..6337350 100644
--- a/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DiscoveryService.java
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DiscoveryService.java
@@ -72,6 +72,9 @@ public class DiscoveryService implements Runnable {
private JournalAvailable journalAvailable;
@Reference
+ private DistributionPublisherMarker publisherMarker;
+
+ @Reference
private MessagingProvider messagingProvider;
@Reference
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisher.java b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisher.java
index 55787dc..e7c761f 100644
--- a/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisher.java
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisher.java
@@ -90,7 +90,7 @@ import org.apache.sling.distribution.journal.JournalAvailable;
)
@Designate(ocd = PublisherConfiguration.class, factory = true)
@ParametersAreNonnullByDefault
-public class DistributionPublisher implements DistributionAgent {
+public class DistributionPublisher implements DistributionAgent, DistributionPublisherMarker {
private final Map<DistributionRequestType, Consumer<PackageMessage>> REQ_TYPES = new HashMap<>();
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisherMarker.java b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisherMarker.java
new file mode 100644
index 0000000..ae74231
--- /dev/null
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/publisher/DistributionPublisherMarker.java
@@ -0,0 +1,23 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements. See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership. The ASF licenses this file
+ * to you under the Apache License, Version 2.0 (the
+ * "License"); you may not use this file except in compliance
+ * with the License. You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing,
+ * software distributed under the License is distributed on an
+ * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the
+ * specific language governing permissions and limitations
+ * under the License.
+ */
+package org.apache.sling.distribution.journal.impl.publisher;
+
+public interface DistributionPublisherMarker {
+
+}
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/queue/impl/PubQueueCacheService.java b/src/main/java/org/apache/sling/distribution/journal/impl/queue/impl/PubQueueCacheService.java
index 6609b8b..2a87d81 100644
--- a/src/main/java/org/apache/sling/distribution/journal/impl/queue/impl/PubQueueCacheService.java
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/queue/impl/PubQueueCacheService.java
@@ -23,6 +23,7 @@ import javax.annotation.ParametersAreNonnullByDefault;
import org.apache.sling.distribution.journal.impl.shared.DistributionMetricsService;
import org.apache.sling.distribution.journal.impl.shared.Topics;
+import org.apache.sling.distribution.journal.impl.publisher.DistributionPublisherMarker;
import org.apache.sling.distribution.journal.impl.queue.OffsetQueue;
import org.apache.sling.distribution.journal.MessagingProvider;
import org.apache.sling.distribution.journal.JournalAvailable;
@@ -61,6 +62,9 @@ public class PubQueueCacheService implements Runnable {
*/
@Reference
private JournalAvailable journalAvailable;
+
+ @Reference
+ private DistributionPublisherMarker publisherMarker;
@Reference
private MessagingProvider messagingProvider;