public class org.ehcache.impl.internal.events.StoreEventImpl<K, V> implements org.ehcache.core.spi.store.events.StoreEvent<K, V>
  minor version: 0
  major version: 59
  flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
  this_class: org.ehcache.impl.internal.events.StoreEventImpl
  super_class: java.lang.Object
{
  private final org.ehcache.event.EventType type;
    descriptor: Lorg/ehcache/event/EventType;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private final K key;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TK;

  private final V oldValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TV;

  private final V newValue;
    descriptor: Ljava/lang/Object;
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL
    Signature: TV;

  public void <init>(org.ehcache.event.EventType, K, V, );
    descriptor: (Lorg/ehcache/event/EventType;Ljava/lang/Object;Ljava/lang/Object;Ljava/lang/Object;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=5, args_size=5
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
        start local 1 // org.ehcache.event.EventType type
        start local 2 // java.lang.Object key
        start local 3 // java.lang.Object oldValue
        start local 4 // java.lang.Object newValue
         0: .line 34
            aload 0 /* this */
            invokespecial java.lang.Object.<init>:()V
         1: .line 35
            aload 0 /* this */
            aload 1 /* type */
            putfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
         2: .line 36
            aload 0 /* this */
            aload 2 /* key */
            putfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
         3: .line 37
            aload 0 /* this */
            aload 3 /* oldValue */
            putfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
         4: .line 38
            aload 0 /* this */
            aload 4 /* newValue */
            putfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
         5: .line 39
            return
        end local 4 // java.lang.Object newValue
        end local 3 // java.lang.Object oldValue
        end local 2 // java.lang.Object key
        end local 1 // org.ehcache.event.EventType type
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    6     0      this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
            0    6     1      type  Lorg/ehcache/event/EventType;
            0    6     2       key  TK;
            0    6     3  oldValue  TV;
            0    6     4  newValue  TV;
    Signature: (Lorg/ehcache/event/EventType;TK;TV;TV;)V
    MethodParameters:
          Name  Flags
      type      
      key       
      oldValue  
      newValue  

  public org.ehcache.event.EventType getType();
    descriptor: ()Lorg/ehcache/event/EventType;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 43
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
            areturn
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;

  public K getKey();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 48
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
            areturn
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
    Signature: ()TK;

  public V getNewValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 53
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            areturn
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
    Signature: ()TV;

  public V getOldValue();
    descriptor: ()Ljava/lang/Object;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 58
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            areturn
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
    Signature: ()TV;

  public boolean equals(java.lang.Object);
    descriptor: (Ljava/lang/Object;)Z
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=3, args_size=2
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
        start local 1 // java.lang.Object o
         0: .line 63
            aload 0 /* this */
            aload 1 /* o */
            if_acmpne 2
         1: .line 64
            iconst_1
            ireturn
         2: .line 66
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            ifnull 3
            aload 0 /* this */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            aload 1 /* o */
            invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
            if_acmpeq 4
         3: .line 67
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
         4: .line 70
      StackMap locals:
      StackMap stack:
            aload 1 /* o */
            checkcast org.ehcache.impl.internal.events.StoreEventImpl
            astore 2 /* that */
        start local 2 // org.ehcache.impl.internal.events.StoreEventImpl that
         5: .line 72
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
            aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
            if_acmpeq 7
         6: .line 73
            iconst_0
            ireturn
         7: .line 75
      StackMap locals: org.ehcache.impl.internal.events.StoreEventImpl
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
            aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 9
         8: .line 76
            iconst_0
            ireturn
         9: .line 78
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            ifnull 10
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            ifne 12
            goto 11
      StackMap locals:
      StackMap stack:
        10: aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            ifnull 12
        11: .line 79
      StackMap locals:
      StackMap stack:
            iconst_0
            ireturn
        12: .line 81
      StackMap locals:
      StackMap stack:
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            ifnull 13
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            invokevirtual java.lang.Object.equals:(Ljava/lang/Object;)Z
            goto 15
      StackMap locals:
      StackMap stack:
        13: aload 2 /* that */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            ifnonnull 14
            iconst_1
            goto 15
      StackMap locals:
      StackMap stack:
        14: iconst_0
      StackMap locals:
      StackMap stack: int
        15: ireturn
        end local 2 // org.ehcache.impl.internal.events.StoreEventImpl that
        end local 1 // java.lang.Object o
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0   16     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
            0   16     1     o  Ljava/lang/Object;
            5   16     2  that  Lorg/ehcache/impl/internal/events/StoreEventImpl<**>;
    MethodParameters:
      Name  Flags
      o     

  public int hashCode();
    descriptor: ()I
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=2, locals=2, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 87
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
            invokevirtual org.ehcache.event.EventType.hashCode:()I
            istore 1 /* result */
        start local 1 // int result
         1: .line 88
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
            invokevirtual java.lang.Object.hashCode:()I
            iadd
            istore 1 /* result */
         2: .line 89
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            ifnull 3
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.oldValue:Ljava/lang/Object;
            invokevirtual java.lang.Object.hashCode:()I
            goto 4
      StackMap locals: org.ehcache.impl.internal.events.StoreEventImpl int
      StackMap stack: int
         3: iconst_0
      StackMap locals: org.ehcache.impl.internal.events.StoreEventImpl int
      StackMap stack: int int
         4: iadd
            istore 1 /* result */
         5: .line 90
            bipush 31
            iload 1 /* result */
            imul
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            ifnull 6
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.newValue:Ljava/lang/Object;
            invokevirtual java.lang.Object.hashCode:()I
            goto 7
      StackMap locals:
      StackMap stack: int
         6: iconst_0
      StackMap locals: org.ehcache.impl.internal.events.StoreEventImpl int
      StackMap stack: int int
         7: iadd
            istore 1 /* result */
         8: .line 91
            iload 1 /* result */
            ireturn
        end local 1 // int result
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot    Name  Signature
            0    9     0    this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
            1    9     1  result  I

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=5, locals=1, args_size=1
        start local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
         0: .line 96
            ldc "Event of type %s for key %s"
            iconst_2
            anewarray java.lang.Object
            dup
            iconst_0
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.type:Lorg/ehcache/event/EventType;
            aastore
            dup
            iconst_1
            aload 0 /* this */
            getfield org.ehcache.impl.internal.events.StoreEventImpl.key:Ljava/lang/Object;
            aastore
            invokestatic java.lang.String.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
            areturn
        end local 0 // org.ehcache.impl.internal.events.StoreEventImpl this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/ehcache/impl/internal/events/StoreEventImpl<TK;TV;>;
}
Signature: <K:Ljava/lang/Object;V:Ljava/lang/Object;>Ljava/lang/Object;Lorg/ehcache/core/spi/store/events/StoreEvent<TK;TV;>;
SourceFile: "StoreEventImpl.java"