This is an automated email from the ASF dual-hosted git repository. ggregory pushed a commit to branch master in repository https://gitbox.apache.org/repos/asf/commons-jcs.git
commit 2bad29c65c82e1ad34e3f21cbf6e0693526faa34 Author: Gary Gregory <[email protected]> AuthorDate: Tue Jul 9 19:46:30 2024 -0400 Use final Use blocks Remove useless or redundant parens Use diamonds Remove redundant keywords Use else if Add @Override Use a for each loop instead of an iterator --- .../disk/indexed/IndexedDiskElementDescriptor.java | 2 +- .../jcs3/auxiliary/disk/jdbc/JDBCConnection.java | 8 ++-- .../jcs3/auxiliary/disk/jdbc/JDBCDiskCache.java | 24 +++++------ .../jcs3/auxiliary/lateral/LateralCache.java | 2 +- .../auxiliary/lateral/LateralCacheMonitor.java | 4 +- .../jcs3/auxiliary/lateral/LateralCacheNoWait.java | 6 +-- .../lateral/LateralElementDescriptor.java | 4 +- .../lateral/socket/tcp/LateralTCPCacheFactory.java | 2 +- .../socket/tcp/LateralTCPDiscoveryListener.java | 4 +- .../lateral/socket/tcp/LateralTCPListener.java | 18 ++++---- .../lateral/socket/tcp/LateralTCPSender.java | 4 +- .../server/RemoteHttpCacheServerAttributes.java | 10 ++--- .../org/apache/commons/jcs3/log/LogManager.java | 14 +++---- .../apache/commons/jcs3/utils/struct/LRUMap.java | 2 +- .../lateral/LateralCacheNoWaitFacadeUnitTest.java | 6 +-- .../tcp/LateralTCPDiscoveryListenerUnitTest.java | 2 +- .../jcs3/jcache/extras/web/InMemoryResponse.java | 2 +- .../org/apache/commons/jcs3/jcache/JCSCache.java | 8 +--- .../jcs/yajcache/lang/ref/KeyedRefCollector.java | 12 +++--- .../jcs/yajcache/lang/ref/KeyedSoftReference.java | 7 ++-- .../jcs/yajcache/lang/ref/KeyedWeakReference.java | 7 ++-- .../util/concurrent/locks/KeyedReadWriteLock.java | 49 ++++++++++++---------- 22 files changed, 100 insertions(+), 97 deletions(-) diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskElementDescriptor.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskElementDescriptor.java index f3854e49..5bfeff39 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskElementDescriptor.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/indexed/IndexedDiskElementDescriptor.java @@ -63,7 +63,7 @@ public class IndexedDiskElementDescriptor return 1; } - int lenCompare = Integer.compare(len, o.len); + final int lenCompare = Integer.compare(len, o.len); if (lenCompare == 0) { return Long.compare(o.pos, pos); diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCConnection.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCConnection.java index 4763265d..bcdca784 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCConnection.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCConnection.java @@ -33,17 +33,17 @@ public class JDBCConnection implements AutoCloseable private boolean committed; /** Save state of auto-commit */ - private boolean autoCommit; + private final boolean autoCommit; /** The wrapped connection instance */ - private Connection connection; + private final Connection connection; /** * Constructor * @param con Connection object * @throws SQLException if a database error occurs */ - public JDBCConnection(Connection con) throws SQLException + public JDBCConnection(final Connection con) throws SQLException { this.committed = false; this.autoCommit = con.getAutoCommit(); @@ -54,7 +54,7 @@ public class JDBCConnection implements AutoCloseable /** * @see java.sql.Connection#prepareStatement(java.lang.String) */ - public PreparedStatement prepareStatement(String sql) throws SQLException + public PreparedStatement prepareStatement(final String sql) throws SQLException { return connection.prepareStatement(sql); } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCache.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCache.java index a160a9dc..bca62ae1 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCache.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/disk/jdbc/JDBCDiskCache.java @@ -196,7 +196,7 @@ public class JDBCDiskCache<K, V> try (PreparedStatement psDelete = con.prepareStatement( sql )) { psDelete.setString( 1, "F" ); - psDelete.setString( 2, this.getCacheName() ); + psDelete.setString( 2, getCacheName() ); psDelete.setLong( 3, now ); setAlive(true); @@ -247,7 +247,7 @@ public class JDBCDiskCache<K, V> try (PreparedStatement psSelect = con.prepareStatement( sqlS )) { - psSelect.setString( 1, this.getCacheName() ); + psSelect.setString( 1, getCacheName() ); psSelect.setString( 2, (String) ce.getKey() ); try (ResultSet rs = psSelect.executeQuery()) @@ -340,7 +340,7 @@ public class JDBCDiskCache<K, V> { try (PreparedStatement psSelect = con.prepareStatement( selectString )) { - psSelect.setString( 1, this.getCacheName() ); + psSelect.setString( 1, getCacheName() ); try (ResultSet rs = psSelect.executeQuery()) { @@ -457,7 +457,7 @@ public class JDBCDiskCache<K, V> try (PreparedStatement psInsert = con.prepareStatement( sqlI )) { psInsert.setString( 1, ce.getKey().toString() ); - psInsert.setString( 2, this.getCacheName() ); + psInsert.setString( 2, getCacheName() ); psInsert.setBytes( 3, element ); psInsert.setLong( 4, ce.getElementAttributes().getMaxLife() ); psInsert.setString( 5, ce.getElementAttributes().getIsEternal() ? "T" : "F" ); @@ -519,7 +519,7 @@ public class JDBCDiskCache<K, V> psUpdate.setLong( 4, expireTime ); psUpdate.setString( 5, (String) ce.getKey() ); - psUpdate.setString( 6, this.getCacheName() ); + psUpdate.setString( 6, getCacheName() ); psUpdate.execute(); log.debug( "ran update {0}", sqlU ); @@ -578,7 +578,7 @@ public class JDBCDiskCache<K, V> { try (PreparedStatement psSelect = con.prepareStatement( selectString )) { - psSelect.setString( 1, this.getCacheName() ); + psSelect.setString( 1, getCacheName() ); psSelect.setString( 2, key.toString() ); try (ResultSet rs = psSelect.executeQuery()) @@ -644,7 +644,7 @@ public class JDBCDiskCache<K, V> { try (PreparedStatement psSelect = con.prepareStatement( selectString )) { - psSelect.setString( 1, this.getCacheName() ); + psSelect.setString( 1, getCacheName() ); psSelect.setString( 2, constructLikeParameterFromPattern( pattern ) ); try (ResultSet rs = psSelect.executeQuery()) @@ -697,12 +697,12 @@ public class JDBCDiskCache<K, V> try (JDBCConnection con = getConnection()) { - boolean partial = key.toString().endsWith(ICache.NAME_COMPONENT_DELIMITER); - String sql = partial ? sqlPartial : sqlSingle; + final boolean partial = key.toString().endsWith(ICache.NAME_COMPONENT_DELIMITER); + final String sql = partial ? sqlPartial : sqlSingle; try (PreparedStatement psSelect = con.prepareStatement(sql)) { - psSelect.setString( 1, this.getCacheName() ); + psSelect.setString( 1, getCacheName() ); if ( partial ) { psSelect.setString( 2, key.toString() + "%" ); @@ -747,7 +747,7 @@ public class JDBCDiskCache<K, V> { try (PreparedStatement psDelete = con.prepareStatement( sql )) { - psDelete.setString( 1, this.getCacheName() ); + psDelete.setString( 1, getCacheName() ); setAlive(true); psDelete.executeUpdate(); } @@ -824,6 +824,6 @@ public class JDBCDiskCache<K, V> @Override public String toString() { - return this.getStats(); + return getStats(); } } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCache.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCache.java index 2d116b61..22b2d251 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCache.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCache.java @@ -300,7 +300,7 @@ public class LateralCache<K, V> protected Map<K, ICacheElement<K, V>> processGetMatching( final String pattern ) throws IOException { - Map<K, ICacheElement<K, V>> map = Collections.emptyMap(); + final Map<K, ICacheElement<K, V>> map = Collections.emptyMap(); if ( !this.lateralCacheAttributes.getPutOnlyMode() ) { diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheMonitor.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheMonitor.java index e57048f8..ec783d27 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheMonitor.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheMonitor.java @@ -73,9 +73,9 @@ public class LateralCacheMonitor extends AbstractAuxiliaryCacheMonitor this.caches.put(cache.getCacheName(), (LateralCacheNoWait<Object, Object>)cache); // if not yet started, go ahead - if (this.getState() == Thread.State.NEW) + if (getState() == Thread.State.NEW) { - this.start(); + start(); } } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWait.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWait.java index 09d09780..bc7a53c2 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWait.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWait.java @@ -83,8 +83,8 @@ public class LateralCacheNoWait<K, V> { this.cache = cache; this.identityKey = cache.getCacheName(); - this.setCacheEventLogger(cache.getCacheEventLogger()); - this.setElementSerializer(cache.getElementSerializer()); + setCacheEventLogger(cache.getCacheEventLogger()); + setElementSerializer(cache.getElementSerializer()); log.debug( "Constructing LateralCacheNoWait, LateralCache = [{0}]", cache ); @@ -420,7 +420,7 @@ public class LateralCacheNoWait<K, V> * @param identityKey the identityKey to set * @since 3.1 */ - public void setIdentityKey(String identityKey) + public void setIdentityKey(final String identityKey) { this.identityKey = identityKey; } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralElementDescriptor.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralElementDescriptor.java index 48305700..cacdbeeb 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralElementDescriptor.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/LateralElementDescriptor.java @@ -68,7 +68,7 @@ public class LateralElementDescriptor<K, V> * @param command operation requested by the client * @since 3.1 */ - public LateralElementDescriptor( final ICacheElement<K, V> ce, LateralCommand command) + public LateralElementDescriptor( final ICacheElement<K, V> ce, final LateralCommand command) { this(ce); this.command = command; @@ -82,7 +82,7 @@ public class LateralElementDescriptor<K, V> * @param requesterId id of the source of the request * @since 3.1 */ - public LateralElementDescriptor( final ICacheElement<K, V> ce, LateralCommand command, long requesterId) + public LateralElementDescriptor( final ICacheElement<K, V> ce, final LateralCommand command, final long requesterId) { this(ce, command); this.requesterId = requesterId; diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPCacheFactory.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPCacheFactory.java index af2a6d74..5117c9c4 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPCacheFactory.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPCacheFactory.java @@ -392,7 +392,7 @@ public class LateralTCPCacheFactory return lTCPDLInstances.computeIfAbsent(key, key1 -> { log.info("Created new discovery listener for cacheName {0} and request {1}", ilca.getCacheName(), key1); - return new LateralTCPDiscoveryListener( this.getName(), + return new LateralTCPDiscoveryListener( getName(), (CompositeCacheManager) cacheManager, cacheEventLogger, elementSerializer); }); diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListener.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListener.java index 5b1cc854..c926fc05 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListener.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListener.java @@ -139,10 +139,10 @@ public class LateralTCPDiscoveryListener (ITCPLateralCacheAttributes) facade.getAuxiliaryCacheAttributes().clone(); lca.setTcpServer(serverAndPort); - LateralTCPCacheFactory factory = + final LateralTCPCacheFactory factory = (LateralTCPCacheFactory) cacheManager.registryFacGet(factoryName); - LateralCacheNoWait<?, ?> noWait = + final LateralCacheNoWait<?, ?> noWait = factory.createCacheNoWait(lca, cacheEventLogger, elementSerializer); factory.monitorCache(noWait); diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPListener.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPListener.java index 247791e5..80ba4b79 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPListener.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPListener.java @@ -242,7 +242,7 @@ public class LateralTCPListener<K, V> log.debug( "receiving LateralElementDescriptor from another led = {0}", led ); - Object obj = handleElement(led); + final Object obj = handleElement(led); if (obj != null) { serializer.serializeTo(obj, socketChannel); @@ -256,7 +256,7 @@ public class LateralTCPListener<K, V> { socketChannel.close(); } - catch (IOException e1) + catch (final IOException e1) { log.error("Error while closing connection", e ); } @@ -527,20 +527,20 @@ public class LateralTCPListener<K, V> // Check to see if we've been asked to exit, and exit while (!terminated.get()) { - int activeKeys = selector.select(acceptTimeOut); + final int activeKeys = selector.select(acceptTimeOut); if (activeKeys == 0) { continue; } - for (Iterator<SelectionKey> i = selector.selectedKeys().iterator(); i.hasNext();) + for (final Iterator<SelectionKey> i = selector.selectedKeys().iterator(); i.hasNext();) { if (terminated.get()) { break; } - SelectionKey key = i.next(); + final SelectionKey key = i.next(); if (!key.isValid()) { @@ -549,8 +549,8 @@ public class LateralTCPListener<K, V> if (key.isAcceptable()) { - ServerSocketChannel server = (ServerSocketChannel) key.channel(); - SocketChannel client = server.accept(); + final ServerSocketChannel server = (ServerSocketChannel) key.channel(); + final SocketChannel client = server.accept(); if (client == null) { //may happen in non-blocking mode @@ -580,7 +580,7 @@ public class LateralTCPListener<K, V> { key.channel().close(); } - catch (IOException e) + catch (final IOException e) { log.warn("Problem closing channel", e); } @@ -596,7 +596,7 @@ public class LateralTCPListener<K, V> { serverSocket.close(); } - catch (IOException e) + catch (final IOException e) { log.error( "Exception closing TCP listener", e ); } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPSender.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPSender.java index 39b6c045..263db182 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPSender.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPSender.java @@ -130,8 +130,8 @@ public class LateralTCPSender try { client = AsynchronousSocketChannel.open(); - InetSocketAddress hostAddress = new InetSocketAddress(host, port); - Future<Void> future = client.connect(hostAddress); + final InetSocketAddress hostAddress = new InetSocketAddress(host, port); + final Future<Void> future = client.connect(hostAddress); future.get(this.socketOpenTimeOut, TimeUnit.MILLISECONDS); } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServerAttributes.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServerAttributes.java index 82a6c353..dad5f7df 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServerAttributes.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/auxiliary/remote/http/server/RemoteHttpCacheServerAttributes.java @@ -85,11 +85,11 @@ public class RemoteHttpCacheServerAttributes { final StringBuilder buf = new StringBuilder(); buf.append( "\nRemoteHttpCacheServiceAttributes" ); - buf.append( "\n cacheName = [" + this.getCacheName() + "]" ); - buf.append( "\n allowClusterGet = [" + this.isAllowClusterGet() + "]" ); - buf.append( "\n localClusterConsistency = [" + this.isLocalClusterConsistency() + "]" ); - buf.append( "\n eventQueueType = [" + this.getEventQueueType() + "]" ); - buf.append( "\n eventQueuePoolName = [" + this.getEventQueuePoolName() + "]" ); + buf.append( "\n cacheName = [" + getCacheName() + "]" ); + buf.append( "\n allowClusterGet = [" + isAllowClusterGet() + "]" ); + buf.append( "\n localClusterConsistency = [" + isLocalClusterConsistency() + "]" ); + buf.append( "\n eventQueueType = [" + getEventQueueType() + "]" ); + buf.append( "\n eventQueuePoolName = [" + getEventQueuePoolName() + "]" ); return buf.toString(); } } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/log/LogManager.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/log/LogManager.java index 06f42a71..30abe81e 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/log/LogManager.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/log/LogManager.java @@ -18,7 +18,6 @@ package org.apache.commons.jcs3.log; */ import java.util.ArrayList; -import java.util.Iterator; import java.util.List; import java.util.ServiceConfigurationError; import java.util.ServiceLoader; @@ -54,21 +53,18 @@ public class LogManager } // Store errors that may occur until log system is available - List<ServiceConfigurationError> errors = new ArrayList<>(); - Iterator<LogFactory> itr = factories.iterator(); + final List<ServiceConfigurationError> errors = new ArrayList<>(); LogFactory factory = null; - while (itr.hasNext()) - { + for (final LogFactory instance : factories) { try { - LogFactory instance = itr.next(); if (logSystem.equalsIgnoreCase(instance.getName())) { factory = instance; break; } } - catch (ServiceConfigurationError e) + catch (final ServiceConfigurationError e) { errors.add(e); } @@ -77,9 +73,9 @@ public class LogManager { if (!errors.isEmpty()) { - Log log = factory.getLog(LogFactoryHolder.class); + final Log log = factory.getLog(LogFactoryHolder.class); - for (ServiceConfigurationError error : errors) + for (final ServiceConfigurationError error : errors) { log.debug("Error loading LogFactory", error); } diff --git a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/utils/struct/LRUMap.java b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/utils/struct/LRUMap.java index 4ceaef64..2550b888 100644 --- a/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/utils/struct/LRUMap.java +++ b/commons-jcs3-core/src/main/java/org/apache/commons/jcs3/utils/struct/LRUMap.java @@ -48,6 +48,6 @@ public class LRUMap<K, V> extends AbstractLRUMap<K, V> @Override public boolean shouldRemove() { - return maxObjects > 0 && this.size() > maxObjects; + return maxObjects > 0 && size() > maxObjects; } } diff --git a/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java b/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java index 833797dd..b61da174 100644 --- a/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java +++ b/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/LateralCacheNoWaitFacadeUnitTest.java @@ -43,8 +43,8 @@ public class LateralCacheNoWaitFacadeUnitTest public void setUp() throws Exception { // SETUP - List<LateralCacheNoWait<String, String>> noWaits = new ArrayList<>(); - TCPLateralCacheAttributes cattr = new TCPLateralCacheAttributes(); + final List<LateralCacheNoWait<String, String>> noWaits = new ArrayList<>(); + final TCPLateralCacheAttributes cattr = new TCPLateralCacheAttributes(); cattr.setCacheName( "testCache1" ); cattr.setTcpServer("localhost:7890"); @@ -75,7 +75,7 @@ public class LateralCacheNoWaitFacadeUnitTest @Test public void testAddThenRemoveNoWait_InList() { - LateralCacheNoWait<String, String> noWait = new LateralCacheNoWait<>( cache ); + final LateralCacheNoWait<String, String> noWait = new LateralCacheNoWait<>( cache ); // DO WORK facade.addNoWait( noWait ); diff --git a/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java b/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java index b888f6b3..a677d21a 100644 --- a/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java +++ b/commons-jcs3-core/src/test/java/org/apache/commons/jcs3/auxiliary/lateral/socket/tcp/LateralTCPDiscoveryListenerUnitTest.java @@ -73,7 +73,7 @@ public class LateralTCPDiscoveryListenerUnitTest private LateralCacheNoWaitFacade<String, String> setupFacade(final String cacheName) { - List<LateralCacheNoWait<String, String>> noWaits = new ArrayList<>(); + final List<LateralCacheNoWait<String, String>> noWaits = new ArrayList<>(); final ITCPLateralCacheAttributes cattr = new TCPLateralCacheAttributes(); cattr.setCacheName( cacheName ); diff --git a/commons-jcs3-jcache-extras/src/main/java/org/apache/commons/jcs3/jcache/extras/web/InMemoryResponse.java b/commons-jcs3-jcache-extras/src/main/java/org/apache/commons/jcs3/jcache/extras/web/InMemoryResponse.java index 6ab9b4d9..f8442882 100644 --- a/commons-jcs3-jcache-extras/src/main/java/org/apache/commons/jcs3/jcache/extras/web/InMemoryResponse.java +++ b/commons-jcs3-jcache-extras/src/main/java/org/apache/commons/jcs3/jcache/extras/web/InMemoryResponse.java @@ -170,7 +170,7 @@ public class InMemoryResponse extends HttpServletResponseWrapper implements Seri } @Override - public void setWriteListener(WriteListener writeListener) { + public void setWriteListener(final WriteListener writeListener) { // TODO Auto-generated method stub } diff --git a/commons-jcs3-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java b/commons-jcs3-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java index fe2be213..b48f2c3e 100644 --- a/commons-jcs3-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java +++ b/commons-jcs3-jcache/src/main/java/org/apache/commons/jcs3/jcache/JCSCache.java @@ -754,13 +754,9 @@ public class JCSCache<K, V> implements Cache<K, V> statistics.increasePuts(1); statistics.addPutTime(System.currentTimeMillis() - start); } - } - else + } else if (!created) { - if (!created) - { - forceExpires(key); - } + forceExpires(key); } } diff --git a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedRefCollector.java b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedRefCollector.java index 1e0201ff..b25f0832 100644 --- a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedRefCollector.java +++ b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedRefCollector.java @@ -39,7 +39,7 @@ import java.util.concurrent.atomic.AtomicInteger; @CopyRightApache public class KeyedRefCollector<K> implements Runnable { private static final boolean debug = true; - private Log log = debug ? LogFactory.getLog(this.getClass()) : null; + private final Log log = debug ? LogFactory.getLog(this.getClass()) : null; private final @NonNullable ReferenceQueue q; private final @NonNullable ConcurrentMap<K, ? extends IKey<K>> synMap; private final AtomicInteger count = new AtomicInteger(); @@ -47,8 +47,8 @@ public class KeyedRefCollector<K> implements Runnable { * Constructs with a given reference queue and concurrent map. */ public KeyedRefCollector( - @NonNullable ReferenceQueue<?> q, - @NonNullable ConcurrentMap<K, ? extends IKey<K>> synMap) + @NonNullable final ReferenceQueue<?> q, + @NonNullable final ConcurrentMap<K, ? extends IKey<K>> synMap) { this.q = q; this.synMap = synMap; @@ -56,16 +56,18 @@ public class KeyedRefCollector<K> implements Runnable { /** * Executes one cycle of stale entries removal. */ + @Override public void run() { Reference ref; while ((ref = this.q.poll()) != null) { - IKey keyedRef = (IKey)ref; + final IKey keyedRef = (IKey)ref; // remove unused lock; may fail but that's fine. synMap.remove(keyedRef.getKey(), ref); // referent should have been cleared by GC. - if (debug) + if (debug) { this.count.incrementAndGet(); + } } } public int getCount() { diff --git a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedSoftReference.java b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedSoftReference.java index eb6284ee..2c37bde2 100644 --- a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedSoftReference.java +++ b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedSoftReference.java @@ -42,7 +42,7 @@ public class KeyedSoftReference<K,T> extends SoftReference<T> * @param key the embedded key of the new soft reference * @param referent object the new soft reference will refer to */ - public KeyedSoftReference(@NonNullable @Immutable K key, T referent) + public KeyedSoftReference(@NonNullable @Immutable final K key, final T referent) { super(referent); this.key = key; @@ -56,12 +56,13 @@ public class KeyedSoftReference<K,T> extends SoftReference<T> * @param q the queue with which the reference is to be registered, * or {@code null} if registration is not required */ - public KeyedSoftReference(@NonNullable @Immutable K key, T referent, - ReferenceQueue<? super T> q) + public KeyedSoftReference(@NonNullable @Immutable final K key, final T referent, + final ReferenceQueue<? super T> q) { super(referent, q); this.key = key; } + @Override @Implements(IKey.class) public @NonNullable @Immutable K getKey() { return this.key; diff --git a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedWeakReference.java b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedWeakReference.java index 279fcc77..d0bd186e 100644 --- a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedWeakReference.java +++ b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/lang/ref/KeyedWeakReference.java @@ -41,7 +41,7 @@ public class KeyedWeakReference<K,T> extends WeakReference<T> * @param key the embedded key of the new weak reference * @param referent object the new weak reference will refer to */ - public KeyedWeakReference(@NonNullable @Immutable K key, T referent) { + public KeyedWeakReference(@NonNullable @Immutable final K key, final T referent) { super(referent); this.key = key; } @@ -54,12 +54,13 @@ public class KeyedWeakReference<K,T> extends WeakReference<T> * @param q the queue with which the reference is to be registered, * or {@code null} if registration is not required */ - public KeyedWeakReference(@NonNullable @Immutable K key, T referent, - ReferenceQueue<? super T> q) + public KeyedWeakReference(@NonNullable @Immutable final K key, final T referent, + final ReferenceQueue<? super T> q) { super(referent, q); this.key = key; } + @Override @Implements(IKey.class) public @NonNullable @Immutable K getKey() { return this.key; diff --git a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/util/concurrent/locks/KeyedReadWriteLock.java b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/util/concurrent/locks/KeyedReadWriteLock.java index d72cc70b..fbd26a17 100644 --- a/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/util/concurrent/locks/KeyedReadWriteLock.java +++ b/commons-jcs3-sandbox/commons-jcs3-yajcache/src/main/java/org/apache/commons/jcs/yajcache/util/concurrent/locks/KeyedReadWriteLock.java @@ -42,12 +42,12 @@ public class KeyedReadWriteLock<K> implements IKeyedReadWriteLock<K> { private final @NonNullable ConcurrentMap<K, KeyedWeakReference<K,ReadWriteLock>> rwlMap = - new ConcurrentHashMap<K, KeyedWeakReference<K,ReadWriteLock>>(); + new ConcurrentHashMap<>(); private final @NonNullable Class<? extends ReadWriteLock> rwlClass; private final @NonNullable ReferenceQueue<ReadWriteLock> refQ = - new ReferenceQueue<ReadWriteLock>(); + new ReferenceQueue<>(); private final @NonNullable KeyedRefCollector<K> collector = - new KeyedRefCollector<K>(refQ, rwlMap); + new KeyedRefCollector<>(refQ, rwlMap); private final AtomicInteger countRWLockCreate = new AtomicInteger(); private final AtomicInteger countReadLock = new AtomicInteger(); @@ -62,30 +62,34 @@ public class KeyedReadWriteLock<K> implements IKeyedReadWriteLock<K> { this.rwlClass = ReentrantReadWriteLock.class; } public KeyedReadWriteLock( - @NonNullable Class<? extends ReadWriteLock> rwlClass) + @NonNullable final Class<? extends ReadWriteLock> rwlClass) { this.rwlClass = rwlClass; } + @Override public @NonNullable Lock readLock(@NonNullable final K key) { - if (debug) + if (debug) { this.countReadLock.incrementAndGet(); + } return this.readWriteLock(key).readLock(); } + @Override public @NonNullable Lock writeLock(@NonNullable final K key) { - if (debug) + if (debug) { this.countWriteLock.incrementAndGet(); + } return this.readWriteLock(key).writeLock(); } private @NonNullable ReadWriteLock readWriteLock(@NonNullable final K key) { this.collector.run(); - ReadWriteLock ret = this.getExistingLock(key); + final ReadWriteLock ret = this.getExistingLock(key); return ret == null ? this.tryNewLock(key) : ret; } /** * Returns an existing RWLock for the specified key, or null if not found. */ private ReadWriteLock getExistingLock(@NonNullable final K key) { - KeyedWeakReference<K,ReadWriteLock> ref = this.rwlMap.get(key); + final KeyedWeakReference<K,ReadWriteLock> ref = this.rwlMap.get(key); return ref == null ? null : this.toLock(ref); } /** @@ -93,34 +97,36 @@ public class KeyedReadWriteLock<K> implements IKeyedReadWriteLock<K> { * stale reference as necessary should the RWLock be garbage collected. */ private ReadWriteLock toLock( - @NonNullable KeyedWeakReference<K,ReadWriteLock> ref) + @NonNullable final KeyedWeakReference<K,ReadWriteLock> ref) { // existing lock may exist - if (debug) + if (debug) { this.countKeyHit.incrementAndGet(); - ReadWriteLock prev = ref.get(); + } + final ReadWriteLock prev = ref.get(); if (prev != null) { // existing lock - if (debug) + if (debug) { this.countLockExist.incrementAndGet(); + } return prev; } - if (debug) + if (debug) { this.countLockRefEmpty.incrementAndGet(); + } // stale reference; doesn't matter if fail this.rwlMap.remove(ref.getKey(), ref); return null; } /** Instantiate a new RW lock. */ private @NonNullable ReadWriteLock createRWLock() { - if (debug) + if (debug) { this.countRWLockCreate.incrementAndGet(); + } try { return rwlClass.newInstance(); - } catch (IllegalAccessException ex) { - throw new RuntimeException(ex); - } catch (InstantiationException ex) { + } catch (final IllegalAccessException | InstantiationException ex) { throw new RuntimeException(ex); } } @@ -132,17 +138,18 @@ public class KeyedReadWriteLock<K> implements IKeyedReadWriteLock<K> { { final ReadWriteLock newLock = this.createRWLock(); final KeyedWeakReference<K,ReadWriteLock> newLockRef = - new KeyedWeakReference<K,ReadWriteLock>(key, newLock, refQ); + new KeyedWeakReference<>(key, newLock, refQ); do { - KeyedWeakReference<K,ReadWriteLock> ref = + final KeyedWeakReference<K,ReadWriteLock> ref = this.rwlMap.putIfAbsent(key, newLockRef); if (ref == null) { // successfully deposited the new lock. - if (debug) + if (debug) { this.countLockNew.incrementAndGet(); + } return newLock; } - ReadWriteLock rwl = this.toLock(ref); + final ReadWriteLock rwl = this.toLock(ref); if (rwl != null) { return rwl;
