public class org.springframework.http.codec.ServerSentEventHttpMessageReader implements org.springframework.http.codec.HttpMessageReader<java.lang.Object>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.http.codec.ServerSentEventHttpMessageReader
super_class: java.lang.Object
{
private static final org.springframework.core.io.buffer.DataBufferFactory bufferFactory;
descriptor: Lorg/springframework/core/io/buffer/DataBufferFactory;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.springframework.core.codec.StringDecoder stringDecoder;
descriptor: Lorg/springframework/core/codec/StringDecoder;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final org.springframework.core.ResolvableType STRING_TYPE;
descriptor: Lorg/springframework/core/ResolvableType;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private final org.springframework.core.codec.Decoder<?> decoder;
descriptor: Lorg/springframework/core/codec/Decoder;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
Signature: Lorg/springframework/core/codec/Decoder<*>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: new org.springframework.core.io.buffer.DefaultDataBufferFactory
dup
invokespecial org.springframework.core.io.buffer.DefaultDataBufferFactory.<init>:()V
putstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
1: invokestatic org.springframework.core.codec.StringDecoder.textPlainOnly:()Lorg/springframework/core/codec/StringDecoder;
putstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.stringDecoder:Lorg/springframework/core/codec/StringDecoder;
2: ldc Ljava/lang/String;
invokestatic org.springframework.core.ResolvableType.forClass:(Ljava/lang/Class;)Lorg/springframework/core/ResolvableType;
putstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.STRING_TYPE:Lorg/springframework/core/ResolvableType;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
aconst_null
invokespecial org.springframework.http.codec.ServerSentEventHttpMessageReader.<init>:(Lorg/springframework/core/codec/Decoder;)V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
public void <init>(org.springframework.core.codec.Decoder<?>);
descriptor: (Lorg/springframework/core/codec/Decoder;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
aload 1
putfield org.springframework.http.codec.ServerSentEventHttpMessageReader.decoder:Lorg/springframework/core/codec/Decoder;
2: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 3 1 decoder Lorg/springframework/core/codec/Decoder<*>;
Signature: (Lorg/springframework/core/codec/Decoder<*>;)V
RuntimeVisibleParameterAnnotations:
0:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
decoder
public org.springframework.core.codec.Decoder<?> getDecoder();
descriptor: ()Lorg/springframework/core/codec/Decoder;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
getfield org.springframework.http.codec.ServerSentEventHttpMessageReader.decoder:Lorg/springframework/core/codec/Decoder;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
Signature: ()Lorg/springframework/core/codec/Decoder<*>;
RuntimeVisibleAnnotations:
org.springframework.lang.Nullable()
public java.util.List<org.springframework.http.MediaType> getReadableMediaTypes();
descriptor: ()Ljava/util/List;
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: getstatic org.springframework.http.MediaType.TEXT_EVENT_STREAM:Lorg/springframework/http/MediaType;
invokestatic java.util.Collections.singletonList:(Ljava/lang/Object;)Ljava/util/List;
areturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
Signature: ()Ljava/util/List<Lorg/springframework/http/MediaType;>;
public boolean canRead(org.springframework.core.ResolvableType, org.springframework.http.MediaType);
descriptor: (Lorg/springframework/core/ResolvableType;Lorg/springframework/http/MediaType;)Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=3, args_size=3
start local 0 start local 1 start local 2 0: getstatic org.springframework.http.MediaType.TEXT_EVENT_STREAM:Lorg/springframework/http/MediaType;
aload 2
invokevirtual org.springframework.http.MediaType.includes:(Lorg/springframework/http/MediaType;)Z
ifne 1
aload 0
aload 1
invokevirtual org.springframework.http.codec.ServerSentEventHttpMessageReader.isServerSentEvent:(Lorg/springframework/core/ResolvableType;)Z
ifne 1
iconst_0
ireturn
StackMap locals:
StackMap stack:
1: iconst_1
ireturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 2 1 elementType Lorg/springframework/core/ResolvableType;
0 2 2 mediaType Lorg/springframework/http/MediaType;
RuntimeVisibleParameterAnnotations:
0:
1:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
elementType
mediaType
private boolean isServerSentEvent(org.springframework.core.ResolvableType);
descriptor: (Lorg/springframework/core/ResolvableType;)Z
flags: (0x0002) ACC_PRIVATE
Code:
stack=2, locals=2, args_size=2
start local 0 start local 1 0: ldc Lorg/springframework/http/codec/ServerSentEvent;
aload 1
invokevirtual org.springframework.core.ResolvableType.toClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.isAssignableFrom:(Ljava/lang/Class;)Z
ireturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 1 1 elementType Lorg/springframework/core/ResolvableType;
MethodParameters:
Name Flags
elementType
public reactor.core.publisher.Flux<java.lang.Object> read(org.springframework.core.ResolvableType, org.springframework.http.ReactiveHttpInputMessage, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Lorg/springframework/core/ResolvableType;Lorg/springframework/http/ReactiveHttpInputMessage;Ljava/util/Map;)Lreactor/core/publisher/Flux;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 0
aload 1
invokevirtual org.springframework.http.codec.ServerSentEventHttpMessageReader.isServerSentEvent:(Lorg/springframework/core/ResolvableType;)Z
istore 4
start local 4 1: iload 4
ifeq 2
aload 1
iconst_0
newarray 10
invokevirtual org.springframework.core.ResolvableType.getGeneric:([I)Lorg/springframework/core/ResolvableType;
goto 3
StackMap locals: int
StackMap stack:
2: aload 1
StackMap locals:
StackMap stack: org.springframework.core.ResolvableType
3: astore 5
start local 5 4: getstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.stringDecoder:Lorg/springframework/core/codec/StringDecoder;
aload 2
invokeinterface org.springframework.http.ReactiveHttpInputMessage.getBody:()Lreactor/core/publisher/Flux;
getstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.STRING_TYPE:Lorg/springframework/core/ResolvableType;
aconst_null
aload 3
invokevirtual org.springframework.core.codec.StringDecoder.decode:(Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
5: invokedynamic test()Ljava/util/function/Predicate;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Z
org/springframework/http/codec/ServerSentEventHttpMessageReader.lambda$0(Ljava/lang/String;)Z (6)
(Ljava/lang/String;)Z
invokevirtual reactor.core.publisher.Flux.bufferUntil:(Ljava/util/function/Predicate;)Lreactor/core/publisher/Flux;
6: aload 0
aload 5
iload 4
aload 3
invokedynamic apply(Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;Lorg/springframework/core/ResolvableType;ZLjava/util/Map;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/http/codec/ServerSentEventHttpMessageReader.lambda$1(Lorg/springframework/core/ResolvableType;ZLjava/util/Map;Ljava/util/List;)Lorg/reactivestreams/Publisher; (7)
(Ljava/util/List;)Lorg/reactivestreams/Publisher;
invokevirtual reactor.core.publisher.Flux.concatMap:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
7: areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 8 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 8 1 elementType Lorg/springframework/core/ResolvableType;
0 8 2 message Lorg/springframework/http/ReactiveHttpInputMessage;
0 8 3 hints Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
1 8 4 shouldWrap Z
4 8 5 valueType Lorg/springframework/core/ResolvableType;
Signature: (Lorg/springframework/core/ResolvableType;Lorg/springframework/http/ReactiveHttpInputMessage;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Flux<Ljava/lang/Object;>;
MethodParameters:
Name Flags
elementType
message
hints
private reactor.core.publisher.Mono<?> buildEvent(java.util.List<java.lang.String>, org.springframework.core.ResolvableType, boolean, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Ljava/util/List;Lorg/springframework/core/ResolvableType;ZLjava/util/Map;)Lreactor/core/publisher/Mono;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=10, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: iload 3
ifeq 1
invokestatic org.springframework.http.codec.ServerSentEvent.builder:()Lorg/springframework/http/codec/ServerSentEvent$Builder;
goto 2
StackMap locals:
StackMap stack:
1: aconst_null
StackMap locals:
StackMap stack: org.springframework.http.codec.ServerSentEvent$Builder
2: astore 5
start local 5 3: aconst_null
astore 6
start local 6 4: aconst_null
astore 7
start local 7 5: aload 1
invokeinterface java.util.List.iterator:()Ljava/util/Iterator;
astore 9
goto 27
StackMap locals: org.springframework.http.codec.ServerSentEventHttpMessageReader java.util.List org.springframework.core.ResolvableType int java.util.Map org.springframework.http.codec.ServerSentEvent$Builder java.lang.StringBuilder java.lang.StringBuilder top java.util.Iterator
StackMap stack:
6: aload 9
invokeinterface java.util.Iterator.next:()Ljava/lang/Object;
checkcast java.lang.String
astore 8
start local 8 7: aload 8
ldc "data:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 12
8: aload 6
ifnull 9
aload 6
goto 10
StackMap locals: org.springframework.http.codec.ServerSentEventHttpMessageReader java.util.List org.springframework.core.ResolvableType int java.util.Map org.springframework.http.codec.ServerSentEvent$Builder java.lang.StringBuilder java.lang.StringBuilder java.lang.String java.util.Iterator
StackMap stack:
9: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
StackMap locals:
StackMap stack: java.lang.StringBuilder
10: astore 6
11: aload 6
aload 8
iconst_5
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
12: StackMap locals:
StackMap stack:
iload 3
ifeq 27
13: aload 8
ldc "id:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 16
14: aload 5
aload 8
iconst_3
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.id:(Ljava/lang/String;)Lorg/springframework/http/codec/ServerSentEvent$Builder;
pop
15: goto 27
16: StackMap locals:
StackMap stack:
aload 8
ldc "event:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 19
17: aload 5
aload 8
bipush 6
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.event:(Ljava/lang/String;)Lorg/springframework/http/codec/ServerSentEvent$Builder;
pop
18: goto 27
19: StackMap locals:
StackMap stack:
aload 8
ldc "retry:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 22
20: aload 5
aload 8
bipush 6
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokestatic java.lang.Long.valueOf:(Ljava/lang/String;)Ljava/lang/Long;
invokevirtual java.lang.Long.longValue:()J
invokestatic java.time.Duration.ofMillis:(J)Ljava/time/Duration;
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.retry:(Ljava/time/Duration;)Lorg/springframework/http/codec/ServerSentEvent$Builder;
pop
21: goto 27
22: StackMap locals:
StackMap stack:
aload 8
ldc ":"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 27
23: aload 7
ifnull 24
aload 7
goto 25
StackMap locals:
StackMap stack:
24: new java.lang.StringBuilder
dup
invokespecial java.lang.StringBuilder.<init>:()V
StackMap locals:
StackMap stack: java.lang.StringBuilder
25: astore 7
26: aload 7
aload 8
iconst_1
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
invokevirtual java.lang.String.trim:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
pop
end local 8 27: StackMap locals: org.springframework.http.codec.ServerSentEventHttpMessageReader java.util.List org.springframework.core.ResolvableType int java.util.Map org.springframework.http.codec.ServerSentEvent$Builder java.lang.StringBuilder java.lang.StringBuilder top java.util.Iterator
StackMap stack:
aload 9
invokeinterface java.util.Iterator.hasNext:()Z
ifne 6
28: aload 6
ifnull 29
aload 0
aload 6
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 2
aload 4
invokevirtual org.springframework.http.codec.ServerSentEventHttpMessageReader.decodeData:(Ljava/lang/String;Lorg/springframework/core/ResolvableType;Ljava/util/Map;)Lreactor/core/publisher/Mono;
goto 30
StackMap locals: org.springframework.http.codec.ServerSentEventHttpMessageReader java.util.List org.springframework.core.ResolvableType int java.util.Map org.springframework.http.codec.ServerSentEvent$Builder java.lang.StringBuilder java.lang.StringBuilder
StackMap stack:
29: invokestatic reactor.core.publisher.Mono.empty:()Lreactor/core/publisher/Mono;
StackMap locals:
StackMap stack: reactor.core.publisher.Mono
30: astore 8
start local 8 31: iload 3
ifeq 35
32: aload 7
ifnull 34
33: aload 5
aload 7
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
iconst_0
aload 7
invokevirtual java.lang.StringBuilder.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.comment:(Ljava/lang/String;)Lorg/springframework/http/codec/ServerSentEvent$Builder;
pop
34: StackMap locals: reactor.core.publisher.Mono
StackMap stack:
aload 8
aload 5
invokedynamic apply(Lorg/springframework/http/codec/ServerSentEvent$Builder;)Ljava/util/function/Function;
Bootstrap: invokestatic java.lang.invoke.LambdaMetafactory.metafactory:(Ljava/lang/invoke/MethodHandles$Lookup;Ljava/lang/String;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodType;Ljava/lang/invoke/MethodHandle;Ljava/lang/invoke/MethodType;)Ljava/lang/invoke/CallSite;
Method arguments:
(Ljava/lang/Object;)Ljava/lang/Object;
org/springframework/http/codec/ServerSentEventHttpMessageReader.lambda$2(Lorg/springframework/http/codec/ServerSentEvent$Builder;Ljava/lang/Object;)Lorg/springframework/http/codec/ServerSentEvent; (6)
(Ljava/lang/Object;)Lorg/springframework/http/codec/ServerSentEvent;
invokevirtual reactor.core.publisher.Mono.map:(Ljava/util/function/Function;)Lreactor/core/publisher/Mono;
areturn
35: StackMap locals:
StackMap stack:
aload 8
areturn
end local 8 end local 7 end local 6 end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 36 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 36 1 lines Ljava/util/List<Ljava/lang/String;>;
0 36 2 valueType Lorg/springframework/core/ResolvableType;
0 36 3 shouldWrap Z
0 36 4 hints Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
3 36 5 sseBuilder Lorg/springframework/http/codec/ServerSentEvent$Builder<Ljava/lang/Object;>;
4 36 6 data Ljava/lang/StringBuilder;
5 36 7 comment Ljava/lang/StringBuilder;
7 27 8 line Ljava/lang/String;
31 36 8 decodedData Lreactor/core/publisher/Mono<*>;
Signature: (Ljava/util/List<Ljava/lang/String;>;Lorg/springframework/core/ResolvableType;ZLjava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Mono<*>;
MethodParameters:
Name Flags
lines
valueType
shouldWrap
hints
private reactor.core.publisher.Mono<?> decodeData(java.lang.String, org.springframework.core.ResolvableType, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Ljava/lang/String;Lorg/springframework/core/ResolvableType;Ljava/util/Map;)Lreactor/core/publisher/Mono;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=6, args_size=4
start local 0 start local 1 start local 2 start local 3 0: ldc Ljava/lang/String;
aload 2
invokevirtual org.springframework.core.ResolvableType.resolve:()Ljava/lang/Class;
if_acmpne 2
1: aload 1
iconst_0
aload 1
invokevirtual java.lang.String.length:()I
iconst_1
isub
invokevirtual java.lang.String.substring:(II)Ljava/lang/String;
invokestatic reactor.core.publisher.Mono.just:(Ljava/lang/Object;)Lreactor/core/publisher/Mono;
areturn
2: StackMap locals:
StackMap stack:
aload 0
getfield org.springframework.http.codec.ServerSentEventHttpMessageReader.decoder:Lorg/springframework/core/codec/Decoder;
ifnonnull 4
3: new org.springframework.core.codec.CodecException
dup
ldc "No SSE decoder configured and the data is not String."
invokespecial org.springframework.core.codec.CodecException.<init>:(Ljava/lang/String;)V
invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
areturn
4: StackMap locals:
StackMap stack:
aload 1
getstatic java.nio.charset.StandardCharsets.UTF_8:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
astore 4
start local 4 5: getstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.bufferFactory:Lorg/springframework/core/io/buffer/DataBufferFactory;
aload 4
invokeinterface org.springframework.core.io.buffer.DataBufferFactory.wrap:([B)Lorg/springframework/core/io/buffer/DataBuffer;
invokestatic reactor.core.publisher.Mono.just:(Ljava/lang/Object;)Lreactor/core/publisher/Mono;
astore 5
start local 5 6: aload 0
getfield org.springframework.http.codec.ServerSentEventHttpMessageReader.decoder:Lorg/springframework/core/codec/Decoder;
aload 5
aload 2
getstatic org.springframework.http.MediaType.TEXT_EVENT_STREAM:Lorg/springframework/http/MediaType;
aload 3
invokeinterface org.springframework.core.codec.Decoder.decodeToMono:(Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Mono;
areturn
end local 5 end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 7 1 data Ljava/lang/String;
0 7 2 dataType Lorg/springframework/core/ResolvableType;
0 7 3 hints Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
5 7 4 bytes [B
6 7 5 input Lreactor/core/publisher/Mono<Lorg/springframework/core/io/buffer/DataBuffer;>;
Signature: (Ljava/lang/String;Lorg/springframework/core/ResolvableType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Mono<*>;
MethodParameters:
Name Flags
data
dataType
hints
public reactor.core.publisher.Mono<java.lang.Object> readMono(org.springframework.core.ResolvableType, org.springframework.http.ReactiveHttpInputMessage, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Lorg/springframework/core/ResolvableType;Lorg/springframework/http/ReactiveHttpInputMessage;Ljava/util/Map;)Lreactor/core/publisher/Mono;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=4
start local 0 start local 1 start local 2 start local 3 0: aload 1
invokevirtual org.springframework.core.ResolvableType.resolve:()Ljava/lang/Class;
ldc Ljava/lang/String;
if_acmpne 3
1: aload 2
invokeinterface org.springframework.http.ReactiveHttpInputMessage.getBody:()Lreactor/core/publisher/Flux;
astore 4
start local 4 2: getstatic org.springframework.http.codec.ServerSentEventHttpMessageReader.stringDecoder:Lorg/springframework/core/codec/StringDecoder;
aload 4
aload 1
aconst_null
aconst_null
invokevirtual org.springframework.core.codec.StringDecoder.decodeToMono:(Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Mono;
ldc Ljava/lang/Object;
invokevirtual reactor.core.publisher.Mono.cast:(Ljava/lang/Class;)Lreactor/core/publisher/Mono;
areturn
end local 4 3: StackMap locals:
StackMap stack:
new java.lang.UnsupportedOperationException
dup
4: ldc "ServerSentEventHttpMessageReader only supports reading stream of events as a Flux"
5: invokespecial java.lang.UnsupportedOperationException.<init>:(Ljava/lang/String;)V
invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 6 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 6 1 elementType Lorg/springframework/core/ResolvableType;
0 6 2 message Lorg/springframework/http/ReactiveHttpInputMessage;
0 6 3 hints Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
2 3 4 body Lreactor/core/publisher/Flux<Lorg/springframework/core/io/buffer/DataBuffer;>;
Signature: (Lorg/springframework/core/ResolvableType;Lorg/springframework/http/ReactiveHttpInputMessage;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Mono<Ljava/lang/Object;>;
MethodParameters:
Name Flags
elementType
message
hints
private static boolean lambda$0(java.lang.String);
descriptor: (Ljava/lang/String;)Z
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=1, args_size=1
start local 0 0: aload 0
ldc ""
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ireturn
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 line Ljava/lang/String;
private org.reactivestreams.Publisher lambda$1(org.springframework.core.ResolvableType, boolean, java.util.Map, java.util.List);
descriptor: (Lorg/springframework/core/ResolvableType;ZLjava/util/Map;Ljava/util/List;)Lorg/reactivestreams/Publisher;
flags: (0x1002) ACC_PRIVATE, ACC_SYNTHETIC
Code:
stack=5, locals=5, args_size=5
start local 0 start local 4 0: aload 0
aload 4
aload 1
iload 2
aload 3
invokevirtual org.springframework.http.codec.ServerSentEventHttpMessageReader.buildEvent:(Ljava/util/List;Lorg/springframework/core/ResolvableType;ZLjava/util/Map;)Lreactor/core/publisher/Mono;
areturn
end local 4 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/http/codec/ServerSentEventHttpMessageReader;
0 1 4 lines Ljava/util/List<Ljava/lang/String;>;
private static org.springframework.http.codec.ServerSentEvent lambda$2(org.springframework.http.codec.ServerSentEvent$Builder, java.lang.Object);
descriptor: (Lorg/springframework/http/codec/ServerSentEvent$Builder;Ljava/lang/Object;)Lorg/springframework/http/codec/ServerSentEvent;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=2, args_size=2
start local 1 0: aload 0
aload 1
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.data:(Ljava/lang/Object;)Lorg/springframework/http/codec/ServerSentEvent$Builder;
pop
1: aload 0
invokeinterface org.springframework.http.codec.ServerSentEvent$Builder.build:()Lorg/springframework/http/codec/ServerSentEvent;
areturn
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 2 1 o Ljava/lang/Object;
}
Signature: Ljava/lang/Object;Lorg/springframework/http/codec/HttpMessageReader<Ljava/lang/Object;>;
SourceFile: "ServerSentEventHttpMessageReader.java"
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
public abstract Builder = org.springframework.http.codec.ServerSentEvent$Builder of org.springframework.http.codec.ServerSentEvent