final class com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand extends com.microsoft.sqlserver.jdbc.TDSCommand
  minor version: 0
  major version: 59
  flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
  this_class: com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand
  super_class: com.microsoft.sqlserver.jdbc.TDSCommand
{
  private static final long serialVersionUID;
    descriptor: J
    flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
    ConstantValue: 1

  private final int serverCursorId;
    descriptor: I
    flags: (0x0012) ACC_PRIVATE, ACC_FINAL

  private int fetchType;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int startRow;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  private int numRows;
    descriptor: I
    flags: (0x0002) ACC_PRIVATE

  final com.microsoft.sqlserver.jdbc.SQLServerResultSet this$0;
    descriptor: Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
    flags: (0x1010) ACC_FINAL, ACC_SYNTHETIC

  void <init>(com.microsoft.sqlserver.jdbc.SQLServerResultSet, int, int, int, int);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;IIII)V
    flags: (0x0000) 
    Code:
      stack=4, locals=6, args_size=6
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
        start local 2 // int serverCursorId
        start local 3 // int fetchType
        start local 4 // int startRow
        start local 5 // int numRows
         0: .line 5467
            aload 0 /* this */
            aload 1
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
         1: .line 5468
            aload 0 /* this */
            ldc "doServerFetch"
            aload 1
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.stmt:Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            getfield com.microsoft.sqlserver.jdbc.SQLServerStatement.queryTimeout:I
            aload 1
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.stmt:Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            getfield com.microsoft.sqlserver.jdbc.SQLServerStatement.cancelQueryTimeoutSeconds:I
            invokespecial com.microsoft.sqlserver.jdbc.TDSCommand.<init>:(Ljava/lang/String;II)V
         2: .line 5469
            aload 0 /* this */
            iload 2 /* serverCursorId */
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.serverCursorId:I
         3: .line 5470
            aload 0 /* this */
            iload 3 /* fetchType */
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.fetchType:I
         4: .line 5471
            aload 0 /* this */
            iload 4 /* startRow */
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.startRow:I
         5: .line 5472
            aload 0 /* this */
            iload 5 /* numRows */
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.numRows:I
         6: .line 5473
            return
        end local 5 // int numRows
        end local 4 // int startRow
        end local 3 // int fetchType
        end local 2 // int serverCursorId
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
      LocalVariableTable:
        Start  End  Slot            Name  Signature
            0    7     0            this  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet$CursorFetchCommand;
            0    7     2  serverCursorId  I
            0    7     3       fetchType  I
            0    7     4        startRow  I
            0    7     5         numRows  I
    MethodParameters:
                Name  Flags
      this$0          final
      serverCursorId  
      fetchType       
      startRow        
      numRows         

  final boolean doExecute();
    descriptor: ()Z
    flags: (0x0010) ACC_FINAL
    Code:
      stack=4, locals=2, args_size=1
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
         0: .line 5476
            aload 0 /* this */
            iconst_3
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.startRequest:(B)Lcom/microsoft/sqlserver/jdbc/TDSWriter;
            astore 1 /* tdsWriter */
        start local 1 // com.microsoft.sqlserver.jdbc.TDSWriter tdsWriter
         1: .line 5477
            aload 1 /* tdsWriter */
            iconst_m1
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeShort:(S)V
         2: .line 5478
            aload 1 /* tdsWriter */
            bipush 7
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeShort:(S)V
         3: .line 5479
            aload 1 /* tdsWriter */
            iconst_2
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeByte:(B)V
         4: .line 5480
            aload 1 /* tdsWriter */
            iconst_0
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeByte:(B)V
         5: .line 5481
            aload 1 /* tdsWriter */
            aconst_null
            aconst_null
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.sendEnclavePackage:(Ljava/lang/String;Ljava/util/ArrayList;)V
         6: .line 5482
            aload 1 /* tdsWriter */
            aconst_null
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.serverCursorId:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_0
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeRPCInt:(Ljava/lang/String;Ljava/lang/Integer;Z)V
         7: .line 5483
            aload 1 /* tdsWriter */
            aconst_null
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.fetchType:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_0
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeRPCInt:(Ljava/lang/String;Ljava/lang/Integer;Z)V
         8: .line 5484
            aload 1 /* tdsWriter */
            aconst_null
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.startRow:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_0
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeRPCInt:(Ljava/lang/String;Ljava/lang/Integer;Z)V
         9: .line 5485
            aload 1 /* tdsWriter */
            aconst_null
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.numRows:I
            invokestatic java.lang.Integer.valueOf:(I)Ljava/lang/Integer;
            iconst_0
            invokevirtual com.microsoft.sqlserver.jdbc.TDSWriter.writeRPCInt:(Ljava/lang/String;Ljava/lang/Integer;Z)V
        10: .line 5493
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            aload 0 /* this */
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.isForwardOnly:()Z
            ifeq 13
            sipush 1007
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.stmt:Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            getfield com.microsoft.sqlserver.jdbc.SQLServerStatement.resultSetConcurrency:I
            if_icmpeq 13
        11: .line 5494
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.stmt:Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.getExecProps:()Lcom/microsoft/sqlserver/jdbc/SQLServerStatement$ExecuteProperties;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement$ExecuteProperties.wasResponseBufferingSet:()Z
            ifeq 13
        12: .line 5495
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.stmt:Lcom/microsoft/sqlserver/jdbc/SQLServerStatement;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement.getExecProps:()Lcom/microsoft/sqlserver/jdbc/SQLServerStatement$ExecuteProperties;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerStatement$ExecuteProperties.isResponseBufferingAdaptive:()Z
            ifeq 13
            iconst_1
            goto 14
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand com.microsoft.sqlserver.jdbc.TDSWriter
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerResultSet com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand
        13: iconst_0
        14: .line 5493
      StackMap locals: com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand com.microsoft.sqlserver.jdbc.TDSWriter
      StackMap stack: com.microsoft.sqlserver.jdbc.SQLServerResultSet com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand int
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.startResponse:(Z)Lcom/microsoft/sqlserver/jdbc/TDSReader;
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.tdsReader:Lcom/microsoft/sqlserver/jdbc/TDSReader;
        15: .line 5497
            iconst_0
            ireturn
        end local 1 // com.microsoft.sqlserver.jdbc.TDSWriter tdsWriter
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
      LocalVariableTable:
        Start  End  Slot       Name  Signature
            0   16     0       this  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet$CursorFetchCommand;
            1   16     1  tdsWriter  Lcom/microsoft/sqlserver/jdbc/TDSWriter;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException

  final void processResponse(com.microsoft.sqlserver.jdbc.TDSReader);
    descriptor: (Lcom/microsoft/sqlserver/jdbc/TDSReader;)V
    flags: (0x0010) ACC_FINAL
    Code:
      stack=2, locals=2, args_size=2
        start local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
        start local 1 // com.microsoft.sqlserver.jdbc.TDSReader responseTDSReader
         0: .line 5501
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            aload 1 /* responseTDSReader */
            putfield com.microsoft.sqlserver.jdbc.SQLServerResultSet.tdsReader:Lcom/microsoft/sqlserver/jdbc/TDSReader;
         1: .line 5502
            aload 0 /* this */
            getfield com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand.this$0:Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet;
            invokevirtual com.microsoft.sqlserver.jdbc.SQLServerResultSet.discardFetchBuffer:()V
         2: .line 5503
            return
        end local 1 // com.microsoft.sqlserver.jdbc.TDSReader responseTDSReader
        end local 0 // com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand this
      LocalVariableTable:
        Start  End  Slot               Name  Signature
            0    3     0               this  Lcom/microsoft/sqlserver/jdbc/SQLServerResultSet$CursorFetchCommand;
            0    3     1  responseTDSReader  Lcom/microsoft/sqlserver/jdbc/TDSReader;
    Exceptions:
      throws com.microsoft.sqlserver.jdbc.SQLServerException
    MethodParameters:
                   Name  Flags
      responseTDSReader  
}
SourceFile: "SQLServerResultSet.java"
NestHost: com.microsoft.sqlserver.jdbc.SQLServerResultSet
InnerClasses:
  private final CursorFetchCommand = com.microsoft.sqlserver.jdbc.SQLServerResultSet$CursorFetchCommand of com.microsoft.sqlserver.jdbc.SQLServerResultSet
  final ExecuteProperties = com.microsoft.sqlserver.jdbc.SQLServerStatement$ExecuteProperties of com.microsoft.sqlserver.jdbc.SQLServerStatement