test_class.declarator: byteBuf
test_class.modifier: @Mock
      private
test_class.original_string: @Mock
      private ByteBuf byteBuf;
test_class.type: ByteBuf
test_class.var_name: byteBuf
test_class.file: shardingsphere-scaling/shardingsphere-scaling-mysql/src/test/java/org/apache/shardingsphere/scaling/mysql/client/netty/MySQLCommandPacketDecoderTest.java
test_class.identifier: MySQLCommandPacketDecoderTest
test_case.body: @Test(expected = IllegalArgumentException.class)
      public void assertDecodeUnsupportedProtocolVersion() {
          MySQLCommandPacketDecoder commandPacketDecoder = new MySQLCommandPacketDecoder();
          commandPacketDecoder.decode(null, byteBuf, null);
      }
test_case.class_method_signature: MySQLCommandPacketDecoderTest.assertDecodeUnsupportedProtocolVersion()
test_case.full_signature: @Test(expected = IllegalArgumentException.class) public void assertDecodeUnsupportedProtocolVersion()
test_case.identifier: assertDecodeUnsupportedProtocolVersion
test_case.invocations: decode
test_case.modifiers: @Test(expected = IllegalArgumentException.class) public
test_case.parameters: ()
test_case.return: void
test_case.signature: void assertDecodeUnsupportedProtocolVersion()
focal_class.declarator: currentState = States.ResponsePacket
focal_class.modifier: private
focal_class.original_string: private States currentState = States.ResponsePacket;
focal_class.type: States
focal_class.var_name: currentState
focal_class.declarator: auth
focal_class.modifier: private
focal_class.original_string: private boolean auth;
focal_class.type: boolean
focal_class.var_name: auth
focal_class.declarator: internalResultSet
focal_class.modifier: private
focal_class.original_string: private InternalResultSet internalResultSet;
focal_class.type: InternalResultSet
focal_class.var_name: internalResultSet
focal_class.file: shardingsphere-scaling/shardingsphere-scaling-mysql/src/main/java/org/apache/shardingsphere/scaling/mysql/client/netty/MySQLCommandPacketDecoder.java
focal_class.identifier: MySQLCommandPacketDecoder
focal_class.class_method_signature: MySQLCommandPacketDecoder.decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_class.full_signature: @Override protected void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_class.identifier: decode
focal_class.modifiers: @Override protected
focal_class.parameters: (final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_class.return: void
focal_class.signature: void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_class.class_method_signature: MySQLCommandPacketDecoder.decodeCommandPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.full_signature: private void decodeCommandPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.identifier: decodeCommandPacket
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload, final List<Object> out)
focal_class.return: void
focal_class.signature: void decodeCommandPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.class_method_signature: MySQLCommandPacketDecoder.decodeHandshakePacket(final MySQLPacketPayload payload)
focal_class.full_signature: private MySQLHandshakePacket decodeHandshakePacket(final MySQLPacketPayload payload)
focal_class.identifier: decodeHandshakePacket
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload)
focal_class.return: MySQLHandshakePacket
focal_class.signature: MySQLHandshakePacket decodeHandshakePacket(final MySQLPacketPayload payload)
focal_class.class_method_signature: MySQLCommandPacketDecoder.decodeFieldPacket(final MySQLPacketPayload payload)
focal_class.full_signature: private void decodeFieldPacket(final MySQLPacketPayload payload)
focal_class.identifier: decodeFieldPacket
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload)
focal_class.return: void
focal_class.signature: void decodeFieldPacket(final MySQLPacketPayload payload)
focal_class.class_method_signature: MySQLCommandPacketDecoder.decodeRowDataPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.full_signature: private void decodeRowDataPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.identifier: decodeRowDataPacket
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload, final List<Object> out)
focal_class.return: void
focal_class.signature: void decodeRowDataPacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.class_method_signature: MySQLCommandPacketDecoder.decodeResponsePacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.full_signature: private void decodeResponsePacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.identifier: decodeResponsePacket
focal_class.modifiers: private
focal_class.parameters: (final MySQLPacketPayload payload, final List<Object> out)
focal_class.return: void
focal_class.signature: void decodeResponsePacket(final MySQLPacketPayload payload, final List<Object> out)
focal_class.superclass: extends ByteToMessageDecoder
focal_method.body: @Override
      protected void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out) {
          // first packet from server is handshake initialization packet
          MySQLPacketPayload payload = new MySQLPacketPayload(in);
          if (!auth) {
              out.add(decodeHandshakePacket(payload));
              auth = true;
          } else {
              decodeCommandPacket(payload, out);
          }
      }
focal_method.class_method_signature: MySQLCommandPacketDecoder.decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_method.full_signature: @Override protected void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_method.identifier: decode
focal_method.invocations: add decodeHandshakePacket decodeCommandPacket
focal_method.modifiers: @Override protected
focal_method.parameters: (final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)
focal_method.return: void
focal_method.signature: void decode(final ChannelHandlerContext ctx, final ByteBuf in, final List<Object> out)