You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by mp...@apache.org on 2015/09/21 10:27:06 UTC
svn commit: r1704234 - in /sling/trunk/contrib/extensions/distribution:
api/src/main/java/org/apache/sling/distribution/
api/src/main/java/org/apache/sling/distribution/event/ it/
Author: mpetria
Date: Mon Sep 21 08:26:58 2015
New Revision: 1704234
URL: http://svn.apache.org/viewvc?rev=1704234&view=rev
Log:
SLING-5046: allow distribution requests with deep paths subset
Modified:
sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/SimpleDistributionRequest.java
sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/DistributionEventProperties.java
sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/package-info.java
sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/package-info.java
sling/trunk/contrib/extensions/distribution/it/pom.xml
Modified: sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/SimpleDistributionRequest.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/SimpleDistributionRequest.java?rev=1704234&r1=1704233&r2=1704234&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/SimpleDistributionRequest.java (original)
+++ sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/SimpleDistributionRequest.java Mon Sep 21 08:26:58 2015
@@ -20,6 +20,8 @@ package org.apache.sling.distribution;
import javax.annotation.Nonnull;
import java.util.Arrays;
+import java.util.HashSet;
+import java.util.Set;
/**
* A {@link SimpleDistributionRequest} is a {@link DistributionRequest} where all paths are either "deep" or "shallow".
@@ -28,8 +30,7 @@ public final class SimpleDistributionReq
private final DistributionRequestType requestType;
-
- private final boolean deep;
+ private final Set<String> deepPaths;
private final String[] paths;
/**
@@ -39,9 +40,7 @@ public final class SimpleDistributionReq
* @param paths the array of paths to be distributed
*/
public SimpleDistributionRequest(@Nonnull DistributionRequestType requestType, boolean isDeep, @Nonnull String... paths) {
- this.requestType = requestType;
- this.deep = isDeep;
- this.paths = paths;
+ this(requestType, paths, isDeep? new HashSet<String>(Arrays.asList(paths)) : new HashSet<String>());
}
/**
@@ -53,6 +52,18 @@ public final class SimpleDistributionReq
this(requestType, false, paths);
}
+
+ /**
+ * Creates a distribution request with "shallow" paths.
+ * @param requestType the request type
+ * @param paths the array of paths to be distributed
+ */
+ public SimpleDistributionRequest(@Nonnull DistributionRequestType requestType, @Nonnull String[] paths, @Nonnull Set<String> deepPaths) {
+ this.requestType = requestType;
+ this.paths = paths;
+ this.deepPaths = deepPaths;
+ }
+
/**
* get the {@link DistributionRequestType} associated with this request
*
@@ -78,7 +89,7 @@ public final class SimpleDistributionReq
* @return <code>true</code> if the path is deep
*/
public boolean isDeep(@Nonnull String path) {
- return deep;
+ return deepPaths.contains(path);
}
@Override
@@ -86,7 +97,7 @@ public final class SimpleDistributionReq
return "SimpleDistributionRequest{" +
"requestType=" + requestType +
", paths=" + Arrays.toString(paths) +
- ", deep=" + deep +
+ ", deep=" + Arrays.toString(deepPaths.toArray(new String[0])) +
'}';
}
Modified: sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/DistributionEventProperties.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/DistributionEventProperties.java?rev=1704234&r1=1704233&r2=1704234&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/DistributionEventProperties.java (original)
+++ sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/DistributionEventProperties.java Mon Sep 21 08:26:58 2015
@@ -19,9 +19,12 @@
package org.apache.sling.distribution.event;
+import aQute.bnd.annotation.ProviderType;
+
/**
* an interface containing of the possible properties of events related to distribution
*/
+@ProviderType
public interface DistributionEventProperties {
/**
Modified: sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/package-info.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/package-info.java?rev=1704234&r1=1704233&r2=1704234&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/package-info.java (original)
+++ sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/event/package-info.java Mon Sep 21 08:26:58 2015
@@ -17,7 +17,7 @@
* under the License.
*/
-@Version("0.1.0")
+@Version("0.1.1")
package org.apache.sling.distribution.event;
import aQute.bnd.annotation.Version;
Modified: sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/package-info.java
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/package-info.java?rev=1704234&r1=1704233&r2=1704234&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/package-info.java (original)
+++ sling/trunk/contrib/extensions/distribution/api/src/main/java/org/apache/sling/distribution/package-info.java Mon Sep 21 08:26:58 2015
@@ -17,7 +17,7 @@
* under the License.
*/
-@Version("0.1.0")
+@Version("0.2.0")
package org.apache.sling.distribution;
import aQute.bnd.annotation.Version;
Modified: sling/trunk/contrib/extensions/distribution/it/pom.xml
URL: http://svn.apache.org/viewvc/sling/trunk/contrib/extensions/distribution/it/pom.xml?rev=1704234&r1=1704233&r2=1704234&view=diff
==============================================================================
--- sling/trunk/contrib/extensions/distribution/it/pom.xml (original)
+++ sling/trunk/contrib/extensions/distribution/it/pom.xml Mon Sep 21 08:26:58 2015
@@ -403,7 +403,7 @@
<dependency>
<groupId>org.apache.sling</groupId>
<artifactId>org.apache.sling.distribution.api</artifactId>
- <version>0.1.0</version>
+ <version>0.1.1-SNAPSHOT</version>
</dependency>
<dependency>
<groupId>org.apache.sling</groupId>