public class org.apache.commons.collections.map.LRUMap extends org.apache.commons.collections.map.AbstractLinkedMap implements org.apache.commons.collections.BoundedMap, java.io.Serializable, java.lang.Cloneable
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.commons.collections.map.LRUMap
super_class: org.apache.commons.collections.map.AbstractLinkedMap
{
private static final long serialVersionUID;
descriptor: J
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
ConstantValue: -612114643488955218
protected static final int DEFAULT_MAX_SIZE;
descriptor: I
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
ConstantValue: 100
private transient int maxSize;
descriptor: I
flags: (0x0082) ACC_PRIVATE, ACC_TRANSIENT
private boolean scanUntilRemovable;
descriptor: Z
flags: (0x0002) ACC_PRIVATE
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=1, args_size=1
start local 0 0: aload 0
bipush 100
ldc 0.75
iconst_0
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(IFZ)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
public void <init>(int);
descriptor: (I)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
iload 1
ldc 0.75
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(IF)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
0 2 1 maxSize I
MethodParameters:
Name Flags
maxSize
public void <init>(int, boolean);
descriptor: (IZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
ldc 0.75
iload 2
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(IFZ)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
0 2 1 maxSize I
0 2 2 scanUntilRemovable Z
MethodParameters:
Name Flags
maxSize
scanUntilRemovable
public void <init>(int, float);
descriptor: (IF)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
iload 1
fload 2
iconst_0
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(IFZ)V
1: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
0 2 1 maxSize I
0 2 2 loadFactor F
MethodParameters:
Name Flags
maxSize
loadFactor
public void <init>(int, float, boolean);
descriptor: (IFZ)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=4, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
iload 1
iconst_1
if_icmpge 1
bipush 16
goto 2
StackMap locals:
StackMap stack: uninitialized-this
1: iload 1
StackMap locals: uninitialized-this int float int
StackMap stack: uninitialized-this int
2: fload 2
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.<init>:(IF)V
3: iload 1
iconst_1
if_icmpge 5
4: new java.lang.IllegalArgumentException
dup
ldc "LRUMap max size must be greater than 0"
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
5: StackMap locals: org.apache.commons.collections.map.LRUMap int float int
StackMap stack:
aload 0
iload 1
putfield org.apache.commons.collections.map.LRUMap.maxSize:I
6: aload 0
iload 3
putfield org.apache.commons.collections.map.LRUMap.scanUntilRemovable:Z
7: return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/apache/commons/collections/map/LRUMap;
0 8 1 maxSize I
0 8 2 loadFactor F
0 8 3 scanUntilRemovable Z
MethodParameters:
Name Flags
maxSize
loadFactor
scanUntilRemovable
public void <init>(java.util.Map);
descriptor: (Ljava/util/Map;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
iconst_0
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(Ljava/util/Map;Z)V
1: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
0 2 1 map Ljava/util/Map;
MethodParameters:
Name Flags
map
public void <init>(java.util.Map, boolean);
descriptor: (Ljava/util/Map;Z)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
invokeinterface java.util.Map.size:()I
ldc 0.75
iload 2
invokespecial org.apache.commons.collections.map.LRUMap.<init>:(IFZ)V
1: aload 0
aload 1
invokevirtual org.apache.commons.collections.map.LRUMap.putAll:(Ljava/util/Map;)V
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 map Ljava/util/Map;
0 3 2 scanUntilRemovable Z
MethodParameters:
Name Flags
map
scanUntilRemovable
public java.lang.Object get(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual org.apache.commons.collections.map.LRUMap.getEntry:(Ljava/lang/Object;)Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
checkcast org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry
astore 2
start local 2 1: aload 2
ifnonnull 3
2: aconst_null
areturn
3: StackMap locals: org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry
StackMap stack:
aload 0
aload 2
invokevirtual org.apache.commons.collections.map.LRUMap.moveToMRU:(Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)V
4: aload 2
invokevirtual org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.getValue:()Ljava/lang/Object;
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/commons/collections/map/LRUMap;
0 5 1 key Ljava/lang/Object;
1 5 2 entry Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
MethodParameters:
Name Flags
key
protected void moveToMRU(org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry);
descriptor: (Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
if_acmpeq 9
1: aload 0
dup
getfield org.apache.commons.collections.map.LRUMap.modCount:I
iconst_1
iadd
putfield org.apache.commons.collections.map.LRUMap.modCount:I
2: aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
3: aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
4: aload 1
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
5: aload 1
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
6: aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
aload 1
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
7: aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
aload 1
putfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
8: goto 11
StackMap locals:
StackMap stack:
9: aload 1
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
if_acmpne 11
10: new java.lang.IllegalStateException
dup
ldc "Can't move header to MRU (please report this to commons-dev@jakarta.apache.org)"
invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
11: StackMap locals:
StackMap stack:
return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 12 0 this Lorg/apache/commons/collections/map/LRUMap;
0 12 1 entry Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
MethodParameters:
Name Flags
entry
protected void updateEntry(org.apache.commons.collections.map.AbstractHashedMap$HashEntry, java.lang.Object);
descriptor: (Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
aload 1
checkcast org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry
invokevirtual org.apache.commons.collections.map.LRUMap.moveToMRU:(Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)V
1: aload 1
aload 2
invokevirtual org.apache.commons.collections.map.AbstractHashedMap$HashEntry.setValue:(Ljava/lang/Object;)Ljava/lang/Object;
pop
2: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 entry Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
0 3 2 newValue Ljava/lang/Object;
MethodParameters:
Name Flags
entry
newValue
protected void addMapping(int, int, java.lang.Object, java.lang.Object);
descriptor: (IILjava/lang/Object;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 0
invokevirtual org.apache.commons.collections.map.LRUMap.isFull:()Z
ifeq 32
1: aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
astore 5
start local 5 2: iconst_0
istore 6
start local 6 3: aload 0
getfield org.apache.commons.collections.map.LRUMap.scanUntilRemovable:Z
ifeq 18
4: goto 9
5: StackMap locals: org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry int
StackMap stack:
aload 0
aload 5
invokevirtual org.apache.commons.collections.map.LRUMap.removeLRU:(Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)Z
ifeq 8
6: iconst_1
istore 6
7: goto 10
8: StackMap locals:
StackMap stack:
aload 5
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
astore 5
9: StackMap locals:
StackMap stack:
aload 5
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
if_acmpeq 10
aload 5
ifnonnull 5
10: StackMap locals:
StackMap stack:
aload 5
ifnonnull 19
11: new java.lang.IllegalStateException
dup
12: new java.lang.StringBuilder
dup
ldc "Entry.after=null, header.after"
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " header.before"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
13: ldc " key="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " value="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " size="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.size:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " maxSize="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
14: ldc " Please check that your keys are immutable, and that you have used synchronization properly."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
15: ldc " If so, then please report this to commons-dev@jakarta.apache.org as a bug."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
16: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
17: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
18: StackMap locals:
StackMap stack:
aload 0
aload 5
invokevirtual org.apache.commons.collections.map.LRUMap.removeLRU:(Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)Z
istore 6
19: StackMap locals:
StackMap stack:
iload 6
ifeq 30
20: aload 5
ifnonnull 28
21: new java.lang.IllegalStateException
dup
22: new java.lang.StringBuilder
dup
ldc "reuse=null, header.after="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.after:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " header.before"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.before:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
23: ldc " key="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " value="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " size="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.size:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " maxSize="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
24: ldc " Please check that your keys are immutable, and that you have used synchronization properly."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
25: ldc " If so, then please report this to commons-dev@jakarta.apache.org as a bug."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
28: StackMap locals:
StackMap stack:
aload 0
aload 5
iload 1
iload 2
aload 3
aload 4
invokevirtual org.apache.commons.collections.map.LRUMap.reuseMapping:(Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;IILjava/lang/Object;Ljava/lang/Object;)V
29: goto 33
30: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
aload 3
aload 4
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.addMapping:(IILjava/lang/Object;Ljava/lang/Object;)V
end local 6 end local 5 31: goto 33
32: StackMap locals:
StackMap stack:
aload 0
iload 1
iload 2
aload 3
aload 4
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.addMapping:(IILjava/lang/Object;Ljava/lang/Object;)V
33: StackMap locals:
StackMap stack:
return
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 34 0 this Lorg/apache/commons/collections/map/LRUMap;
0 34 1 hashIndex I
0 34 2 hashCode I
0 34 3 key Ljava/lang/Object;
0 34 4 value Ljava/lang/Object;
2 31 5 reuse Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
3 31 6 removeLRUEntry Z
MethodParameters:
Name Flags
hashIndex
hashCode
key
value
protected void reuseMapping(org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry, int, int, java.lang.Object, java.lang.Object);
descriptor: (Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;IILjava/lang/Object;Ljava/lang/Object;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=6, locals=10, args_size=6
start local 0 start local 1 start local 2 start local 3 start local 4 start local 5 0: aload 0
aload 1
getfield org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry.hashCode:I
aload 0
getfield org.apache.commons.collections.map.LRUMap.data:[Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
arraylength
invokevirtual org.apache.commons.collections.map.LRUMap.hashIndex:(II)I
istore 6
start local 6 1: aload 0
getfield org.apache.commons.collections.map.LRUMap.data:[Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
astore 7
start local 7 2: aload 7
iload 6
aaload
astore 8
start local 8 3: aconst_null
astore 9
start local 9 4: goto 7
5: StackMap locals: org.apache.commons.collections.map.LRUMap org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry int int java.lang.Object java.lang.Object int org.apache.commons.collections.map.AbstractHashedMap$HashEntry[] org.apache.commons.collections.map.AbstractHashedMap$HashEntry org.apache.commons.collections.map.AbstractHashedMap$HashEntry
StackMap stack:
aload 8
astore 9
6: aload 8
getfield org.apache.commons.collections.map.AbstractHashedMap$HashEntry.next:Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
astore 8
7: StackMap locals:
StackMap stack:
aload 8
aload 1
if_acmpeq 8
aload 8
ifnonnull 5
8: StackMap locals:
StackMap stack:
aload 8
ifnonnull 16
9: new java.lang.IllegalStateException
dup
10: new java.lang.StringBuilder
dup
ldc "Entry.next=null, data[removeIndex]="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 0
getfield org.apache.commons.collections.map.LRUMap.data:[Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
iload 6
aaload
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " previous="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 9
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11: ldc " key="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " value="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " size="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.size:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " maxSize="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
12: ldc " Please check that your keys are immutable, and that you have used synchronization properly."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
13: ldc " If so, then please report this to commons-dev@jakarta.apache.org as a bug."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
14: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
15: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
16: StackMap locals:
StackMap stack:
aload 0
dup
getfield org.apache.commons.collections.map.LRUMap.modCount:I
iconst_1
iadd
putfield org.apache.commons.collections.map.LRUMap.modCount:I
17: aload 0
aload 1
iload 6
aload 9
invokevirtual org.apache.commons.collections.map.LRUMap.removeEntry:(Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;ILorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;)V
18: aload 0
aload 1
iload 2
iload 3
aload 4
aload 5
invokevirtual org.apache.commons.collections.map.LRUMap.reuseEntry:(Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;IILjava/lang/Object;Ljava/lang/Object;)V
19: aload 0
aload 1
iload 2
invokevirtual org.apache.commons.collections.map.LRUMap.addEntry:(Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;I)V
end local 9 end local 8 end local 7 end local 6 20: goto 31
StackMap locals: org.apache.commons.collections.map.LRUMap org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry int int java.lang.Object java.lang.Object
StackMap stack: java.lang.NullPointerException
21: pop
22: new java.lang.IllegalStateException
dup
23: new java.lang.StringBuilder
dup
ldc "NPE, entry="
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " entryIsHeader="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 1
aload 0
getfield org.apache.commons.collections.map.LRUMap.header:Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
if_acmpne 24
iconst_1
goto 25
StackMap locals: org.apache.commons.collections.map.LRUMap org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry int int java.lang.Object java.lang.Object
StackMap stack: new 22 new 22 java.lang.StringBuilder
24: iconst_0
StackMap locals: org.apache.commons.collections.map.LRUMap org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry int int java.lang.Object java.lang.Object
StackMap stack: new 22 new 22 java.lang.StringBuilder int
25: invokevirtual java.lang.StringBuilder.append:(Z)Ljava/lang/StringBuilder;
26: ldc " key="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 4
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " value="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 5
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc " size="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.size:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
ldc " maxSize="
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
invokevirtual java.lang.StringBuilder.append:(I)Ljava/lang/StringBuilder;
27: ldc " Please check that your keys are immutable, and that you have used synchronization properly."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
28: ldc " If so, then please report this to commons-dev@jakarta.apache.org as a bug."
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
29: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
30: invokespecial java.lang.IllegalStateException.<init>:(Ljava/lang/String;)V
athrow
31: StackMap locals:
StackMap stack:
return
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 32 0 this Lorg/apache/commons/collections/map/LRUMap;
0 32 1 entry Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
0 32 2 hashIndex I
0 32 3 hashCode I
0 32 4 key Ljava/lang/Object;
0 32 5 value Ljava/lang/Object;
1 20 6 removeIndex I
2 20 7 tmp [Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
3 20 8 loop Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
4 20 9 previous Lorg/apache/commons/collections/map/AbstractHashedMap$HashEntry;
Exception table:
from to target type
0 20 21 Class java.lang.NullPointerException
MethodParameters:
Name Flags
entry
hashIndex
hashCode
key
value
protected boolean removeLRU(org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry);
descriptor: (Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;)Z
flags: (0x0004) ACC_PROTECTED
Code:
stack=1, locals=2, args_size=2
start local 0 start local 1 0: iconst_1
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections/map/LRUMap;
0 1 1 entry Lorg/apache/commons/collections/map/AbstractLinkedMap$LinkEntry;
MethodParameters:
Name Flags
entry
public boolean isFull();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections.map.LRUMap.size:I
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
if_icmplt 1
iconst_1
ireturn
StackMap locals:
StackMap stack:
1: iconst_0
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/commons/collections/map/LRUMap;
public int maxSize();
descriptor: ()I
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections/map/LRUMap;
public boolean isScanUntilRemovable();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.apache.commons.collections.map.LRUMap.scanUntilRemovable:Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections/map/LRUMap;
public java.lang.Object clone();
descriptor: ()Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.clone:()Ljava/lang/Object;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/apache/commons/collections/map/LRUMap;
private void writeObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectOutputStream.defaultWriteObject:()V
1: aload 0
aload 1
invokevirtual org.apache.commons.collections.map.LRUMap.doWriteObject:(Ljava/io/ObjectOutputStream;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 out Ljava/io/ObjectOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
private void readObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
invokevirtual java.io.ObjectInputStream.defaultReadObject:()V
1: aload 0
aload 1
invokevirtual org.apache.commons.collections.map.LRUMap.doReadObject:(Ljava/io/ObjectInputStream;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 in Ljava/io/ObjectInputStream;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
in
protected void doWriteObject(java.io.ObjectOutputStream);
descriptor: (Ljava/io/ObjectOutputStream;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 1
aload 0
getfield org.apache.commons.collections.map.LRUMap.maxSize:I
invokevirtual java.io.ObjectOutputStream.writeInt:(I)V
1: aload 0
aload 1
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.doWriteObject:(Ljava/io/ObjectOutputStream;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 out Ljava/io/ObjectOutputStream;
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
out
protected void doReadObject(java.io.ObjectInputStream);
descriptor: (Ljava/io/ObjectInputStream;)V
flags: (0x0004) ACC_PROTECTED
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
aload 1
invokevirtual java.io.ObjectInputStream.readInt:()I
putfield org.apache.commons.collections.map.LRUMap.maxSize:I
1: aload 0
aload 1
invokespecial org.apache.commons.collections.map.AbstractLinkedMap.doReadObject:(Ljava/io/ObjectInputStream;)V
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/apache/commons/collections/map/LRUMap;
0 3 1 in Ljava/io/ObjectInputStream;
Exceptions:
throws java.io.IOException, java.lang.ClassNotFoundException
MethodParameters:
Name Flags
in
}
SourceFile: "LRUMap.java"
InnerClasses:
protected HashEntry = org.apache.commons.collections.map.AbstractHashedMap$HashEntry of org.apache.commons.collections.map.AbstractHashedMap
protected LinkEntry = org.apache.commons.collections.map.AbstractLinkedMap$LinkEntry of org.apache.commons.collections.map.AbstractLinkedMap