class org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller extends javax.xml.bind.attachment.AttachmentUnmarshaller
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller
super_class: javax.xml.bind.attachment.AttachmentUnmarshaller
{
private final org.springframework.oxm.mime.MimeContainer mimeContainer;
descriptor: Lorg/springframework/oxm/mime/MimeContainer;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.springframework.oxm.mime.MimeContainer);
descriptor: (Lorg/springframework/oxm/mime/MimeContainer;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, locals=2, args_size=2
start local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
start local 1 // org.springframework.oxm.mime.MimeContainer mimeContainer
0: .line 1018
aload 0 /* this */
invokespecial javax.xml.bind.attachment.AttachmentUnmarshaller.<init>:()V
1: .line 1019
aload 0 /* this */
aload 1 /* mimeContainer */
putfield org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller.mimeContainer:Lorg/springframework/oxm/mime/MimeContainer;
2: .line 1020
return
end local 1 // org.springframework.oxm.mime.MimeContainer mimeContainer
end local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
LocalVariableTable:
Start End Slot Name Signature
0 3 0 this Lorg/springframework/oxm/jaxb/Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller;
0 3 1 mimeContainer Lorg/springframework/oxm/mime/MimeContainer;
MethodParameters:
Name Flags
mimeContainer
public byte[] getAttachmentAsByteArray(java.lang.String);
descriptor: (Ljava/lang/String;)[B
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
start local 1 // java.lang.String cid
0: .line 1025
aload 0 /* this */
aload 1 /* cid */
invokevirtual org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller.getAttachmentAsDataHandler:(Ljava/lang/String;)Ljavax/activation/DataHandler;
astore 2 /* dataHandler */
start local 2 // javax.activation.DataHandler dataHandler
1: .line 1026
aload 2 /* dataHandler */
invokevirtual javax.activation.DataHandler.getInputStream:()Ljava/io/InputStream;
invokestatic org.springframework.util.FileCopyUtils.copyToByteArray:(Ljava/io/InputStream;)[B
2: areturn
end local 2 // javax.activation.DataHandler dataHandler
3: .line 1028
StackMap locals:
StackMap stack: java.io.IOException
astore 2 /* ex */
start local 2 // java.io.IOException ex
4: .line 1029
new org.springframework.oxm.UnmarshallingFailureException
dup
ldc "Could not read attachment"
aload 2 /* ex */
invokespecial org.springframework.oxm.UnmarshallingFailureException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 2 // java.io.IOException ex
end local 1 // java.lang.String cid
end local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/oxm/jaxb/Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller;
0 5 1 cid Ljava/lang/String;
1 3 2 dataHandler Ljavax/activation/DataHandler;
4 5 2 ex Ljava/io/IOException;
Exception table:
from to target type
0 2 3 Class java.io.IOException
MethodParameters:
Name Flags
cid
public javax.activation.DataHandler getAttachmentAsDataHandler(java.lang.String);
descriptor: (Ljava/lang/String;)Ljavax/activation/DataHandler;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=3, args_size=2
start local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
start local 1 // java.lang.String contentId
0: .line 1035
aload 1 /* contentId */
ldc "cid:"
invokevirtual java.lang.String.startsWith:(Ljava/lang/String;)Z
ifeq 6
1: .line 1036
aload 1 /* contentId */
ldc "cid:"
invokevirtual java.lang.String.length:()I
invokevirtual java.lang.String.substring:(I)Ljava/lang/String;
astore 1 /* contentId */
2: .line 1038
aload 1 /* contentId */
ldc "UTF-8"
invokestatic java.net.URLDecoder.decode:(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
astore 1 /* contentId */
3: .line 1039
goto 5
4: .line 1040
StackMap locals:
StackMap stack: java.io.UnsupportedEncodingException
pop
5: .line 1043
StackMap locals:
StackMap stack:
new java.lang.StringBuilder
dup
bipush 60
invokestatic java.lang.String.valueOf:(C)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* contentId */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
bipush 62
invokevirtual java.lang.StringBuilder.append:(C)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
astore 1 /* contentId */
6: .line 1045
StackMap locals:
StackMap stack:
aload 0 /* this */
getfield org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller.mimeContainer:Lorg/springframework/oxm/mime/MimeContainer;
aload 1 /* contentId */
invokeinterface org.springframework.oxm.mime.MimeContainer.getAttachment:(Ljava/lang/String;)Ljavax/activation/DataHandler;
astore 2 /* dataHandler */
start local 2 // javax.activation.DataHandler dataHandler
7: .line 1046
aload 2 /* dataHandler */
ifnonnull 9
8: .line 1047
new java.lang.IllegalArgumentException
dup
new java.lang.StringBuilder
dup
ldc "No attachment found for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1 /* contentId */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
9: .line 1049
StackMap locals: javax.activation.DataHandler
StackMap stack:
aload 2 /* dataHandler */
areturn
end local 2 // javax.activation.DataHandler dataHandler
end local 1 // java.lang.String contentId
end local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
LocalVariableTable:
Start End Slot Name Signature
0 10 0 this Lorg/springframework/oxm/jaxb/Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller;
0 10 1 contentId Ljava/lang/String;
7 10 2 dataHandler Ljavax/activation/DataHandler;
Exception table:
from to target type
2 3 4 Class java.io.UnsupportedEncodingException
MethodParameters:
Name Flags
contentId
public boolean isXOPPackage();
descriptor: ()Z
flags: (0x0001) ACC_PUBLIC
Code:
stack=1, locals=1, args_size=1
start local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
0: .line 1054
aload 0 /* this */
getfield org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller.mimeContainer:Lorg/springframework/oxm/mime/MimeContainer;
invokeinterface org.springframework.oxm.mime.MimeContainer.isXopPackage:()Z
ireturn
end local 0 // org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller this
LocalVariableTable:
Start End Slot Name Signature
0 1 0 this Lorg/springframework/oxm/jaxb/Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller;
}
SourceFile: "Jaxb2Marshaller.java"
NestHost: org.springframework.oxm.jaxb.Jaxb2Marshaller
InnerClasses:
private Jaxb2AttachmentUnmarshaller = org.springframework.oxm.jaxb.Jaxb2Marshaller$Jaxb2AttachmentUnmarshaller of org.springframework.oxm.jaxb.Jaxb2Marshaller