class org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator
minor version: 0
major version: 59
flags: flags: (0x0020) ACC_SUPER
this_class: org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator
super_class: java.lang.Object
{
private final java.io.StringWriter writer;
descriptor: Ljava/io/StringWriter;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.ByteArrayOutputStream baos;
descriptor: Ljava/io/ByteArrayOutputStream;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final org.springframework.core.io.Resource resource;
descriptor: Lorg/springframework/core/io/Resource;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
public void <init>(org.springframework.core.io.Resource, java.lang.String);
descriptor: (Lorg/springframework/core/io/Resource;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=3
start local 0 start local 1 start local 2 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.io.StringWriter
dup
invokespecial java.io.StringWriter.<init>:()V
putfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.writer:Ljava/io/StringWriter;
2: aload 0
aload 1
putfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.resource:Lorg/springframework/core/io/Resource;
3: aload 0
new java.io.ByteArrayOutputStream
dup
aload 2
invokevirtual java.lang.String.length:()I
invokespecial java.io.ByteArrayOutputStream.<init>:(I)V
putfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.baos:Ljava/io/ByteArrayOutputStream;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/springframework/web/servlet/resource/AppCacheManifestTransformer$LineAggregator;
0 5 1 resource Lorg/springframework/core/io/Resource;
0 5 2 content Ljava/lang/String;
MethodParameters:
Name Flags
resource
content
public void add(org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput);
descriptor: (Lorg/springframework/web/servlet/resource/AppCacheManifestTransformer$LineOutput;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=2
start local 0 start local 1 0: aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.writer:Ljava/io/StringWriter;
new java.lang.StringBuilder
dup
aload 1
invokevirtual org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput.getLine:()Ljava/lang/String;
invokestatic java.lang.String.valueOf:(Ljava/lang/Object;)Ljava/lang/String;
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
ldc "\n"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.StringWriter.write:(Ljava/lang/String;)V
1: aload 1
invokevirtual org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput.getResource:()Lorg/springframework/core/io/Resource;
ifnull 3
2: aload 1
invokevirtual org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput.getResource:()Lorg/springframework/core/io/Resource;
invokestatic org.springframework.web.servlet.resource.AppCacheManifestTransformer.getResourceBytes:(Lorg/springframework/core/io/Resource;)[B
invokestatic org.springframework.util.DigestUtils.md5Digest:([B)[B
goto 4
3: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput.getLine:()Ljava/lang/String;
getstatic org.springframework.web.servlet.resource.AppCacheManifestTransformer.DEFAULT_CHARSET:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
4: StackMap locals:
StackMap stack: byte[]
astore 2
start local 2 5: aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.baos:Ljava/io/ByteArrayOutputStream;
aload 2
invokevirtual java.io.ByteArrayOutputStream.write:([B)V
6: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 7 0 this Lorg/springframework/web/servlet/resource/AppCacheManifestTransformer$LineAggregator;
0 7 1 lineOutput Lorg/springframework/web/servlet/resource/AppCacheManifestTransformer$LineOutput;
5 7 2 bytes [B
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
lineOutput
public org.springframework.web.servlet.resource.TransformedResource createResource();
descriptor: ()Lorg/springframework/web/servlet/resource/TransformedResource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=3, args_size=1
start local 0 0: aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.baos:Ljava/io/ByteArrayOutputStream;
invokevirtual java.io.ByteArrayOutputStream.toByteArray:()[B
invokestatic org.springframework.util.DigestUtils.md5DigestAsHex:([B)Ljava/lang/String;
astore 1
start local 1 1: aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.writer:Ljava/io/StringWriter;
new java.lang.StringBuilder
dup
ldc "\n# Hash: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 1
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
invokevirtual java.io.StringWriter.write:(Ljava/lang/String;)V
2: aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.writer:Ljava/io/StringWriter;
invokevirtual java.io.StringWriter.toString:()Ljava/lang/String;
getstatic org.springframework.web.servlet.resource.AppCacheManifestTransformer.DEFAULT_CHARSET:Ljava/nio/charset/Charset;
invokevirtual java.lang.String.getBytes:(Ljava/nio/charset/Charset;)[B
astore 2
start local 2 3: new org.springframework.web.servlet.resource.TransformedResource
dup
aload 0
getfield org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator.resource:Lorg/springframework/core/io/Resource;
aload 2
invokespecial org.springframework.web.servlet.resource.TransformedResource.<init>:(Lorg/springframework/core/io/Resource;[B)V
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lorg/springframework/web/servlet/resource/AppCacheManifestTransformer$LineAggregator;
1 4 1 hash Ljava/lang/String;
3 4 2 bytes [B
}
SourceFile: "AppCacheManifestTransformer.java"
NestHost: org.springframework.web.servlet.resource.AppCacheManifestTransformer
InnerClasses:
private LineAggregator = org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineAggregator of org.springframework.web.servlet.resource.AppCacheManifestTransformer
private LineOutput = org.springframework.web.servlet.resource.AppCacheManifestTransformer$LineOutput of org.springframework.web.servlet.resource.AppCacheManifestTransformer