class org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy extends org.apache.cassandra.utils.CoalescingStrategies$CoalescingStrategy
  minor version: 0
  major version: 59
  flags: flags: (0x0020) ACC_SUPER
  this_class: org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy
  super_class: org.apache.cassandra.utils.CoalescingStrategies$CoalescingStrategy
{
  private final long coalesceWindow;
    descriptor: J
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  public void <init>(int, org.apache.cassandra.utils.CoalescingStrategies$Parker, org.slf4j.Logger, java.lang.String);
    descriptor: (ILorg/apache/cassandra/utils/CoalescingStrategies$Parker;Lorg/slf4j/Logger;Ljava/lang/String;)V
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=4, locals=5, args_size=5
        start local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
        start local 1 // int coalesceWindowMicros
        start local 2 // org.apache.cassandra.utils.CoalescingStrategies$Parker parker
        start local 3 // org.slf4j.Logger logger
        start local 4 // java.lang.String displayName
         0: .line 464
            aload 0 /* this */
            aload 2 /* parker */
            aload 3 /* logger */
            aload 4 /* displayName */
            invokespecial org.apache.cassandra.utils.CoalescingStrategies$CoalescingStrategy.<init>:(Lorg/apache/cassandra/utils/CoalescingStrategies$Parker;Lorg/slf4j/Logger;Ljava/lang/String;)V
         1: .line 465
            aload 0 /* this */
            getstatic java.util.concurrent.TimeUnit.MICROSECONDS:Ljava/util/concurrent/TimeUnit;
            iload 1 /* coalesceWindowMicros */
            i2l
            invokevirtual java.util.concurrent.TimeUnit.toNanos:(J)J
            putfield org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy.coalesceWindow:J
         2: .line 466
            return
        end local 4 // java.lang.String displayName
        end local 3 // org.slf4j.Logger logger
        end local 2 // org.apache.cassandra.utils.CoalescingStrategies$Parker parker
        end local 1 // int coalesceWindowMicros
        end local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
      LocalVariableTable:
        Start  End  Slot                  Name  Signature
            0    3     0                  this  Lorg/apache/cassandra/utils/CoalescingStrategies$FixedCoalescingStrategy;
            0    3     1  coalesceWindowMicros  I
            0    3     2                parker  Lorg/apache/cassandra/utils/CoalescingStrategies$Parker;
            0    3     3                logger  Lorg/slf4j/Logger;
            0    3     4           displayName  Ljava/lang/String;
    MethodParameters:
                      Name  Flags
      coalesceWindowMicros  
      parker                
      logger                
      displayName           

  protected <C extends org.apache.cassandra.utils.CoalescingStrategies$Coalescable> void coalesceInternal(java.util.concurrent.BlockingQueue<C>, java.util.List<C>, );
    descriptor: (Ljava/util/concurrent/BlockingQueue;Ljava/util/List;I)V
    flags: (0x0004) ACC_PROTECTED
    Code:
      stack=4, locals=5, args_size=4
        start local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
        start local 1 // java.util.concurrent.BlockingQueue input
        start local 2 // java.util.List out
        start local 3 // int maxItems
         0: .line 471
            invokestatic org.apache.cassandra.config.DatabaseDescriptor.getOtcCoalescingEnoughCoalescedMessages:()I
            istore 4 /* enough */
        start local 4 // int enough
         1: .line 473
            aload 1 /* input */
            aload 2 /* out */
            iload 3 /* maxItems */
            invokeinterface java.util.concurrent.BlockingQueue.drainTo:(Ljava/util/Collection;I)I
            ifne 7
         2: .line 475
            aload 2 /* out */
            aload 1 /* input */
            invokeinterface java.util.concurrent.BlockingQueue.take:()Ljava/lang/Object;
            checkcast org.apache.cassandra.utils.CoalescingStrategies$Coalescable
            invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
            pop
         3: .line 476
            aload 1 /* input */
            aload 2 /* out */
            iload 3 /* maxItems */
            aload 2 /* out */
            invokeinterface java.util.List.size:()I
            isub
            invokeinterface java.util.concurrent.BlockingQueue.drainTo:(Ljava/util/Collection;I)I
            pop
         4: .line 477
            aload 2 /* out */
            invokeinterface java.util.List.size:()I
            iload 4 /* enough */
            if_icmpge 7
         5: .line 478
            aload 0 /* this */
            getfield org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy.parker:Lorg/apache/cassandra/utils/CoalescingStrategies$Parker;
            aload 0 /* this */
            getfield org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy.coalesceWindow:J
            invokeinterface org.apache.cassandra.utils.CoalescingStrategies$Parker.park:(J)V
         6: .line 479
            aload 1 /* input */
            aload 2 /* out */
            iload 3 /* maxItems */
            aload 2 /* out */
            invokeinterface java.util.List.size:()I
            isub
            invokeinterface java.util.concurrent.BlockingQueue.drainTo:(Ljava/util/Collection;I)I
            pop
         7: .line 482
      StackMap locals: int
      StackMap stack:
            aload 0 /* this */
            aload 2 /* out */
            invokevirtual org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy.debugTimestamps:(Ljava/util/Collection;)V
         8: .line 483
            return
        end local 4 // int enough
        end local 3 // int maxItems
        end local 2 // java.util.List out
        end local 1 // java.util.concurrent.BlockingQueue input
        end local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
      LocalVariableTable:
        Start  End  Slot      Name  Signature
            0    9     0      this  Lorg/apache/cassandra/utils/CoalescingStrategies$FixedCoalescingStrategy;
            0    9     1     input  Ljava/util/concurrent/BlockingQueue<TC;>;
            0    9     2       out  Ljava/util/List<TC;>;
            0    9     3  maxItems  I
            1    9     4    enough  I
    Exceptions:
      throws java.lang.InterruptedException
    Signature: <C::Lorg/apache/cassandra/utils/CoalescingStrategies$Coalescable;>(Ljava/util/concurrent/BlockingQueue<TC;>;Ljava/util/List<TC;>;I)V
    MethodParameters:
          Name  Flags
      input     
      out       
      maxItems  

  public java.lang.String toString();
    descriptor: ()Ljava/lang/String;
    flags: (0x0001) ACC_PUBLIC
    Code:
      stack=1, locals=1, args_size=1
        start local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
         0: .line 488
            ldc "Fixed"
            areturn
        end local 0 // org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy this
      LocalVariableTable:
        Start  End  Slot  Name  Signature
            0    1     0  this  Lorg/apache/cassandra/utils/CoalescingStrategies$FixedCoalescingStrategy;
}
SourceFile: "CoalescingStrategies.java"
NestHost: org.apache.cassandra.utils.CoalescingStrategies
InnerClasses:
  public abstract Coalescable = org.apache.cassandra.utils.CoalescingStrategies$Coalescable of org.apache.cassandra.utils.CoalescingStrategies
  public abstract CoalescingStrategy = org.apache.cassandra.utils.CoalescingStrategies$CoalescingStrategy of org.apache.cassandra.utils.CoalescingStrategies
  FixedCoalescingStrategy = org.apache.cassandra.utils.CoalescingStrategies$FixedCoalescingStrategy of org.apache.cassandra.utils.CoalescingStrategies
  abstract Parker = org.apache.cassandra.utils.CoalescingStrategies$Parker of org.apache.cassandra.utils.CoalescingStrategies
    RuntimeInvisibleAnnotations: 
      com.google.common.annotations.VisibleForTesting()