class io.netty.handler.codec.http2.DefaultHttp2Headers$2 implements io.netty.handler.codec.DefaultHeaders$NameValidator<java.lang.CharSequence>
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: io.netty.handler.codec.http2.DefaultHttp2Headers$2
super_class: java.lang.Object
{
void <init>();
descriptor: ()V
flags: (0x0000)
Code:
stack=1, locals=1, args_size=1
start local 0 // io.netty.handler.codec.http2.DefaultHttp2Headers$2 this
0: .line 40
aload 0 /* this */
invokespecial java.lang.Object.<init>:()V
return
end local 0 // io.netty.handler.codec.http2.DefaultHttp2Headers$2 this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lio/netty/handler/codec/http2/DefaultHttp2Headers$2;
public void validateName(java.lang.CharSequence);
descriptor: (Ljava/lang/CharSequence;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=7, locals=4, args_size=2
start local 0 // io.netty.handler.codec.http2.DefaultHttp2Headers$2 this
start local 1 // java.lang.CharSequence name
0: .line 43
aload 1 /* name */
ifnull 1
aload 1 /* name */
invokeinterface java.lang.CharSequence.length:()I
ifne 4
1: .line 44
StackMap locals:
StackMap stack:
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
2: .line 45
ldc "empty headers are not allowed [%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1 /* name */
aastore
3: .line 44
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
4: .line 47
StackMap locals:
StackMap stack:
aload 1 /* name */
instanceof io.netty.util.AsciiString
ifeq 20
5: .line 50
aload 1 /* name */
checkcast io.netty.util.AsciiString
getstatic io.netty.handler.codec.http2.DefaultHttp2Headers.HTTP2_NAME_VALIDATOR_PROCESSOR:Lio/netty/util/ByteProcessor;
invokevirtual io.netty.util.AsciiString.forEachByte:(Lio/netty/util/ByteProcessor;)I
istore 2 /* index */
start local 2 // int index
6: .line 51
goto 15
end local 2 // int index
StackMap locals:
StackMap stack: io.netty.handler.codec.http2.Http2Exception
7: astore 3 /* e */
start local 3 // io.netty.handler.codec.http2.Http2Exception e
8: .line 52
aload 3 /* e */
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
9: .line 53
return
end local 3 // io.netty.handler.codec.http2.Http2Exception e
10: .line 54
StackMap locals:
StackMap stack: java.lang.Throwable
astore 3 /* t */
start local 3 // java.lang.Throwable t
11: .line 55
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
aload 3 /* t */
12: .line 56
ldc "unexpected error. invalid header name [%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1 /* name */
aastore
13: .line 55
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/Throwable;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
14: .line 57
return
end local 3 // java.lang.Throwable t
start local 2 // int index
15: .line 60
StackMap locals: int
StackMap stack:
iload 2 /* index */
iconst_m1
if_icmpeq 28
16: .line 61
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
17: .line 62
ldc "invalid header name [%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1 /* name */
aastore
18: .line 61
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
end local 2 // int index
19: .line 64
goto 28
20: .line 65
StackMap locals:
StackMap stack:
iconst_0
istore 2 /* i */
start local 2 // int i
21: goto 27
22: .line 66
StackMap locals: int
StackMap stack:
aload 1 /* name */
iload 2 /* i */
invokeinterface java.lang.CharSequence.charAt:(I)C
invokestatic io.netty.util.AsciiString.isUpperCase:(C)Z
ifeq 26
23: .line 67
getstatic io.netty.handler.codec.http2.Http2Error.PROTOCOL_ERROR:Lio/netty/handler/codec/http2/Http2Error;
24: .line 68
ldc "invalid header name [%s]"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1 /* name */
aastore
25: .line 67
invokestatic io.netty.handler.codec.http2.Http2Exception.connectionError:(Lio/netty/handler/codec/http2/Http2Error;Ljava/lang/String;[Ljava/lang/Object;)Lio/netty/handler/codec/http2/Http2Exception;
invokestatic io.netty.util.internal.PlatformDependent.throwException:(Ljava/lang/Throwable;)V
26: .line 65
StackMap locals:
StackMap stack:
iinc 2 /* i */ 1
StackMap locals:
StackMap stack:
27: iload 2 /* i */
aload 1 /* name */
invokeinterface java.lang.CharSequence.length:()I
if_icmplt 22
end local 2 // int i
28: .line 72
StackMap locals:
StackMap stack:
return
end local 1 // java.lang.CharSequence name
end local 0 // io.netty.handler.codec.http2.DefaultHttp2Headers$2 this
LocalVariableTable:
Start End Slot Name Signature
0 29 0 this Lio/netty/handler/codec/http2/DefaultHttp2Headers$2;
0 29 1 name Ljava/lang/CharSequence;
6 7 2 index I
15 19 2 index I
8 10 3 e Lio/netty/handler/codec/http2/Http2Exception;
11 15 3 t Ljava/lang/Throwable;
21 28 2 i I
Exception table:
from to target type
5 6 7 Class io.netty.handler.codec.http2.Http2Exception
5 6 10 Class java.lang.Throwable
MethodParameters:
Name Flags
name
public void validateName(java.lang.Object);
descriptor: (Ljava/lang/Object;)V
flags: (0x1041) ACC_PUBLIC, ACC_BRIDGE, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
0: .line 1
aload 0
aload 1
checkcast java.lang.CharSequence
invokevirtual io.netty.handler.codec.http2.DefaultHttp2Headers$2.validateName:(Ljava/lang/CharSequence;)V
return
LocalVariableTable:
Start End Slot Name Signature
}
Signature: Ljava/lang/Object;Lio/netty/handler/codec/DefaultHeaders$NameValidator<Ljava/lang/CharSequence;>;
SourceFile: "DefaultHttp2Headers.java"
EnclosingMethod: io.netty.handler.codec.http2.DefaultHttp2Headers
NestHost: io.netty.handler.codec.http2.DefaultHttp2Headers
InnerClasses:
public abstract NameValidator = io.netty.handler.codec.DefaultHeaders$NameValidator of io.netty.handler.codec.DefaultHeaders
io.netty.handler.codec.http2.DefaultHttp2Headers$2