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 2021/06/15 12:33:12 UTC

[sling-org-apache-sling-distribution-journal] branch master updated: SLING-10488 - Also use path for LocalStore node name

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

cschneider pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/sling-org-apache-sling-distribution-journal.git


The following commit(s) were added to refs/heads/master by this push:
     new 84ae3a9  SLING-10488 - Also use path for LocalStore node name
84ae3a9 is described below

commit 84ae3a999c780a837205cccc92e09c9c6be898a1
Author: Christian Schneider <cs...@adobe.com>
AuthorDate: Tue Jun 15 14:32:53 2021 +0200

    SLING-10488 - Also use path for LocalStore node name
---
 pom.xml                                                          | 2 +-
 .../journal/impl/subscriber/DistributionSubscriber.java          | 9 ++++++++-
 .../sling/distribution/journal/impl/subscriber/EscapeTest.java   | 2 +-
 .../distribution/journal/impl/subscriber/SubscriberTest.java     | 2 +-
 4 files changed, 11 insertions(+), 4 deletions(-)

diff --git a/pom.xml b/pom.xml
index 587b7fb..0635655 100644
--- a/pom.xml
+++ b/pom.xml
@@ -34,7 +34,7 @@
     <!-- P R O J E C T                                                           -->
     <!-- ======================================================================= -->
     <artifactId>org.apache.sling.distribution.journal</artifactId>
-    <version>0.1.17-SNAPSHOT</version>
+    <version>0.2.0-SNAPSHOT</version>
 
     <name>Apache Sling Journal based Content Distribution - Core bundle</name>
     <description>Implementation of Apache Sling Content Distribution components on top of an append-only persisted log</description>
diff --git a/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java b/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
index 53ee052..d37d1c2 100644
--- a/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
+++ b/src/main/java/org/apache/sling/distribution/journal/impl/subscriber/DistributionSubscriber.java
@@ -198,7 +198,14 @@ public class DistributionSubscriber {
     }
     
     public static String escapeTopicName(URI messagingUri, String topicName) {
-        return messagingUri.getHost() + "_" + Text.escapeIllegalJcrChars(topicName);
+        return String.format("%s%s_%s", 
+                messagingUri.getHost(),
+                escape(messagingUri.getPath()),
+                escape(topicName));
+    }
+    
+    private static String escape(String st) {
+        return Text.escapeIllegalJcrChars(st.replace("/", "_"));
     }
 
     private Set<String> getNotEmpty(String[] agentNames) {
diff --git a/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/EscapeTest.java b/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/EscapeTest.java
index 8731036..f38bf7f 100644
--- a/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/EscapeTest.java
+++ b/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/EscapeTest.java
@@ -33,6 +33,6 @@ public class EscapeTest {
         URI uri = new URI("http://myserver.apache.org:1234/somepath");
         String topicName = "some_topic_name1";
         String escaped = DistributionSubscriber.escapeTopicName(uri, topicName);
-        assertThat(escaped, equalTo("myserver.apache.org_some_topic_name1"));
+        assertThat(escaped, equalTo("myserver.apache.org_somepath_some_topic_name1"));
     }
 }
diff --git a/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/SubscriberTest.java b/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/SubscriberTest.java
index 9273da3..d4f4f4f 100644
--- a/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/SubscriberTest.java
+++ b/src/test/java/org/apache/sling/distribution/journal/impl/subscriber/SubscriberTest.java
@@ -117,7 +117,7 @@ public class SubscriberTest {
     private static final String PUB1_SLING_ID = "pub1sling";
     private static final String PUB1_AGENT_NAME = "pub1agent";
     
-    private static final String STORE_PACKAGE_NODE_NAME = "myserver.apache.org_aemdistribution_package";
+    private static final String STORE_PACKAGE_NODE_NAME = "myserver.apache.org_somepath_aemdistribution_package";
 
     private static final PackageMessage BASIC_ADD_PACKAGE = PackageMessage.builder()
             .pkgId("myid")