You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@jackrabbit.apache.org by re...@apache.org on 2022/12/06 17:14:27 UTC
svn commit: r1905799 - in /jackrabbit/branches/2.20: ./ jackrabbit-core/ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/ jackrabbit-core/src/main/java/org/apache/jackrabbit/core/...
Author: reschke
Date: Tue Dec 6 17:14:26 2022
New Revision: 1905799
URL: http://svn.apache.org/viewvc?rev=1905799&view=rev
Log:
JCR-4847: jackrabbit-core: Upgrade to commons-collections4 (merged r1904225 into 2.20)
Modified:
jackrabbit/branches/2.20/ (props changed)
jackrabbit/branches/2.20/jackrabbit-core/pom.xml
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/CachingHierarchyManager.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ItemManager.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/SessionImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/TransientRepository.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/GrowingLRUMap.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi/BindableRepositoryFactory.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/journal/AbstractRecord.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/LockManagerImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeRegistry.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/DocNumberCache.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexingConfigurationImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/NodeTraversingQueryHits.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/VolatileIndex.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/AbstractCompiledPermissions.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/PrivilegeRegistry.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntriesCache.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/AbstractPrincipalProvider.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/DefaultPrincipalProvider.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChangeLog.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChildNodeEntries.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ItemStateReferenceCache.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/MLRUItemStateCache.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/XAItemStateManager.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/util/EmptyLinkedMap.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerImpl.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/VersionItemStateProvider.java
jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/virtual/AbstractVISProvider.java
jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestRepository.java
jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/integration/random/operation/OperationSequence.java
Propchange: jackrabbit/branches/2.20/
------------------------------------------------------------------------------
Merged /jackrabbit/trunk:r1904225
Modified: jackrabbit/branches/2.20/jackrabbit-core/pom.xml
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/pom.xml?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/pom.xml (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/pom.xml Tue Dec 6 17:14:26 2022
@@ -218,8 +218,8 @@ org.apache.jackrabbit.test.api.query.qom
<artifactId>concurrent</artifactId>
</dependency>
<dependency>
- <groupId>commons-collections</groupId>
- <artifactId>commons-collections</artifactId>
+ <groupId>org.apache.commons</groupId>
+ <artifactId>commons-collections4</artifactId>
</dependency>
<dependency>
<groupId>commons-io</groupId>
@@ -302,6 +302,12 @@ org.apache.jackrabbit.test.api.query.qom
<scope>test</scope>
</dependency>
<dependency>
+ <groupId>commons-beanutils</groupId>
+ <artifactId>commons-beanutils</artifactId>
+ <version>1.9.4</version>
+ <scope>test</scope>
+ </dependency>
+ <dependency>
<groupId>org.apache.jackrabbit</groupId>
<artifactId>jackrabbit-jcr-benchmark</artifactId>
<scope>test</scope>
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/CachingHierarchyManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/CachingHierarchyManager.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/CachingHierarchyManager.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/CachingHierarchyManager.java Tue Dec 6 17:14:26 2022
@@ -26,7 +26,8 @@ import javax.jcr.ItemNotFoundException;
import javax.jcr.PathNotFoundException;
import javax.jcr.RepositoryException;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.state.ChildNodeEntry;
@@ -75,7 +76,7 @@ public class CachingHierarchyManager ext
/**
* Mapping of item ids to <code>LRUEntry</code> in the path map
*/
- private final ReferenceMap idCache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.HARD);
+ private final ReferenceMap<NodeId, LRUEntry> idCache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.HARD);
/**
* Cache monitor object
@@ -369,7 +370,7 @@ public class CachingHierarchyManager ext
PathFactoryImpl.getInstance().getRootPath(), true));
}
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry != null) {
return Arrays.asList(entry.getElements());
} else {
@@ -437,7 +438,7 @@ public class CachingHierarchyManager ext
*/
public void nodesReplaced(NodeState state) {
synchronized (cacheMonitor) {
- LRUEntry entry = (LRUEntry) idCache.get(state.getNodeId());
+ LRUEntry entry = idCache.get(state.getNodeId());
if (entry == null) {
return;
}
@@ -447,7 +448,7 @@ public class CachingHierarchyManager ext
boolean orderChanged = false;
for (PathMap.Element<LRUEntry> child : parent.getChildren()) {
- LRUEntry childEntry = (LRUEntry) child.get();
+ LRUEntry childEntry = child.get();
if (childEntry == null) {
// Child has no associated UUID information: we're
// therefore unable to determine if this child's
@@ -525,7 +526,7 @@ public class CachingHierarchyManager ext
*/
private PathMap.Element<LRUEntry> get(ItemId id) {
synchronized (cacheMonitor) {
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry != null) {
entry.touch();
return entry.getElements()[0];
@@ -592,11 +593,11 @@ public class CachingHierarchyManager ext
}
PathMap.Element<LRUEntry> element = pathCache.put(path);
if (element.get() != null) {
- if (!id.equals(((LRUEntry) element.get()).getId())) {
+ if (!id.equals((element.get()).getId())) {
log.debug("overwriting PathMap.Element");
}
}
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry == null) {
entry = new LRUEntry(id, element);
idCache.put(id, entry);
@@ -622,7 +623,7 @@ public class CachingHierarchyManager ext
*/
boolean isCached(NodeId id, Path path) {
synchronized (cacheMonitor) {
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry == null) {
return false;
}
@@ -665,7 +666,7 @@ public class CachingHierarchyManager ext
*/
private void evictAll(ItemId id, boolean shift) {
synchronized (cacheMonitor) {
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry != null) {
PathMap.Element<LRUEntry>[] elements = entry.getElements();
for (int i = 0; i < elements.length; i++) {
@@ -687,7 +688,7 @@ public class CachingHierarchyManager ext
// assert: synchronized (cacheMonitor)
element.traverse(new PathMap.ElementVisitor<LRUEntry>() {
public void elementVisited(PathMap.Element<LRUEntry> element) {
- LRUEntry entry = (LRUEntry) element.get();
+ LRUEntry entry = element.get();
if (entry.removeElement(element) == 0) {
idCache.remove(entry.getId());
entry.remove();
@@ -714,7 +715,7 @@ public class CachingHierarchyManager ext
// assert: synchronized (cacheMonitor)
PathMap.Element<LRUEntry> element = null;
- LRUEntry entry = (LRUEntry) idCache.get(id);
+ LRUEntry entry = idCache.get(id);
if (entry != null) {
// child node already cached: this can have the following
// reasons:
@@ -768,7 +769,7 @@ public class CachingHierarchyManager ext
// with SNS, this might evict a child that is NOT the one
// having <code>id</code>, check first whether item has
// the id passed as argument
- LRUEntry entry = (LRUEntry) element.get();
+ LRUEntry entry = element.get();
if (entry != null && !entry.getId().equals(id)) {
return;
}
@@ -828,17 +829,17 @@ public class CachingHierarchyManager ext
int elementsInCache = 0;
- Iterator iter = idCache.values().iterator();
+ Iterator<LRUEntry> iter = idCache.values().iterator();
while (iter.hasNext()) {
- LRUEntry entry = (LRUEntry) iter.next();
+ LRUEntry entry = iter.next();
elementsInCache += entry.getElements().length;
}
class PathMapElementCounter implements PathMap.ElementVisitor<LRUEntry> {
int count;
public void elementVisited(PathMap.Element<LRUEntry> element) {
- LRUEntry mappedEntry = (LRUEntry) element.get();
- LRUEntry cachedEntry = (LRUEntry) idCache.get(mappedEntry.getId());
+ LRUEntry mappedEntry = element.get();
+ LRUEntry cachedEntry = idCache.get(mappedEntry.getId());
if (cachedEntry == null) {
String msg = "Path element (" + element +
" ) cached in path map, associated id (" +
@@ -921,6 +922,7 @@ public class CachingHierarchyManager ext
* @param id node id
* @param element the path map element for this entry
*/
+ @SuppressWarnings("unchecked")
public LRUEntry(NodeId id, PathMap.Element<LRUEntry> element) {
this.id = id;
this.elements = new PathMap.Element[] { element };
@@ -1003,6 +1005,7 @@ public class CachingHierarchyManager ext
/**
* Add a mapping to some element.
*/
+ @SuppressWarnings("unchecked")
public void addElement(PathMap.Element<LRUEntry> element) {
PathMap.Element<LRUEntry>[] tmp =
new PathMap.Element[elements.length + 1];
@@ -1016,6 +1019,7 @@ public class CachingHierarchyManager ext
*
* @return number of mappings left
*/
+ @SuppressWarnings("unchecked")
public int removeElement(PathMap.Element<LRUEntry> element) {
boolean found = false;
for (int i = 0; i < elements.length; i++) {
@@ -1046,7 +1050,7 @@ public class CachingHierarchyManager ext
private final String id;
- private final ReferenceMap cache;
+ private final ReferenceMap<NodeId, LRUEntry> cache;
private long timeStamp = 0;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ItemManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ItemManager.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ItemManager.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/ItemManager.java Tue Dec 6 17:14:26 2022
@@ -30,7 +30,8 @@ import javax.jcr.PropertyIterator;
import javax.jcr.RepositoryException;
import javax.jcr.nodetype.ConstraintViolationException;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.id.PropertyId;
@@ -114,7 +115,6 @@ public class ItemManager implements Item
*
* @param sessionContext component context of the associated session
*/
- @SuppressWarnings("unchecked")
protected ItemManager(SessionContext sessionContext) {
this.sism = sessionContext.getItemStateManager();
this.hierMgr = sessionContext.getHierarchyManager();
@@ -123,7 +123,7 @@ public class ItemManager implements Item
this.rootNodeDef = sessionContext.getNodeTypeManager().getRootNodeDefinition();
// setup item cache with weak references to items
- itemCache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ itemCache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
// setup shareable nodes cache
shareableNodesCache = new ShareableNodesCache();
@@ -1189,13 +1189,13 @@ public class ItemManager implements Item
* This cache is based on a reference map, that maps an item id to a map,
* which again maps a (hard-ref) parent id to a (weak-ref) shareable node.
*/
- private final ReferenceMap cache;
+ private final ReferenceMap<NodeId, ReferenceMap<NodeId, AbstractNodeData>> cache;
/**
* Create a new instance of this class.
*/
public ShareableNodesCache() {
- cache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.HARD);
+ cache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.HARD);
}
/**
@@ -1214,7 +1214,7 @@ public class ItemManager implements Item
* @return node or <code>null</code>
*/
public AbstractNodeData retrieveFirst(NodeId id) {
- ReferenceMap map = (ReferenceMap) cache.get(id);
+ ReferenceMap<NodeId, AbstractNodeData> map = cache.get(id);
if (map != null) {
Iterator<AbstractNodeData> iter = map.values().iterator();
try {
@@ -1239,9 +1239,9 @@ public class ItemManager implements Item
* @return node or <code>null</code>
*/
public AbstractNodeData retrieve(NodeId id, NodeId parentId) {
- ReferenceMap map = (ReferenceMap) cache.get(id);
+ ReferenceMap<NodeId, AbstractNodeData> map = cache.get(id);
if (map != null) {
- return (AbstractNodeData) map.get(parentId);
+ return map.get(parentId);
}
return null;
}
@@ -1253,9 +1253,9 @@ public class ItemManager implements Item
*/
public void cache(AbstractNodeData data) {
NodeId id = data.getNodeState().getNodeId();
- ReferenceMap map = (ReferenceMap) cache.get(id);
+ ReferenceMap<NodeId, AbstractNodeData> map = cache.get(id);
if (map == null) {
- map = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ map = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
cache.put(id, map);
}
Object old = map.put(data.getPrimaryParentId(), data);
@@ -1270,7 +1270,7 @@ public class ItemManager implements Item
* @param data data to evict
*/
public void evict(AbstractNodeData data) {
- ReferenceMap map = (ReferenceMap) cache.get(data.getId());
+ ReferenceMap<NodeId, AbstractNodeData> map = cache.get(data.getId());
if (map != null) {
map.remove(data.getPrimaryParentId());
}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/RepositoryImpl.java Tue Dec 6 17:14:26 2022
@@ -50,7 +50,8 @@ import javax.jcr.observation.Event;
import javax.jcr.observation.ObservationManager;
import javax.security.auth.Subject;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.commons.io.IOUtils;
import org.apache.jackrabbit.api.JackrabbitRepository;
import org.apache.jackrabbit.api.management.RepositoryManager;
@@ -210,7 +211,7 @@ public class RepositoryImpl extends Abst
* active sessions (weak references)
*/
private final Map<Session, Session> activeSessions =
- new ReferenceMap(ReferenceMap.WEAK, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.WEAK, ReferenceStrength.WEAK);
// flag indicating if repository has been shut down
private boolean disposed;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/SessionImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/SessionImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/SessionImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/SessionImpl.java Tue Dec 6 17:14:26 2022
@@ -61,8 +61,9 @@ import javax.jcr.security.AccessControlM
import javax.jcr.version.VersionException;
import javax.security.auth.Subject;
-import org.apache.commons.collections.IteratorUtils;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.IteratorUtils;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.api.JackrabbitSession;
import org.apache.jackrabbit.api.security.principal.PrincipalManager;
import org.apache.jackrabbit.api.security.user.Authorizable;
@@ -196,9 +197,8 @@ public class SessionImpl extends Abstrac
/**
* Listeners (weak references)
*/
- @SuppressWarnings("unchecked")
protected final Map<SessionListener, SessionListener> listeners =
- new ReferenceMap(ReferenceMap.WEAK, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.WEAK, ReferenceStrength.WEAK);
/**
* Principal Manager
@@ -956,6 +956,7 @@ public class SessionImpl extends Abstrac
/**
* Utility method that removes all registered event listeners.
*/
+ @SuppressWarnings("unchecked")
private void removeRegisteredEventListeners() {
try {
ObservationManager manager = getWorkspace().getObservationManager();
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/TransientRepository.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/TransientRepository.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/TransientRepository.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/TransientRepository.java Tue Dec 6 17:14:26 2022
@@ -29,7 +29,8 @@ import javax.jcr.RepositoryException;
import javax.jcr.Session;
import javax.jcr.Value;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.api.JackrabbitRepository;
import org.apache.jackrabbit.commons.AbstractRepository;
import org.apache.jackrabbit.core.config.ConfigurationException;
@@ -111,7 +112,7 @@ public class TransientRepository extends
* is opened.
*/
private final Map<Session, Session> sessions =
- new ReferenceMap(ReferenceMap.WEAK, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.WEAK, ReferenceStrength.WEAK);
/**
* The static repository descriptors. The default {@link RepositoryImpl}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/GrowingLRUMap.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/GrowingLRUMap.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/GrowingLRUMap.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/cache/GrowingLRUMap.java Tue Dec 6 17:14:26 2022
@@ -16,13 +16,14 @@
*/
package org.apache.jackrabbit.core.cache;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
+import org.apache.commons.collections4.map.AbstractLinkedMap;
/**
* <code>GrowingLRUMap</code> extends the LRUMap such that it can grow from
* the specified <code>initialSize</code> to the specified <code>maxSize</code>;
*/
-public class GrowingLRUMap extends LRUMap {
+public class GrowingLRUMap<K, V> extends LRUMap<K, V> {
private final int maxSize;
@@ -32,7 +33,7 @@ public class GrowingLRUMap extends LRUMa
}
@Override
- protected boolean removeLRU(LinkEntry entry) {
+ protected boolean removeLRU(AbstractLinkedMap.LinkEntry<K, V> entry) {
return size() > maxSize;
}
}
\ No newline at end of file
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi/BindableRepositoryFactory.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi/BindableRepositoryFactory.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi/BindableRepositoryFactory.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/jndi/BindableRepositoryFactory.java Tue Dec 6 17:14:26 2022
@@ -25,7 +25,7 @@ import javax.naming.Name;
import javax.naming.Reference;
import javax.naming.spi.ObjectFactory;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.ReferenceMap;
/**
* <code>BindableRepositoryFactory</code> is an object factory that when given
@@ -38,7 +38,7 @@ public class BindableRepositoryFactory i
* cache using <code>java.naming.Reference</code> objects as keys and
* storing soft references to <code>BindableRepository</code> instances
*/
- private static final Map cache = new ReferenceMap();
+ private static final Map<Object, Object> cache = new ReferenceMap<>();
/**
* {@inheritDoc}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/journal/AbstractRecord.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/journal/AbstractRecord.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/journal/AbstractRecord.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/journal/AbstractRecord.java Tue Dec 6 17:14:26 2022
@@ -25,8 +25,8 @@ import java.util.Map;
import javax.jcr.NamespaceException;
-import org.apache.commons.collections.BidiMap;
-import org.apache.commons.collections.bidimap.DualHashBidiMap;
+import org.apache.commons.collections4.BidiMap;
+import org.apache.commons.collections4.bidimap.DualHashBidiMap;
import org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader;
import org.apache.jackrabbit.commons.cnd.ParseException;
import org.apache.jackrabbit.core.id.NodeId;
@@ -64,7 +64,7 @@ public abstract class AbstractRecord imp
/**
* Maps NodeId to Integer index.
*/
- private final BidiMap nodeIdIndex = new DualHashBidiMap();
+ private final BidiMap<NodeId, Integer> nodeIdIndex = new DualHashBidiMap<>();
/**
* Namespace resolver.
@@ -254,7 +254,7 @@ public abstract class AbstractRecord imp
if (index == -1) {
return null;
} else {
- return (NodeId) nodeIdIndex.getKey(index);
+ return nodeIdIndex.getKey(index);
}
} else if (uuidType == UUID_LITERAL) {
byte[] b = new byte[NodeId.UUID_BYTE_LENGTH];
@@ -326,7 +326,7 @@ public abstract class AbstractRecord imp
* @return cache index of existing entry or <code>-1</code> to indicate the entry was added
*/
private int getOrCreateIndex(NodeId nodeId) {
- Integer index = (Integer) nodeIdIndex.get(nodeId);
+ Integer index = nodeIdIndex.get(nodeId);
if (index == null) {
nodeIdIndex.put(nodeId, nodeIdIndex.size());
return -1;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/LockManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/LockManagerImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/LockManagerImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/lock/LockManagerImpl.java Tue Dec 6 17:14:26 2022
@@ -37,7 +37,7 @@ import javax.jcr.lock.LockException;
import javax.jcr.observation.Event;
import javax.jcr.observation.EventIterator;
-import org.apache.commons.collections.map.LinkedMap;
+import org.apache.commons.collections4.map.LinkedMap;
import org.apache.commons.io.IOUtils;
import org.apache.jackrabbit.core.NodeImpl;
import org.apache.jackrabbit.core.SessionImpl;
@@ -1118,9 +1118,8 @@ public class LockManagerImpl
* add and remove operations on nodes with the same UUID into a move
* operation.
*/
- @SuppressWarnings("unchecked")
- private Iterator<HierarchyEvent> consolidateEvents(EventIterator events) {
- LinkedMap eventMap = new LinkedMap();
+ private Iterator<HierarchyEvent> consolidateEvents(EventIterator events) {
+ LinkedMap<NodeId, HierarchyEvent> eventMap = new LinkedMap<>();
while (events.hasNext()) {
EventImpl event = (EventImpl) events.nextEvent();
@@ -1138,7 +1137,7 @@ public class LockManagerImpl
continue;
}
- HierarchyEvent heExisting = (HierarchyEvent) eventMap.get(he.id);
+ HierarchyEvent heExisting = eventMap.get(he.id);
if (heExisting != null) {
heExisting.merge(he);
} else {
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeManagerImpl.java Tue Dec 6 17:14:26 2022
@@ -41,7 +41,8 @@ import javax.jcr.nodetype.NodeTypeDefini
import javax.jcr.nodetype.NodeTypeExistsException;
import javax.jcr.nodetype.NodeTypeIterator;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.api.JackrabbitNodeTypeManager;
import org.apache.jackrabbit.commons.NamespaceHelper;
import org.apache.jackrabbit.commons.cnd.CompactNodeTypeDefReader;
@@ -112,9 +113,9 @@ public class NodeTypeManagerImpl extends
// setup caches with soft references to node type
// & item definition instances
- ntCache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.SOFT);
- pdCache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.SOFT);
- ndCache = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.SOFT);
+ ntCache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.SOFT);
+ pdCache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.SOFT);
+ ndCache = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.SOFT);
NodeTypeRegistry registry = context.getNodeTypeRegistry();
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeRegistry.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeRegistry.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeRegistry.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/nodetype/NodeTypeRegistry.java Tue Dec 6 17:14:26 2022
@@ -41,7 +41,8 @@ import javax.jcr.nodetype.ConstraintViol
import javax.jcr.nodetype.NoSuchNodeTypeException;
import javax.jcr.version.OnParentVersionAction;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.commons.io.IOUtils;
import org.apache.jackrabbit.core.cluster.NodeTypeEventChannel;
import org.apache.jackrabbit.core.cluster.NodeTypeEventListener;
@@ -120,9 +121,8 @@ public class NodeTypeRegistry implements
/**
* Listeners (weak references)
*/
- @SuppressWarnings("unchecked")
private final Map<NodeTypeRegistryListener, NodeTypeRegistryListener> listeners =
- Collections.synchronizedMap(new ReferenceMap(ReferenceMap.WEAK, ReferenceMap.WEAK));
+ Collections.synchronizedMap(new ReferenceMap<>(ReferenceStrength.WEAK, ReferenceStrength.WEAK));
/**
* Node type event channel.
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/CachingIndexReader.java Tue Dec 6 17:14:26 2022
@@ -26,7 +26,7 @@ import java.util.HashMap;
import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.lucene.document.Document;
import org.apache.lucene.document.FieldSelector;
@@ -123,7 +123,6 @@ class CachingIndexReader extends FilterI
* when this index reader is constructed.
* @throws IOException if an error occurs while reading from the index.
*/
- @SuppressWarnings("unchecked")
CachingIndexReader(IndexReader delegatee,
DocNumberCache cache,
boolean initCache)
@@ -139,7 +138,7 @@ class CachingIndexReader extends FilterI
}
// limit cache to 1% of maxDoc(), but at least 10.
this.docNumber2id = Collections.synchronizedMap(
- new LRUMap(Math.max(10, delegatee.maxDoc() / 100)));
+ new LRUMap<>(Math.max(10, delegatee.maxDoc() / 100)));
this.termDocsCache = new TermDocsCache(delegatee, FieldNames.PROPERTIES);
}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/DocNumberCache.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/DocNumberCache.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/DocNumberCache.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/DocNumberCache.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.query.lucene;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -48,7 +48,8 @@ final class DocNumberCache {
/**
* LRU Maps where key=uuid value=reader;docNumber
*/
- private final LRUMap[] docNumbers = new LRUMap[CACHE_SEGMENTS];
+ @SuppressWarnings("unchecked")
+ private final LRUMap<String, Entry>[] docNumbers = new LRUMap[CACHE_SEGMENTS];
/**
* Timestamp of the last cache statistics log.
@@ -78,7 +79,7 @@ final class DocNumberCache {
size = 0x40;
}
for (int i = 0; i < docNumbers.length; i++) {
- docNumbers[i] = new LRUMap(size);
+ docNumbers[i] = new LRUMap<>(size);
}
}
@@ -92,9 +93,9 @@ final class DocNumberCache {
* @param n the document number.
*/
void put(String uuid, CachingIndexReader reader, int n) {
- LRUMap cacheSegment = docNumbers[getSegmentIndex(uuid.charAt(0))];
+ LRUMap<String, Entry> cacheSegment = docNumbers[getSegmentIndex(uuid.charAt(0))];
synchronized (cacheSegment) {
- Entry e = (Entry) cacheSegment.get(uuid);
+ Entry e = cacheSegment.get(uuid);
if (e != null) {
// existing entry
// ignore if reader is older than the one in entry
@@ -125,10 +126,10 @@ final class DocNumberCache {
* @return cache entry or <code>null</code>.
*/
Entry get(String uuid) {
- LRUMap cacheSegment = docNumbers[getSegmentIndex(uuid.charAt(0))];
+ LRUMap<String, Entry> cacheSegment = docNumbers[getSegmentIndex(uuid.charAt(0))];
Entry entry;
synchronized (cacheSegment) {
- entry = (Entry) cacheSegment.get(uuid);
+ entry = cacheSegment.get(uuid);
}
if (log.isInfoEnabled()) {
accesses++;
@@ -143,7 +144,7 @@ final class DocNumberCache {
}
StringBuffer statistics = new StringBuffer();
int inUse = 0;
- for (LRUMap docNumber : docNumbers) {
+ for (LRUMap<String, Entry> docNumber : docNumbers) {
inUse += docNumber.size();
}
statistics.append("size=").append(inUse);
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexingConfigurationImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexingConfigurationImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexingConfigurationImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/IndexingConfigurationImpl.java Tue Dec 6 17:14:26 2022
@@ -29,7 +29,7 @@ import java.util.Properties;
import javax.jcr.NamespaceException;
import javax.jcr.RepositoryException;
-import org.apache.commons.collections.iterators.AbstractIteratorDecorator;
+import org.apache.commons.collections4.iterators.AbstractIteratorDecorator;
import org.apache.jackrabbit.core.HierarchyManager;
import org.apache.jackrabbit.core.HierarchyManagerImpl;
import org.apache.jackrabbit.core.id.PropertyId;
@@ -982,13 +982,14 @@ public class IndexingConfigurationImpl
* evaluated.
* @return expression result.
*/
+ @SuppressWarnings({ "rawtypes", "unchecked" })
boolean evaluate(final NodeState context) {
// get iterator along specified axis
Iterator<NodeState> nodeStates;
if (axis == SELF) {
nodeStates = Collections.singletonList(context).iterator();
} else if (axis == CHILD) {
- nodeStates = (Iterator<NodeState>) new AbstractIteratorDecorator(
+ nodeStates = new AbstractIteratorDecorator(
context.getChildNodeEntries().iterator()) {
public Object next() {
ChildNodeEntry cne =
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/NodeTraversingQueryHits.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/NodeTraversingQueryHits.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/NodeTraversingQueryHits.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/NodeTraversingQueryHits.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.query.lucene;
-import org.apache.commons.collections.iterators.IteratorChain;
+import org.apache.commons.collections4.iterators.IteratorChain;
import org.apache.jackrabbit.core.NodeImpl;
import javax.jcr.Node;
@@ -142,7 +142,7 @@ public class NodeTraversingQueryHits ext
/**
* Initializes the iterator chain once.
*/
- @SuppressWarnings({"unchecked"})
+ @SuppressWarnings({"unchecked", "rawtypes"})
private void init() {
if (selfAndChildren == null) {
List<Iterator<Node>> allIterators = new ArrayList<Iterator<Node>>();
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/VolatileIndex.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/VolatileIndex.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/VolatileIndex.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/query/lucene/VolatileIndex.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.query.lucene;
-import org.apache.commons.collections.map.LinkedMap;
+import org.apache.commons.collections4.map.LinkedMap;
import org.apache.lucene.analysis.Analyzer;
import org.apache.lucene.document.Document;
import org.apache.lucene.index.Term;
@@ -39,8 +39,7 @@ class VolatileIndex extends AbstractInde
/**
* Map of pending documents to add to the index
*/
- @SuppressWarnings("unchecked")
- private final Map<String, Document> pending = new LinkedMap();
+ private final Map<String, Document> pending = new LinkedMap<>();
/**
* Number of documents that are buffered before they are added to the index.
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/AbstractCompiledPermissions.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/AbstractCompiledPermissions.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/AbstractCompiledPermissions.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/AbstractCompiledPermissions.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.security.authorization;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import org.apache.jackrabbit.spi.Path;
import javax.jcr.RepositoryException;
@@ -33,9 +33,8 @@ public abstract class AbstractCompiledPe
private final Map<Path, Result> cache;
private final Object monitor = new Object();
- @SuppressWarnings("unchecked")
protected AbstractCompiledPermissions() {
- cache = new LRUMap(1000);
+ cache = new LRUMap<>(1000);
}
/**
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/PrivilegeRegistry.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/PrivilegeRegistry.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/PrivilegeRegistry.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/PrivilegeRegistry.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,8 @@
*/
package org.apache.jackrabbit.core.security.authorization;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.cluster.PrivilegeEventChannel;
import org.apache.jackrabbit.core.cluster.PrivilegeEventListener;
import org.apache.jackrabbit.spi.PrivilegeDefinition;
@@ -128,12 +129,10 @@ public final class PrivilegeRegistry imp
*/
private static final String CUSTOM_PRIVILEGES_RESOURCE_NAME = "/privileges/custom_privileges.xml";
-
private final Map<Name, Definition> registeredPrivileges = new HashMap<Name, Definition>();
private final Map<PrivilegeBits, Set<Name>> bitsToNames = new HashMap<PrivilegeBits, Set<Name>>();
- @SuppressWarnings("unchecked")
- private final Map<Listener, Listener> listeners = Collections.synchronizedMap(new ReferenceMap(ReferenceMap.WEAK, ReferenceMap.WEAK));
+ private final Map<Listener, Listener> listeners = Collections.synchronizedMap(new ReferenceMap<>(ReferenceStrength.WEAK, ReferenceStrength.WEAK));
private final NamespaceRegistry namespaceRegistry;
private final CustomPrivilegeStore customPrivilegesStore;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntriesCache.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntriesCache.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntriesCache.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/authorization/principalbased/EntriesCache.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.security.authorization.principalbased;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import org.apache.jackrabbit.core.NodeImpl;
import org.apache.jackrabbit.core.SessionImpl;
import org.apache.jackrabbit.core.security.authorization.AccessControlConstants;
@@ -75,7 +75,7 @@ class EntriesCache extends AccessControl
repPolicyName = systemSession.getJCRName(N_POLICY);
- cache = new LRUMap(1000);
+ cache = new LRUMap<>(1000);
ObservationManager observationMgr = systemSession.getWorkspace().getObservationManager();
/*
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/AbstractPrincipalProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/AbstractPrincipalProvider.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/AbstractPrincipalProvider.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/AbstractPrincipalProvider.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.security.principal;
-import org.apache.commons.collections.map.LRUMap;
+import org.apache.commons.collections4.map.LRUMap;
import java.security.Principal;
import java.util.Properties;
@@ -47,7 +47,7 @@ public abstract class AbstractPrincipalP
private boolean includeNegative;
/** the principal cache */
- private LRUMap cache;
+ private LRUMap<String, Principal> cache;
/**
* Create a new instance of <code>AbstractPrincipalProvider</code>.
@@ -126,7 +126,7 @@ public abstract class AbstractPrincipalP
}
int maxSize = Integer.parseInt(options.getProperty(MAXSIZE_KEY, "1000"));
- cache = new LRUMap(maxSize);
+ cache = new LRUMap<>(maxSize);
includeNegative = Boolean.parseBoolean(options.getProperty(NEGATIVE_ENTRY_KEY, "false"));
initialized = true;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/DefaultPrincipalProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/DefaultPrincipalProvider.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/DefaultPrincipalProvider.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/security/principal/DefaultPrincipalProvider.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.security.principal;
-import org.apache.commons.collections.iterators.IteratorChain;
+import org.apache.commons.collections4.iterators.IteratorChain;
import org.apache.jackrabbit.api.security.principal.PrincipalIterator;
import org.apache.jackrabbit.api.security.principal.PrincipalManager;
import org.apache.jackrabbit.api.security.user.Authorizable;
@@ -160,6 +160,7 @@ public class DefaultPrincipalProvider ex
/**
* @see PrincipalProvider#findPrincipals(String, int)
*/
+ @SuppressWarnings({ "rawtypes", "unchecked" })
public PrincipalIterator findPrincipals(String simpleFilter, int searchType) {
checkInitialized();
switch (searchType) {
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChangeLog.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChangeLog.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChangeLog.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChangeLog.java Tue Dec 6 17:14:26 2022
@@ -18,7 +18,7 @@ package org.apache.jackrabbit.core.state
import java.util.Map;
-import org.apache.commons.collections.map.LinkedMap;
+import org.apache.commons.collections4.map.LinkedMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.version.VersionItemStateManager;
@@ -32,26 +32,22 @@ public class ChangeLog {
/**
* Added states
*/
- @SuppressWarnings("unchecked")
- private final Map<ItemId, ItemState> addedStates = (Map<ItemId, ItemState>) new LinkedMap();
+ private final Map<ItemId, ItemState> addedStates = new LinkedMap<>();
/**
* Modified states
*/
- @SuppressWarnings("unchecked")
- private final Map<ItemId, ItemState> modifiedStates = (Map<ItemId, ItemState>) new LinkedMap();
+ private final Map<ItemId, ItemState> modifiedStates = new LinkedMap<>();
/**
* Deleted states
*/
- @SuppressWarnings("unchecked")
- private final Map<ItemId, ItemState> deletedStates = (Map<ItemId, ItemState>) new LinkedMap();
+ private final Map<ItemId, ItemState> deletedStates = new LinkedMap<>();
/**
* Modified references
*/
- @SuppressWarnings("unchecked")
- private final Map<NodeId, NodeReferences> modifiedRefs = (Map<NodeId, NodeReferences>) new LinkedMap();
+ private final Map<NodeId, NodeReferences> modifiedRefs = new LinkedMap<>();
private long updateSize;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChildNodeEntries.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChildNodeEntries.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChildNodeEntries.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ChildNodeEntries.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.state;
-import org.apache.commons.collections.map.LinkedMap;
+import org.apache.commons.collections4.map.LinkedMap;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.util.EmptyLinkedMap;
import org.apache.jackrabbit.spi.Name;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ItemStateReferenceCache.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ItemStateReferenceCache.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ItemStateReferenceCache.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/ItemStateReferenceCache.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,8 @@
*/
package org.apache.jackrabbit.core.state;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
@@ -102,7 +103,7 @@ public class ItemStateReferenceCache imp
// are generally recommended over weak references for caching
// purposes, it seems that using weak references is safer here.
segments[i] =
- new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
}
}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/MLRUItemStateCache.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/MLRUItemStateCache.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/MLRUItemStateCache.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/MLRUItemStateCache.java Tue Dec 6 17:14:26 2022
@@ -18,7 +18,6 @@ package org.apache.jackrabbit.core.state
import java.util.List;
-import org.apache.commons.collections.map.LinkedMap;
import org.apache.jackrabbit.core.cache.CacheManager;
import org.apache.jackrabbit.core.cache.ConcurrentCache;
import org.apache.jackrabbit.core.id.ItemId;
@@ -27,7 +26,7 @@ import org.slf4j.LoggerFactory;
/**
* An <code>ItemStateCache</code> implementation that internally uses a
- * {@link LinkedMap} to maintain a cache of <code>ItemState</code> objects. The
+ * {@link ConcurrentCache} to maintain a cache of <code>ItemState</code> objects. The
* cache uses a rough estimate of the memory consumption of the cached item
* states for calculating the maximum number of entries. The oldest entries
* are flushed once the cache size has exceeded a certain limit.
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/XAItemStateManager.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/XAItemStateManager.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/XAItemStateManager.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/state/XAItemStateManager.java Tue Dec 6 17:14:26 2022
@@ -24,8 +24,8 @@ import java.util.Map;
import javax.jcr.PropertyType;
import javax.jcr.ReferentialIntegrityException;
-import org.apache.commons.collections.Predicate;
-import org.apache.commons.collections.iterators.FilterIterator;
+import org.apache.commons.collections4.Predicate;
+import org.apache.commons.collections4.iterators.FilterIterator;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.id.PropertyId;
@@ -60,7 +60,7 @@ public class XAItemStateManager extends
* manager is in one of the {@link #prepare}, {@link #commit}, {@link
* #rollback} methods.
*/
- private final Map commitLogs = Collections.synchronizedMap(new IdentityHashMap());
+ private final Map<Thread, ChangeLog> commitLogs = Collections.synchronizedMap(new IdentityHashMap<>());
/**
* Current instance-local change log.
@@ -213,7 +213,7 @@ public class XAItemStateManager extends
* change log was found.
*/
public ChangeLog getChangeLog() {
- ChangeLog changeLog = (ChangeLog) commitLogs.get(Thread.currentThread());
+ ChangeLog changeLog = commitLogs.get(Thread.currentThread());
if (changeLog == null) {
changeLog = txLog;
}
@@ -443,12 +443,11 @@ public class XAItemStateManager extends
private Iterable<PropertyState> filterReferenceProperties(
final Iterable<ItemState> itemStates) {
return new Iterable<PropertyState>() {
- @SuppressWarnings("unchecked")
+ @SuppressWarnings({ "unchecked", "rawtypes" })
public Iterator<PropertyState> iterator() {
return (Iterator<PropertyState>) new FilterIterator(
- itemStates.iterator(), new Predicate() {
- public boolean evaluate(Object object) {
- ItemState state = (ItemState) object;
+ itemStates.iterator(), new Predicate<ItemState>() {
+ public boolean evaluate(ItemState state) {
if (!state.isNode()) {
PropertyState prop = (PropertyState) state;
return prop.getType() == PropertyType.REFERENCE;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/util/EmptyLinkedMap.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/util/EmptyLinkedMap.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/util/EmptyLinkedMap.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/util/EmptyLinkedMap.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.util;
-import org.apache.commons.collections.map.LinkedMap;
+import org.apache.commons.collections4.map.LinkedMap;
import java.util.Map;
import java.util.Set;
@@ -26,13 +26,14 @@ import java.util.Collections;
/**
* <code>EmptyLinkedMap</code> implements an empty unmodifiable {@link LinkedMap}.
*/
-public class EmptyLinkedMap extends LinkedMap {
+public class EmptyLinkedMap<K, V> extends LinkedMap<K, V> {
private static final long serialVersionUID = -9165910643562370800L;
/**
* The only instance of this class.
*/
+ @SuppressWarnings("rawtypes")
public static final LinkedMap INSTANCE = new EmptyLinkedMap();
private EmptyLinkedMap() {
@@ -42,7 +43,7 @@ public class EmptyLinkedMap extends Link
/**
* @throws UnsupportedOperationException always.
*/
- public Object remove(int i) {
+ public V remove(int i) {
throw new UnsupportedOperationException();
}
@@ -56,13 +57,14 @@ public class EmptyLinkedMap extends Link
/**
* @throws UnsupportedOperationException always.
*/
- public Object put(Object o, Object o1) {
+ public V put(Object o, Object o1) {
throw new UnsupportedOperationException();
}
/**
* @throws UnsupportedOperationException always.
*/
+ @SuppressWarnings("rawtypes")
public void putAll(Map map) {
throw new UnsupportedOperationException();
}
@@ -70,7 +72,7 @@ public class EmptyLinkedMap extends Link
/**
* @throws UnsupportedOperationException always.
*/
- public Object remove(Object o) {
+ public V remove(Object o) {
throw new UnsupportedOperationException();
}
@@ -79,8 +81,8 @@ public class EmptyLinkedMap extends Link
*
* @return an unmodifiable empty set.
*/
- public Set entrySet() {
- return Collections.EMPTY_SET;
+ public Set<Map.Entry<K, V>> entrySet() {
+ return Collections.emptySet();
}
/**
@@ -88,8 +90,8 @@ public class EmptyLinkedMap extends Link
*
* @return an unmodifiable empty set.
*/
- public Set keySet() {
- return Collections.EMPTY_SET;
+ public Set<K> keySet() {
+ return Collections.emptySet();
}
/**
@@ -97,8 +99,8 @@ public class EmptyLinkedMap extends Link
*
* @return an unmodifiable empty collection.
*/
- public Collection values() {
- return Collections.EMPTY_LIST;
+ public Collection<V> values() {
+ return Collections.emptyList();
}
//----------------------------------------------------< Cloneable support >
@@ -108,7 +110,8 @@ public class EmptyLinkedMap extends Link
*
* @return {@link #INSTANCE}.
*/
- public Object clone() {
+ @SuppressWarnings("unchecked")
+ public LinkedMap<K, V> clone() {
return INSTANCE;
}
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerImpl.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerImpl.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerImpl.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/InternalVersionManagerImpl.java Tue Dec 6 17:14:26 2022
@@ -29,7 +29,8 @@ import javax.jcr.Session;
import javax.jcr.version.ActivityViolationException;
import javax.jcr.version.VersionException;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.SessionImpl;
import org.apache.jackrabbit.core.cluster.UpdateEventChannel;
import org.apache.jackrabbit.core.cluster.UpdateEventListener;
@@ -125,9 +126,8 @@ public class InternalVersionManagerImpl
/**
* Map of returned items. this is kept for invalidating
*/
- @SuppressWarnings("unchecked")
private final Map<ItemId, InternalVersionItem> versionItems =
- new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
/**
* Creates a new internal version manager
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/VersionItemStateProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/VersionItemStateProvider.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/VersionItemStateProvider.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/version/VersionItemStateProvider.java Tue Dec 6 17:14:26 2022
@@ -18,7 +18,8 @@ package org.apache.jackrabbit.core.versi
import javax.jcr.RepositoryException;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.state.ChangeLog;
@@ -55,7 +56,7 @@ class VersionItemStateProvider implement
/**
* Map of returned items. this is kept for invalidating
*/
- private ReferenceMap items = new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ private ReferenceMap<ItemId, ItemState> items = new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
/**
* Creates a new version manager
@@ -118,7 +119,7 @@ class VersionItemStateProvider implement
*/
public synchronized ItemState getItemState(ItemId id)
throws NoSuchItemStateException, ItemStateException {
- ItemState item = (ItemState) items.get(id);
+ ItemState item = items.get(id);
if (item == null) {
item = stateMgr.getItemState(id);
items.put(id, item);
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/virtual/AbstractVISProvider.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/virtual/AbstractVISProvider.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/virtual/AbstractVISProvider.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/main/java/org/apache/jackrabbit/core/virtual/AbstractVISProvider.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,8 @@
*/
package org.apache.jackrabbit.core.virtual;
-import org.apache.commons.collections.map.ReferenceMap;
+import org.apache.commons.collections4.map.AbstractReferenceMap.ReferenceStrength;
+import org.apache.commons.collections4.map.ReferenceMap;
import org.apache.jackrabbit.core.id.ItemId;
import org.apache.jackrabbit.core.id.NodeId;
import org.apache.jackrabbit.core.id.PropertyId;
@@ -69,12 +70,11 @@ public abstract class AbstractVISProvide
/**
* the cache node states. key=ItemId, value=ItemState
*/
- @SuppressWarnings("unchecked")
private final Map<NodeId, NodeState> nodes =
// Using soft references instead of weak ones seems to have
// some unexpected performance consequences, so for now it's
// better to stick with weak references.
- new ReferenceMap(ReferenceMap.HARD, ReferenceMap.WEAK);
+ new ReferenceMap<>(ReferenceStrength.HARD, ReferenceStrength.WEAK);
/**
* Listeners (weak references)
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestRepository.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestRepository.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestRepository.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/TestRepository.java Tue Dec 6 17:14:26 2022
@@ -24,7 +24,7 @@ import javax.jcr.Repository;
import javax.jcr.RepositoryException;
import javax.jcr.Session;
-import org.apache.commons.collections.BeanMap;
+import org.apache.commons.beanutils.BeanMap;
import org.apache.jackrabbit.commons.repository.ProxyRepository;
import org.apache.jackrabbit.commons.repository.RepositoryFactory;
import org.apache.jackrabbit.core.config.ConfigurationException;
Modified: jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/integration/random/operation/OperationSequence.java
URL: http://svn.apache.org/viewvc/jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/integration/random/operation/OperationSequence.java?rev=1905799&r1=1905798&r2=1905799&view=diff
==============================================================================
--- jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/integration/random/operation/OperationSequence.java (original)
+++ jackrabbit/branches/2.20/jackrabbit-core/src/test/java/org/apache/jackrabbit/core/integration/random/operation/OperationSequence.java Tue Dec 6 17:14:26 2022
@@ -16,7 +16,7 @@
*/
package org.apache.jackrabbit.core.integration.random.operation;
-import org.apache.commons.collections.iterators.IteratorChain;
+import org.apache.commons.collections4.iterators.IteratorChain;
import org.apache.jackrabbit.commons.iterator.NodeIteratorAdapter;
import javax.jcr.NodeIterator;
@@ -31,13 +31,14 @@ public class OperationSequence extends O
private final Operation[] ops;
- public OperationSequence(Session s, List operations) {
+ public OperationSequence(Session s, List<Operation> operations) {
super(s, "/");
- this.ops = (Operation[]) operations.toArray(new Operation[operations.size()]);
+ this.ops = operations.toArray(new Operation[operations.size()]);
}
+ @SuppressWarnings("unchecked")
public NodeIterator execute() throws Exception {
- IteratorChain chain = new IteratorChain();
+ IteratorChain<NodeIterator> chain = new IteratorChain<>();
for (int i = 0; i < ops.length; i++) {
chain.addIterator(ops[i].execute());
}