public class org.springframework.http.codec.xml.XmlEventDecoder extends org.springframework.core.codec.AbstractDecoder<javax.xml.stream.events.XMLEvent>
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.springframework.http.codec.xml.XmlEventDecoder
super_class: org.springframework.core.codec.AbstractDecoder
{
private static final javax.xml.stream.XMLInputFactory inputFactory;
descriptor: Ljavax/xml/stream/XMLInputFactory;
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
private static final boolean aaltoPresent;
descriptor: Z
flags: (0x001a) ACC_PRIVATE, ACC_STATIC, ACC_FINAL
boolean useAalto;
descriptor: Z
flags: (0x0000)
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=2, locals=0, args_size=0
0: invokestatic org.springframework.util.xml.StaxUtils.createDefensiveInputFactory:()Ljavax/xml/stream/XMLInputFactory;
putstatic org.springframework.http.codec.xml.XmlEventDecoder.inputFactory:Ljavax/xml/stream/XMLInputFactory;
1: ldc "com.fasterxml.aalto.AsyncXMLStreamReader"
ldc Lorg/springframework/http/codec/xml/XmlEventDecoder;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
2: invokestatic org.springframework.util.ClassUtils.isPresent:(Ljava/lang/String;Ljava/lang/ClassLoader;)Z
putstatic org.springframework.http.codec.xml.XmlEventDecoder.aaltoPresent:Z
3: return
LocalVariableTable:
Start End Slot Name Signature
public void <init>();
descriptor: ()V
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=1, args_size=1
start local 0 0: aload 0
iconst_2
anewarray org.springframework.util.MimeType
dup
iconst_0
getstatic org.springframework.util.MimeTypeUtils.APPLICATION_XML:Lorg/springframework/util/MimeType;
aastore
dup
iconst_1
getstatic org.springframework.util.MimeTypeUtils.TEXT_XML:Lorg/springframework/util/MimeType;
aastore
invokespecial org.springframework.core.codec.AbstractDecoder.<init>:([Lorg/springframework/util/MimeType;)V
1: aload 0
getstatic org.springframework.http.codec.xml.XmlEventDecoder.aaltoPresent:Z
putfield org.springframework.http.codec.xml.XmlEventDecoder.useAalto:Z
2: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/http/codec/xml/XmlEventDecoder;
public reactor.core.publisher.Flux<javax.xml.stream.events.XMLEvent> decode(org.reactivestreams.Publisher<org.springframework.core.io.buffer.DataBuffer>, org.springframework.core.ResolvableType, org.springframework.util.MimeType, java.util.Map<java.lang.String, java.lang.Object>);
descriptor: (Lorg/reactivestreams/Publisher;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map;)Lreactor/core/publisher/Flux;
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=7, args_size=5
start local 0 start local 1 start local 2 start local 3 start local 4 0: aload 1
invokestatic reactor.core.publisher.Flux.from:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Flux;
astore 5
start local 5 1: aload 0
getfield org.springframework.http.codec.xml.XmlEventDecoder.useAalto:Z
ifeq 6
2: new org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent
dup
invokespecial org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent.<init>:()V
astore 6
start local 6 3: aload 5
aload 6
invokevirtual reactor.core.publisher.Flux.flatMap:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
4: aload 6
invokedynamic accept(Lorg/springframework/http/codec/xml/XmlEventDecoder$AaltoDataBufferToXmlEvent;)Ljava/util/function/Consumer;
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;)V
org/springframework/http/codec/xml/XmlEventDecoder.lambda$0(Lorg/springframework/http/codec/xml/XmlEventDecoder$AaltoDataBufferToXmlEvent;Lreactor/core/publisher/SignalType;)V (6)
(Lreactor/core/publisher/SignalType;)V
invokevirtual reactor.core.publisher.Flux.doFinally:(Ljava/util/function/Consumer;)Lreactor/core/publisher/Flux;
5: areturn
end local 6 6: StackMap locals: reactor.core.publisher.Flux
StackMap stack:
aload 5
invokestatic org.springframework.core.io.buffer.DataBufferUtils.join:(Lorg/reactivestreams/Publisher;)Lreactor/core/publisher/Mono;
astore 6
start local 6 7: aload 6
8: invokedynamic apply()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/xml/XmlEventDecoder.lambda$1(Lorg/springframework/core/io/buffer/DataBuffer;)Lorg/reactivestreams/Publisher; (6)
(Lorg/springframework/core/io/buffer/DataBuffer;)Lorg/reactivestreams/Publisher;
invokevirtual reactor.core.publisher.Mono.flatMapMany:(Ljava/util/function/Function;)Lreactor/core/publisher/Flux;
9: areturn
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 10 0 this Lorg/springframework/http/codec/xml/XmlEventDecoder;
0 10 1 inputStream Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;
0 10 2 elementType Lorg/springframework/core/ResolvableType;
0 10 3 mimeType Lorg/springframework/util/MimeType;
0 10 4 hints Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;
1 10 5 flux Lreactor/core/publisher/Flux<Lorg/springframework/core/io/buffer/DataBuffer;>;
3 6 6 aaltoMapper Lorg/springframework/http/codec/xml/XmlEventDecoder$AaltoDataBufferToXmlEvent;
7 10 6 singleBuffer Lreactor/core/publisher/Mono<Lorg/springframework/core/io/buffer/DataBuffer;>;
Signature: (Lorg/reactivestreams/Publisher<Lorg/springframework/core/io/buffer/DataBuffer;>;Lorg/springframework/core/ResolvableType;Lorg/springframework/util/MimeType;Ljava/util/Map<Ljava/lang/String;Ljava/lang/Object;>;)Lreactor/core/publisher/Flux<Ljavax/xml/stream/events/XMLEvent;>;
RuntimeVisibleParameterAnnotations:
0:
1:
2:
org.springframework.lang.Nullable()
3:
org.springframework.lang.Nullable()
MethodParameters:
Name Flags
inputStream
elementType
mimeType
hints
private static void lambda$0(org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent, reactor.core.publisher.SignalType);
descriptor: (Lorg/springframework/http/codec/xml/XmlEventDecoder$AaltoDataBufferToXmlEvent;Lreactor/core/publisher/SignalType;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokevirtual org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent.endOfInput:()V
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 signalType Lreactor/core/publisher/SignalType;
private static org.reactivestreams.Publisher lambda$1(org.springframework.core.io.buffer.DataBuffer);
descriptor: (Lorg/springframework/core/io/buffer/DataBuffer;)Lorg/reactivestreams/Publisher;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=2, locals=3, args_size=1
start local 0 0: aload 0
invokeinterface org.springframework.core.io.buffer.DataBuffer.asInputStream:()Ljava/io/InputStream;
astore 1
start local 1 1: getstatic org.springframework.http.codec.xml.XmlEventDecoder.inputFactory:Ljavax/xml/stream/XMLInputFactory;
aload 1
invokevirtual javax.xml.stream.XMLInputFactory.createXMLEventReader:(Ljava/io/InputStream;)Ljavax/xml/stream/XMLEventReader;
astore 2
start local 2 2: aload 2
invokedynamic iterator(Ljava/util/Iterator;)Ljava/lang/Iterable;
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/util/Iterator;
org/springframework/http/codec/xml/XmlEventDecoder.lambda$2(Ljava/util/Iterator;)Ljava/util/Iterator; (6)
()Ljava/util/Iterator;
invokestatic reactor.core.publisher.Flux.fromIterable:(Ljava/lang/Iterable;)Lreactor/core/publisher/Flux;
3: aload 0
invokedynamic accept(Lorg/springframework/core/io/buffer/DataBuffer;)Ljava/util/function/Consumer;
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;)V
org/springframework/http/codec/xml/XmlEventDecoder.lambda$3(Lorg/springframework/core/io/buffer/DataBuffer;Lreactor/core/publisher/SignalType;)V (6)
(Lreactor/core/publisher/SignalType;)V
invokevirtual reactor.core.publisher.Flux.doFinally:(Ljava/util/function/Consumer;)Lreactor/core/publisher/Flux;
4: areturn
end local 2 end local 1 5: StackMap locals:
StackMap stack: javax.xml.stream.XMLStreamException
astore 1
start local 1 6: aload 1
invokestatic reactor.core.publisher.Mono.error:(Ljava/lang/Throwable;)Lreactor/core/publisher/Mono;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 dataBuffer Lorg/springframework/core/io/buffer/DataBuffer;
1 5 1 is Ljava/io/InputStream;
2 5 2 eventReader Ljava/util/Iterator;
6 7 1 ex Ljavax/xml/stream/XMLStreamException;
Exception table:
from to target type
0 4 5 Class javax.xml.stream.XMLStreamException
private static java.util.Iterator lambda$2(java.util.Iterator);
descriptor: (Ljava/util/Iterator;)Ljava/util/Iterator;
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=1, args_size=1
0: aload 0
areturn
LocalVariableTable:
Start End Slot Name Signature
private static void lambda$3(org.springframework.core.io.buffer.DataBuffer, reactor.core.publisher.SignalType);
descriptor: (Lorg/springframework/core/io/buffer/DataBuffer;Lreactor/core/publisher/SignalType;)V
flags: (0x100a) ACC_PRIVATE, ACC_STATIC, ACC_SYNTHETIC
Code:
stack=1, locals=2, args_size=2
start local 1 0: aload 0
invokestatic org.springframework.core.io.buffer.DataBufferUtils.release:(Lorg/springframework/core/io/buffer/DataBuffer;)Z
return
end local 1 LocalVariableTable:
Start End Slot Name Signature
0 1 1 t Lreactor/core/publisher/SignalType;
}
Signature: Lorg/springframework/core/codec/AbstractDecoder<Ljavax/xml/stream/events/XMLEvent;>;
SourceFile: "XmlEventDecoder.java"
NestMembers:
org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent
InnerClasses:
public final Lookup = java.lang.invoke.MethodHandles$Lookup of java.lang.invoke.MethodHandles
private AaltoDataBufferToXmlEvent = org.springframework.http.codec.xml.XmlEventDecoder$AaltoDataBufferToXmlEvent of org.springframework.http.codec.xml.XmlEventDecoder