From 35e45cc127515ae7a38b978ea31b3d0af03aafa2 Mon Sep 17 00:00:00 2001 From: Sebastian Bazley Date: Tue, 30 Apr 2013 13:09:57 +0000 Subject: [PATCH] Privatise fields git-svn-id: https://svn.apache.org/repos/asf/commons/proper/collections/trunk@1477612 13f79535-47bb-0310-9956-ffa450edef68 --- .../collections4/map/AbstractReferenceMap.java | 16 ++++++++++++---- .../collections4/map/ReferenceIdentityMap.java | 2 +- 2 files changed, 13 insertions(+), 5 deletions(-) diff --git a/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java b/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java index bbd67c03e..1f1094692 100644 --- a/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java +++ b/src/main/java/org/apache/commons/collections4/map/AbstractReferenceMap.java @@ -118,17 +118,17 @@ public abstract class AbstractReferenceMap extends AbstractHashedMap /** * The reference type for keys. */ - protected ReferenceStrength keyType; + private ReferenceStrength keyType; /** * The reference type for values. */ - protected ReferenceStrength valueType; + private ReferenceStrength valueType; /** * Should the value be automatically purged when the associated key has been collected? */ - protected boolean purgeValues; + private boolean purgeValues; /** * ReferenceQueue used to eliminate stale mappings. @@ -591,7 +591,7 @@ public abstract class AbstractReferenceMap extends AbstractHashedMap */ protected static class ReferenceEntry extends HashEntry { /** The parent map */ - protected final AbstractReferenceMap parent; + private final AbstractReferenceMap parent; /** * Creates a new entry object for the ReferenceMap. @@ -1047,4 +1047,12 @@ public abstract class AbstractReferenceMap extends AbstractHashedMap // do not call super.doReadObject() as code there doesn't work for reference map } + /** + * Provided protected read-only access to the key type. + * @param type the type to check against. + * @return true if keyType has the specified type + */ + protected boolean isKeyType(ReferenceStrength type) { + return this.keyType == type; + } } diff --git a/src/main/java/org/apache/commons/collections4/map/ReferenceIdentityMap.java b/src/main/java/org/apache/commons/collections4/map/ReferenceIdentityMap.java index f80c72884..d93d3ff46 100644 --- a/src/main/java/org/apache/commons/collections4/map/ReferenceIdentityMap.java +++ b/src/main/java/org/apache/commons/collections4/map/ReferenceIdentityMap.java @@ -202,7 +202,7 @@ public class ReferenceIdentityMap extends AbstractReferenceMap imple */ @Override protected boolean isEqualKey(final Object key1, Object key2) { - key2 = keyType == ReferenceStrength.HARD ? key2 : ((Reference) key2).get(); + key2 = isKeyType(ReferenceStrength.HARD) ? key2 : ((Reference) key2).get(); return key1 == key2; }