Author: cziegeler
Date: Mon Mar 27 09:58:53 2017
New Revision: 1788873
URL: http://svn.apache.org/viewvc?rev=1788873&view=rev
Log:
SLING-6718 : Use commons collections 4
Modified:
sling/trunk/bundles/resourceresolver/pom.xml
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/CommonResourceResolverFactoryImpl.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverFactoryActivator.java
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControl.java
sling/trunk/bundles/resourceresolver/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverMangleNamespacesTest.java
Modified: sling/trunk/bundles/resourceresolver/pom.xml
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/pom.xml?rev=1788873&r1=1788872&r2=1788873&view=diff
==============================================================================
--- sling/trunk/bundles/resourceresolver/pom.xml (original)
+++ sling/trunk/bundles/resourceresolver/pom.xml Mon Mar 27 09:58:53 2017
@@ -127,9 +127,9 @@
<scope>provided</scope>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
- <version>3.2.1</version>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-collections4</artifactId>
+ <version>4.1</version>
<scope>provided</scope>
</dependency>
<dependency>
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/CommonResourceResolverFactoryImpl.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/CommonResourceResolverFactoryImpl.java?rev=1788873&r1=1788872&r2=1788873&view=diff
==============================================================================
---
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/CommonResourceResolverFactoryImpl.java
(original)
+++
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/CommonResourceResolverFactoryImpl.java
Mon Mar 27 09:58:53 2017
@@ -33,7 +33,7 @@ import java.util.concurrent.atomic.Atomi
import javax.annotation.Nonnull;
-import org.apache.commons.collections.BidiMap;
+import org.apache.commons.collections4.BidiMap;
import org.apache.sling.api.resource.LoginException;
import org.apache.sling.api.resource.ResourceResolver;
import org.apache.sling.api.resource.ResourceResolverFactory;
@@ -73,16 +73,16 @@ public class CommonResourceResolverFacto
/**
* Thread local holding the resource resolver stack
*/
- private ThreadLocal<Stack<WeakReference<ResourceResolver>>>
resolverStackHolder = new ThreadLocal<Stack<WeakReference<ResourceResolver>>>();
+ private ThreadLocal<Stack<WeakReference<ResourceResolver>>>
resolverStackHolder = new ThreadLocal<>();
/** Flag indicating whether this factory is still active. */
private final AtomicBoolean isActive = new AtomicBoolean(true);
/** The reference queue to handle disposing of resource resolver
instances. */
- private final ReferenceQueue<ResourceResolver> resolverReferenceQueue =
new ReferenceQueue<ResourceResolver>();
+ private final ReferenceQueue<ResourceResolver> resolverReferenceQueue =
new ReferenceQueue<>();
/** Map of the ResourceResolverControl's hash code to the references to
open resource resolver instances. */
- private final Map<Integer, ResolverReference> refs = new
ConcurrentHashMap<Integer, ResolverReference>();
+ private final Map<Integer, ResolverReference> refs = new
ConcurrentHashMap<>();
/** Background thread handling disposing of resource resolver instances. */
private final Thread refQueueThread;
@@ -139,7 +139,7 @@ public class CommonResourceResolverFacto
checkIsLive();
// create a copy of the passed authentication info as we modify the map
- final Map<String, Object> authenticationInfo = new HashMap<String,
Object>();
+ final Map<String, Object> authenticationInfo = new HashMap<>();
authenticationInfo.put(ResourceProvider.AUTH_ADMIN, Boolean.TRUE);
if ( passedAuthenticationInfo != null ) {
authenticationInfo.putAll(passedAuthenticationInfo);
@@ -161,7 +161,7 @@ public class CommonResourceResolverFacto
checkIsLive();
// create a copy of the passed authentication info as we modify the map
- final Map<String, Object> authenticationInfo = new HashMap<String,
Object>();
+ final Map<String, Object> authenticationInfo = new HashMap<>();
if ( passedAuthenticationInfo != null ) {
authenticationInfo.putAll(passedAuthenticationInfo);
// make sure there is no leaking of service bundle and info props
@@ -172,10 +172,10 @@ public class CommonResourceResolverFacto
final ResourceResolver result =
getResourceResolverInternal(authenticationInfo, false);
Stack<WeakReference<ResourceResolver>> resolverStack =
resolverStackHolder.get();
if ( resolverStack == null ) {
- resolverStack = new Stack<WeakReference<ResourceResolver>>();
+ resolverStack = new Stack<>();
resolverStackHolder.set(resolverStack);
}
- resolverStack.push(new WeakReference<ResourceResolver>(result));
+ resolverStack.push(new WeakReference<>(result));
return result;
}
@@ -331,7 +331,7 @@ public class CommonResourceResolverFacto
resolverStackHolder = null;
// copy and clear map before closing the remaining references
- final Collection<ResolverReference> references = new
ArrayList<ResolverReference>(refs.values());
+ final Collection<ResolverReference> references = new
ArrayList<>(refs.values());
refs.clear();
for(final ResolverReference ref : references) {
ref.close();
@@ -437,7 +437,7 @@ public class CommonResourceResolverFacto
if ( includes == null && excludes == null ) {
return null;
}
- final List<VanityPathConfig> configs = new
ArrayList<VanityPathConfig>();
+ final List<VanityPathConfig> configs = new ArrayList<>();
if ( includes != null ) {
for(final String val : includes) {
configs.add(new VanityPathConfig(val, false));
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverFactoryActivator.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverFactoryActivator.java?rev=1788873&r1=1788872&r2=1788873&view=diff
==============================================================================
---
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverFactoryActivator.java
(original)
+++
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/ResourceResolverFactoryActivator.java
Mon Mar 27 09:58:53 2017
@@ -30,13 +30,14 @@ import java.util.List;
import java.util.Map;
import java.util.Set;
-import org.apache.commons.collections.BidiMap;
-import org.apache.commons.collections.bidimap.TreeBidiMap;
+import org.apache.commons.collections4.BidiMap;
+import org.apache.commons.collections4.bidimap.TreeBidiMap;
import org.apache.sling.api.resource.ResourceDecorator;
import org.apache.sling.api.resource.ResourceResolverFactory;
import org.apache.sling.api.resource.path.Path;
import org.apache.sling.api.resource.runtime.RuntimeService;
import org.apache.sling.resourceresolver.impl.helper.ResourceDecoratorTracker;
+import org.apache.sling.resourceresolver.impl.mapping.MapEntries;
import org.apache.sling.resourceresolver.impl.mapping.Mapping;
import
org.apache.sling.resourceresolver.impl.observation.ResourceChangeListenerWhiteboard;
import
org.apache.sling.resourceresolver.impl.providers.ResourceProviderTracker;
@@ -249,7 +250,7 @@ public class ResourceResolverFactoryActi
}
virtualURLMap = virtuals;
- final List<Mapping> maps = new ArrayList<Mapping>();
+ final List<Mapping> maps = new ArrayList<>();
for (int i = 0; config.resource_resolver_mapping() != null && i <
config.resource_resolver_mapping().length; i++) {
maps.add(new Mapping(config.resource_resolver_mapping()[i]));
}
@@ -296,7 +297,7 @@ public class ResourceResolverFactoryActi
this.vanityPathWhiteList = null;
String[] vanityPathPrefixes =
config.resource_resolver_vanitypath_whitelist();
if ( vanityPathPrefixes != null ) {
- final List<String> prefixList = new ArrayList<String>();
+ final List<String> prefixList = new ArrayList<>();
for(final String value : vanityPathPrefixes) {
if ( value.trim().length() > 0 ) {
if ( value.trim().endsWith("/") ) {
@@ -314,7 +315,7 @@ public class ResourceResolverFactoryActi
this.vanityPathBlackList = null;
vanityPathPrefixes = config.resource_resolver_vanitypath_blacklist();
if ( vanityPathPrefixes != null ) {
- final List<String> prefixList = new ArrayList<String>();
+ final List<String> prefixList = new ArrayList<>();
for(final String value : vanityPathPrefixes) {
if ( value.trim().length() > 0 ) {
if ( value.trim().endsWith("/") ) {
@@ -354,11 +355,11 @@ public class ResourceResolverFactoryActi
if ( hasRequiredProvider ) {
logger.warn("ResourceResolverFactory is using deprecated
required providers configuration (resource.resolver.required.providers" +
") with value '" +
ResourceResolverFactoryConfig.LEGACY_REQUIRED_PROVIDER_PID + ". Please remove
this configuration property. " +
- ResourceResolverFactoryConfig.REQUIRED_PROVIDER_NAME +
" is already contained in the property
resource.resolver.required.providernames.");
+ ResourceResolverFactoryConfig.REQUIRED_PROVIDER_NAME +
" is already contained in the property
resource.resolver.required.providernames.");
} else {
logger.warn("ResourceResolverFactory is using deprecated
required providers configuration (resource.resolver.required.providers" +
") with value '" +
ResourceResolverFactoryConfig.LEGACY_REQUIRED_PROVIDER_PID + ". Please remove
this configuration property and add " +
- ResourceResolverFactoryConfig.REQUIRED_PROVIDER_NAME +
" to the property resource.resolver.required.providernames.");
+ ResourceResolverFactoryConfig.REQUIRED_PROVIDER_NAME +
" to the property resource.resolver.required.providernames.");
}
}
@@ -366,9 +367,9 @@ public class ResourceResolverFactoryActi
if ( this.resourceProviderTracker == null ) {
this.resourceProviderTracker = new ResourceProviderTracker();
this.changeListenerWhiteboard = new
ResourceChangeListenerWhiteboard();
- this.preconds.activate(this.bundleContext,
- requiredResourceProvidersLegacy,
- requiredResourceProviderNames,
+ this.preconds.activate(this.bundleContext,
+ requiredResourceProvidersLegacy,
+ requiredResourceProviderNames,
resourceProviderTracker);
this.changeListenerWhiteboard.activate(this.bundleContext,
this.resourceProviderTracker, searchPath);
@@ -395,9 +396,9 @@ public class ResourceResolverFactoryActi
}
});
} else {
- this.preconds.activate(this.bundleContext,
- requiredResourceProvidersLegacy,
- requiredResourceProviderNames,
+ this.preconds.activate(this.bundleContext,
+ requiredResourceProvidersLegacy,
+ requiredResourceProviderNames,
resourceProviderTracker);
this.checkFactoryPreconditions(null, null);
}
@@ -476,7 +477,7 @@ public class ResourceResolverFactoryActi
if ( localContext != null ) {
// activate and register factory
- final Dictionary<String, Object> serviceProps = new
Hashtable<String, Object>();
+ final Dictionary<String, Object> serviceProps = new Hashtable<>();
serviceProps.put(Constants.SERVICE_VENDOR, "The Apache Software
Foundation");
serviceProps.put(Constants.SERVICE_DESCRIPTION, "Apache Sling
Resource Resolver Factory");
@@ -520,11 +521,11 @@ public class ResourceResolverFactoryActi
public ServiceUserMapper getServiceUserMapper() {
return this.serviceUserMapper;
}
-
+
public BundleContext getBundleContext() {
return this.bundleContext;
}
-
+
/**
* Check the preconditions and if it changed, either register factory or
unregister
*/
@@ -592,7 +593,7 @@ public class ResourceResolverFactoryActi
}
return set.isEmpty() ? null : set;
}
-
+
public static ResourceResolverFactoryConfig DEFAULT_CONFIG;
static {
Modified:
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControl.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControl.java?rev=1788873&r1=1788872&r2=1788873&view=diff
==============================================================================
---
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControl.java
(original)
+++
sling/trunk/bundles/resourceresolver/src/main/java/org/apache/sling/resourceresolver/impl/helper/ResourceResolverControl.java
Mon Mar 27 09:58:53 2017
@@ -36,7 +36,7 @@ import java.util.concurrent.atomic.Atomi
import javax.annotation.CheckForNull;
import javax.annotation.Nonnull;
-import org.apache.commons.collections.iterators.IteratorChain;
+import org.apache.commons.collections4.iterators.IteratorChain;
import org.apache.commons.lang3.ArrayUtils;
import org.apache.sling.api.resource.LoginException;
import org.apache.sling.api.resource.PersistenceException;
Modified:
sling/trunk/bundles/resourceresolver/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverMangleNamespacesTest.java
URL:
http://svn.apache.org/viewvc/sling/trunk/bundles/resourceresolver/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverMangleNamespacesTest.java?rev=1788873&r1=1788872&r2=1788873&view=diff
==============================================================================
---
sling/trunk/bundles/resourceresolver/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverMangleNamespacesTest.java
(original)
+++
sling/trunk/bundles/resourceresolver/src/test/java/org/apache/sling/resourceresolver/impl/ResourceResolverMangleNamespacesTest.java
Mon Mar 27 09:58:53 2017
@@ -28,7 +28,7 @@ import javax.annotation.Nonnull;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import org.apache.commons.collections.IteratorUtils;
+import org.apache.commons.collections4.IteratorUtils;
import org.apache.sling.api.resource.LoginException;
import org.apache.sling.api.resource.Resource;
import
org.apache.sling.resourceresolver.impl.providers.ResourceProviderStorage;
@@ -97,7 +97,7 @@ public class ResourceResolverMangleNames
final CommonResourceResolverFactoryImpl fac = new
CommonResourceResolverFactoryImpl(act);
rr = new ResourceResolverImpl(fac, false, null, new
ResourceProviderStorageProvider() {
-
+
@Override
public ResourceProviderStorage getResourceProviderStorage() {
return new
ResourceProviderStorage(Arrays.asList(MockedResourceResolverImplTest.createRPHandler(rp,
"rp1", 0, "/")));