public final class org.apache.fop.cli.Main
minor version: 0
major version: 59
flags: flags: (0x0031) ACC_PUBLIC, ACC_FINAL, ACC_SUPER
this_class: org.apache.fop.cli.Main
super_class: java.lang.Object
{
private void <init>();
descriptor: ()V
flags: (0x0002) ACC_PRIVATE
Code:
stack=1, locals=1, args_size=1
start local 0 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lorg/apache/fop/cli/Main;
public static java.net.URL[] getJARList();
descriptor: ()[Ljava/net/URL;
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=13, args_size=0
0: ldc "fop.home"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 0
start local 0 1: aload 0
ifnull 4
2: new java.io.File
dup
aload 0
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
astore 1
start local 1 3: goto 5
end local 1 4: StackMap locals: java.lang.String
StackMap stack:
new java.io.File
dup
ldc "."
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
invokevirtual java.io.File.getAbsoluteFile:()Ljava/io/File;
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 1
start local 1 5: StackMap locals: java.io.File
StackMap stack:
ldc "build"
aload 1
invokevirtual java.io.File.getName:()Ljava/lang/String;
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
6: aload 1
astore 2
start local 2 7: aload 1
invokevirtual java.io.File.getParentFile:()Ljava/io/File;
astore 1
8: goto 10
end local 2 9: StackMap locals:
StackMap stack:
new java.io.File
dup
aload 1
ldc "build"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 2
start local 2 10: StackMap locals: java.io.File
StackMap stack:
new java.io.File
dup
aload 2
ldc "fop.jar"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 3
start local 3 11: aload 3
invokevirtual java.io.File.exists:()Z
ifne 13
12: new java.io.File
dup
aload 1
ldc "fop.jar"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 3
13: StackMap locals: java.io.File
StackMap stack:
aload 3
invokevirtual java.io.File.exists:()Z
ifne 17
14: new java.lang.RuntimeException
dup
new java.lang.StringBuilder
dup
ldc "fop.jar not found in directory: "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
15: aload 1
invokevirtual java.io.File.getAbsolutePath:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " (or below)"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
16: invokespecial java.lang.RuntimeException.<init>:(Ljava/lang/String;)V
athrow
17: StackMap locals:
StackMap stack:
new java.util.ArrayList
dup
invokespecial java.util.ArrayList.<init>:()V
astore 4
start local 4 18: aload 4
aload 3
invokevirtual java.io.File.toURI:()Ljava/net/URI;
invokevirtual java.net.URI.toURL:()Ljava/net/URL;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
19: new org.apache.fop.cli.Main$1
dup
invokespecial org.apache.fop.cli.Main$1.<init>:()V
astore 6
start local 6 20: new java.io.File
dup
aload 1
ldc "lib"
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 7
start local 7 21: aload 7
invokevirtual java.io.File.exists:()Z
ifne 23
22: aload 1
astore 7
23: StackMap locals: java.lang.String java.io.File java.io.File java.io.File java.util.List top java.io.FileFilter java.io.File
StackMap stack:
aload 7
aload 6
invokevirtual java.io.File.listFiles:(Ljava/io/FileFilter;)[Ljava/io/File;
astore 5
start local 5 24: aload 5
ifnull 30
25: aload 5
dup
astore 11
arraylength
istore 10
iconst_0
istore 9
goto 29
StackMap locals: java.lang.String java.io.File java.io.File java.io.File java.util.List java.io.File[] java.io.FileFilter java.io.File top int int java.io.File[]
StackMap stack:
26: aload 11
iload 9
aaload
astore 8
start local 8 27: aload 4
aload 8
invokevirtual java.io.File.toURI:()Ljava/net/URI;
invokevirtual java.net.URI.toURL:()Ljava/net/URL;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 8 28: iinc 9 1
StackMap locals:
StackMap stack:
29: iload 9
iload 10
if_icmplt 26
30: StackMap locals: java.lang.String java.io.File java.io.File java.io.File java.util.List java.io.File[] java.io.FileFilter java.io.File
StackMap stack:
ldc "fop.optional.lib"
invokestatic java.lang.System.getProperty:(Ljava/lang/String;)Ljava/lang/String;
astore 8
start local 8 31: aload 8
ifnull 39
32: new java.io.File
dup
aload 8
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.io.File.listFiles:(Ljava/io/FileFilter;)[Ljava/io/File;
astore 5
33: aload 5
ifnull 39
34: aload 5
dup
astore 12
arraylength
istore 11
iconst_0
istore 10
goto 38
StackMap locals: java.lang.String java.io.File java.io.File java.io.File java.util.List java.io.File[] java.io.FileFilter java.io.File java.lang.String top int int java.io.File[]
StackMap stack:
35: aload 12
iload 10
aaload
astore 9
start local 9 36: aload 4
aload 9
invokevirtual java.io.File.toURI:()Ljava/net/URI;
invokevirtual java.net.URI.toURL:()Ljava/net/URL;
invokeinterface java.util.List.add:(Ljava/lang/Object;)Z
pop
end local 9 37: iinc 10 1
StackMap locals:
StackMap stack:
38: iload 10
iload 11
if_icmplt 35
39: StackMap locals: java.lang.String java.io.File java.io.File java.io.File java.util.List java.io.File[] java.io.FileFilter java.io.File java.lang.String
StackMap stack:
aload 4
aload 4
invokeinterface java.util.List.size:()I
anewarray java.net.URL
invokeinterface java.util.List.toArray:([Ljava/lang/Object;)[Ljava/lang/Object;
checkcast java.net.URL[]
astore 9
start local 9 40: aload 9
areturn
end local 9 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
1 41 0 fopHome Ljava/lang/String;
3 4 1 baseDir Ljava/io/File;
5 41 1 baseDir Ljava/io/File;
7 9 2 buildDir Ljava/io/File;
10 41 2 buildDir Ljava/io/File;
11 41 3 fopJar Ljava/io/File;
18 41 4 jars Ljava/util/List;
24 41 5 files [Ljava/io/File;
20 41 6 filter Ljava/io/FileFilter;
21 41 7 libDir Ljava/io/File;
27 28 8 file Ljava/io/File;
31 41 8 optionalLib Ljava/lang/String;
36 37 9 file Ljava/io/File;
40 41 9 urls [Ljava/net/URL;
Exceptions:
throws java.net.MalformedURLException
public static boolean checkDependencies();
descriptor: ()Z
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=0
0: ldc "org.apache.commons.io.IOUtils"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 0
start local 0 1: aload 0
ifnull 3
2: ldc "org.apache.avalon.framework.configuration.Configuration"
invokestatic java.lang.Class.forName:(Ljava/lang/String;)Ljava/lang/Class;
astore 0
3: StackMap locals: java.lang.Class
StackMap stack:
aload 0
ifnull 4
iconst_1
ireturn
StackMap locals:
StackMap stack:
4: iconst_0
5: ireturn
end local 0 6: StackMap locals:
StackMap stack: java.lang.Exception
pop
7: iconst_0
ireturn
LocalVariableTable:
Start End Slot Name Signature
1 6 0 clazz Ljava/lang/Class;
Exception table:
from to target type
0 5 6 Class java.lang.Exception
public static void startFOPWithDynamicClasspath(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=6, locals=5, args_size=1
start local 0 0: invokestatic org.apache.fop.cli.Main.getJARList:()[Ljava/net/URL;
astore 1
start local 1 1: new org.apache.fop.cli.Main$2
dup
aload 1
invokespecial org.apache.fop.cli.Main$2.<init>:([Ljava/net/URL;)V
invokestatic java.security.AccessController.doPrivileged:(Ljava/security/PrivilegedAction;)Ljava/lang/Object;
checkcast java.lang.ClassLoader
2: astore 2
start local 2 3: invokestatic java.lang.Thread.currentThread:()Ljava/lang/Thread;
aload 2
invokevirtual java.lang.Thread.setContextClassLoader:(Ljava/lang/ClassLoader;)V
4: ldc "org.apache.fop.cli.Main"
iconst_1
aload 2
invokestatic java.lang.Class.forName:(Ljava/lang/String;ZLjava/lang/ClassLoader;)Ljava/lang/Class;
astore 3
start local 3 5: aload 3
ldc "startFOP"
iconst_1
anewarray java.lang.Class
dup
iconst_0
ldc [Ljava/lang/String;
aastore
invokevirtual java.lang.Class.getMethod:(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
astore 4
start local 4 6: aload 4
aconst_null
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 0
aastore
invokevirtual java.lang.reflect.Method.invoke:(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
pop
end local 4 end local 3 end local 2 end local 1 7: goto 12
StackMap locals:
StackMap stack: java.lang.Exception
8: astore 1
start local 1 9: getstatic java.lang.System.err:Ljava/io/PrintStream;
ldc "Unable to start FOP:"
invokevirtual java.io.PrintStream.println:(Ljava/lang/String;)V
10: aload 1
invokevirtual java.lang.Exception.printStackTrace:()V
11: iconst_m1
invokestatic java.lang.System.exit:(I)V
end local 1 12: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 13 0 args [Ljava/lang/String;
1 7 1 urls [Ljava/net/URL;
3 7 2 loader Ljava/lang/ClassLoader;
5 7 3 clazz Ljava/lang/Class;
6 7 4 mainMethod Ljava/lang/reflect/Method;
9 12 1 e Ljava/lang/Exception;
Exception table:
from to target type
0 7 8 Class java.lang.Exception
MethodParameters:
Name Flags
args
public static void startFOP(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=5, locals=6, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aconst_null
astore 2
start local 2 2: aconst_null
astore 3
start local 3 3: new org.apache.fop.cli.CommandLineOptions
dup
invokespecial org.apache.fop.cli.CommandLineOptions.<init>:()V
astore 1
4: aload 1
aload 0
invokevirtual org.apache.fop.cli.CommandLineOptions.parse:([Ljava/lang/String;)Z
ifne 6
5: iconst_0
invokestatic java.lang.System.exit:(I)V
6: StackMap locals: org.apache.fop.cli.CommandLineOptions org.apache.fop.apps.FOUserAgent java.io.OutputStream
StackMap stack:
aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getFOUserAgent:()Lorg/apache/fop/apps/FOUserAgent;
astore 2
7: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFormat:()Ljava/lang/String;
astore 4
start local 4 8: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFile:()Ljava/io/File;
ifnull 14
9: new java.io.BufferedOutputStream
dup
10: new java.io.FileOutputStream
dup
aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFile:()Ljava/io/File;
invokespecial java.io.FileOutputStream.<init>:(Ljava/io/File;)V
11: invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 3
12: aload 2
aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFile:()Ljava/io/File;
invokevirtual org.apache.fop.apps.FOUserAgent.setOutputFile:(Ljava/io/File;)V
13: goto 16
StackMap locals: java.lang.String
StackMap stack:
14: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.isOutputToStdOut:()Z
ifeq 16
15: new java.io.BufferedOutputStream
dup
getstatic java.lang.System.out:Ljava/io/PrintStream;
invokespecial java.io.BufferedOutputStream.<init>:(Ljava/io/OutputStream;)V
astore 3
16: StackMap locals:
StackMap stack:
ldc "text/xsl"
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 19
17: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getInputHandler:()Lorg/apache/fop/cli/InputHandler;
aload 2
aload 4
aload 3
invokevirtual org.apache.fop.cli.InputHandler.renderTo:(Lorg/apache/fop/apps/FOUserAgent;Ljava/lang/String;Ljava/io/OutputStream;)V
18: goto 24
19: StackMap locals:
StackMap stack:
aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getInputHandler:()Lorg/apache/fop/cli/InputHandler;
aload 3
invokevirtual org.apache.fop.cli.InputHandler.transformTo:(Ljava/io/OutputStream;)V
20: goto 24
StackMap locals:
StackMap stack: java.lang.Throwable
21: astore 5
22: aload 3
invokestatic org.apache.commons.io.IOUtils.closeQuietly:(Ljava/io/OutputStream;)V
23: aload 5
athrow
24: StackMap locals:
StackMap stack:
aload 3
invokestatic org.apache.commons.io.IOUtils.closeQuietly:(Ljava/io/OutputStream;)V
25: ldc "application/X-fop-awt-preview"
aload 4
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 34
26: iconst_0
invokestatic java.lang.System.exit:(I)V
end local 4 27: goto 34
StackMap locals: java.lang.String[] org.apache.fop.cli.CommandLineOptions org.apache.fop.apps.FOUserAgent java.io.OutputStream
StackMap stack: java.lang.Exception
28: astore 4
start local 4 29: aload 1
ifnull 33
30: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getLogger:()Lorg/apache/commons/logging/Log;
ldc "Exception"
aload 4
invokeinterface org.apache.commons.logging.Log.error:(Ljava/lang/Object;Ljava/lang/Throwable;)V
31: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFile:()Ljava/io/File;
ifnull 33
32: aload 1
invokevirtual org.apache.fop.cli.CommandLineOptions.getOutputFile:()Ljava/io/File;
invokevirtual java.io.File.delete:()Z
pop
33: StackMap locals: java.lang.Exception
StackMap stack:
iconst_1
invokestatic java.lang.System.exit:(I)V
end local 4 34: StackMap locals:
StackMap stack:
return
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 35 0 args [Ljava/lang/String;
1 35 1 options Lorg/apache/fop/cli/CommandLineOptions;
2 35 2 foUserAgent Lorg/apache/fop/apps/FOUserAgent;
3 35 3 out Ljava/io/OutputStream;
8 27 4 outputFormat Ljava/lang/String;
29 34 4 e Ljava/lang/Exception;
Exception table:
from to target type
8 21 21 any
3 27 28 Class java.lang.Exception
MethodParameters:
Name Flags
args
public static void main(java.lang.String[]);
descriptor: ([Ljava/lang/String;)V
flags: (0x0009) ACC_PUBLIC, ACC_STATIC
Code:
stack=1, locals=1, args_size=1
start local 0 0: invokestatic org.apache.fop.cli.Main.checkDependencies:()Z
ifeq 3
1: aload 0
invokestatic org.apache.fop.cli.Main.startFOP:([Ljava/lang/String;)V
2: goto 4
3: StackMap locals:
StackMap stack:
aload 0
invokestatic org.apache.fop.cli.Main.startFOPWithDynamicClasspath:([Ljava/lang/String;)V
4: StackMap locals:
StackMap stack:
return
end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 args [Ljava/lang/String;
MethodParameters:
Name Flags
args
}
SourceFile: "Main.java"
NestMembers:
org.apache.fop.cli.Main$1 org.apache.fop.cli.Main$2
InnerClasses:
org.apache.fop.cli.Main$1
org.apache.fop.cli.Main$2