You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@sling.apache.org by cz...@apache.org on 2015/10/30 08:49:25 UTC
svn commit: r1711419 - in
/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl:
observation/ providers/ providers/stateful/
Author: cziegeler
Date: Fri Oct 30 07:49:25 2015
New Revision: 1711419
URL: http://svn.apache.org/viewvc?rev=1711419&view=rev
Log:
SLING-5220 : Add Path and PathSet
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObserverConfiguration.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ProviderContextImpl.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/stateful/AuthenticatedResourceProvider.java
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java?rev=1711419&r1=1711418&r2=1711419&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObservationReporter.java Fri Oct 30 07:49:25 2015
@@ -59,7 +59,7 @@ public class BasicObservationReporter im
fillListeners(info, info.getResourceChangeTypes());
}
}
- final ObserverConfiguration cfg = new BasicObserverConfiguration(paths);
+ final ObserverConfiguration cfg = new BasicObserverConfiguration(PathSet.fromStringCollection(paths));
this.configs = Collections.singletonList(cfg);
}
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObserverConfiguration.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObserverConfiguration.java?rev=1711419&r1=1711418&r2=1711419&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObserverConfiguration.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/observation/BasicObserverConfiguration.java Fri Oct 30 07:49:25 2015
@@ -30,28 +30,28 @@ public class BasicObserverConfiguration
private final boolean includeExternal;
- private final Set<String> paths;
+ private final PathSet paths;
- private final Set<String> excludedPaths;
+ private final PathSet excludedPaths;
private final Set<ChangeType> changeTypes;
public BasicObserverConfiguration(final String path, final Set<ChangeType> types,
final boolean isExternal, final PathSet excludePaths) {
this.includeExternal = isExternal;
- this.paths = Collections.singleton(path);
+ this.paths = PathSet.fromStrings(path);
this.changeTypes = Collections.unmodifiableSet(types);
- this.excludedPaths = excludePaths.getSubset(path).toStringSet();
+ this.excludedPaths = excludePaths.getSubset(path);
}
- public BasicObserverConfiguration(final Set<String> paths) {
+ public BasicObserverConfiguration(final PathSet set) {
this.includeExternal = false;
- this.paths = Collections.unmodifiableSet(paths);
+ this.paths = set;
final Set<ChangeType> types = new HashSet<ChangeType>();
types.add(ChangeType.PROVIDER_ADDED);
types.add(ChangeType.PROVIDER_REMOVED);
this.changeTypes = Collections.unmodifiableSet(types);
- this.excludedPaths = Collections.emptySet();
+ this.excludedPaths = PathSet.EMPTY_SET;
}
@Override
@@ -60,12 +60,12 @@ public class BasicObserverConfiguration
}
@Override
- public Set<String> getPaths() {
+ public PathSet getPaths() {
return paths;
}
@Override
- public Set<String> getExcludedPaths() {
+ public PathSet getExcludedPaths() {
return excludedPaths;
}
@@ -76,15 +76,8 @@ public class BasicObserverConfiguration
@Override
public boolean matches(final String path) {
- for(final String observerPath : this.getPaths()) {
- if ( observerPath.equals(path) || path.startsWith(observerPath.concat("/"))) {
- for(final String excludePath : this.excludedPaths) {
- if ( excludePath.equals(path) || path.startsWith(excludePath.concat("/")) ) {
- return false;
- }
- }
- return true;
- }
+ if ( this.paths.matches(path) != null && this.excludedPaths.matches(path) == null ) {
+ return true;
}
return false;
}
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ProviderContextImpl.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ProviderContextImpl.java?rev=1711419&r1=1711418&r2=1711419&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ProviderContextImpl.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ProviderContextImpl.java Fri Oct 30 07:49:25 2015
@@ -18,8 +18,7 @@
*/
package org.apache.sling.resourceresolver.impl.providers;
-import java.util.Set;
-
+import org.apache.sling.api.resource.PathSet;
import org.apache.sling.spi.resource.provider.ObservationReporter;
import org.apache.sling.spi.resource.provider.ProviderContext;
@@ -30,9 +29,9 @@ public class ProviderContextImpl impleme
private volatile ObservationReporter observationReporter;
- private volatile Set<String> excludedPaths;
+ private volatile PathSet excludedPaths;
- public void update(final ObservationReporter observationReporter, final Set<String> excludedPaths) {
+ public void update(final ObservationReporter observationReporter, PathSet excludedPaths) {
this.observationReporter = observationReporter;
this.excludedPaths = excludedPaths;
}
@@ -43,7 +42,7 @@ public class ProviderContextImpl impleme
}
@Override
- public Set<String> getExcludedPaths() {
+ public PathSet getExcludedPaths() {
return excludedPaths;
}
}
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java?rev=1711419&r1=1711418&r2=1711419&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/ResourceProviderTracker.java Fri Oct 30 07:49:25 2015
@@ -387,9 +387,10 @@ public class ResourceProviderTracker {
excludedPaths.add(otherPath);
}
}
+ final PathSet excludedPathSet = PathSet.fromStringCollection(excludedPaths);
handler.getProviderContext().update(
- reporterGenerator.create(handlerPath, PathSet.fromStringCollection(excludedPaths)),
- excludedPaths);
+ reporterGenerator.create(handlerPath, excludedPathSet),
+ excludedPathSet);
}
private void postEvents(final List<ProviderEvent> events) {
Modified: sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/stateful/AuthenticatedResourceProvider.java
URL: http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/stateful/AuthenticatedResourceProvider.java?rev=1711419&r1=1711418&r2=1711419&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/stateful/AuthenticatedResourceProvider.java (original)
+++ sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/providers/stateful/AuthenticatedResourceProvider.java Fri Oct 30 07:49:25 2015
@@ -70,10 +70,6 @@ public class AuthenticatedResourceProvid
private ResolverContext<Object> cachedContext;
- private QueryProvider<Object> cachedQueryProvider;
-
- private JCRQueryProvider<Object> cachedJcrQueryProvider;
-
private final CombinedResourceProvider combinedProvider;
@SuppressWarnings("unchecked")
@@ -271,17 +267,11 @@ public class AuthenticatedResourceProvid
}
private QueryProvider<Object> getQueryProvider() {
- if (cachedQueryProvider == null) {
- cachedQueryProvider = rp.getQueryProvider();
- }
- return cachedQueryProvider;
+ return rp.getQueryProvider();
}
private JCRQueryProvider<Object> getJcrQueryProvider() {
- if (cachedJcrQueryProvider == null) {
- cachedJcrQueryProvider = rp.getJCRQueryProvider();
- }
- return cachedJcrQueryProvider;
+ return rp.getJCRQueryProvider();
}
@Override