public class org.apache.catalina.startup.CatalinaBaseConfigurationSource implements org.apache.tomcat.util.file.ConfigurationSource
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: org.apache.catalina.startup.CatalinaBaseConfigurationSource
super_class: java.lang.Object
{
protected static final org.apache.tomcat.util.res.StringManager sm;
descriptor: Lorg/apache/tomcat/util/res/StringManager;
flags: (0x001c) ACC_PROTECTED, ACC_STATIC, ACC_FINAL
private final java.lang.String serverXmlPath;
descriptor: Ljava/lang/String;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.io.File catalinaBaseFile;
descriptor: Ljava/io/File;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
private final java.net.URI catalinaBaseUri;
descriptor: Ljava/net/URI;
flags: (0x0012) ACC_PRIVATE, ACC_FINAL
static void <clinit>();
descriptor: ()V
flags: (0x0008) ACC_STATIC
Code:
stack=1, locals=0, args_size=0
0: ldc "org.apache.catalina.startup"
invokestatic org.apache.tomcat.util.res.StringManager.getManager:(Ljava/lang/String;)Lorg/apache/tomcat/util/res/StringManager;
putstatic org.apache.catalina.startup.CatalinaBaseConfigurationSource.sm:Lorg/apache/tomcat/util/res/StringManager;
return
LocalVariableTable:
Start End Slot Name Signature
public void <init>(java.io.File, java.lang.String);
descriptor: (Ljava/io/File;Ljava/lang/String;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=2, 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
aload 1
putfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseFile:Ljava/io/File;
2: aload 0
aload 1
invokevirtual java.io.File.toURI:()Ljava/net/URI;
putfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseUri:Ljava/net/URI;
3: aload 0
aload 2
putfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.serverXmlPath:Ljava/lang/String;
4: return
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lorg/apache/catalina/startup/CatalinaBaseConfigurationSource;
0 5 1 catalinaBaseFile Ljava/io/File;
0 5 2 serverXmlPath Ljava/lang/String;
MethodParameters:
Name Flags
catalinaBaseFile
serverXmlPath
public org.apache.tomcat.util.file.ConfigurationSource$Resource getServerXml();
descriptor: ()Lorg/apache/tomcat/util/file/ConfigurationSource$Resource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=4, args_size=1
start local 0 0: aconst_null
astore 1
start local 1 1: aconst_null
astore 2
start local 2 2: aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.serverXmlPath:Ljava/lang/String;
ifnull 3
aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.serverXmlPath:Ljava/lang/String;
ldc "conf/server.xml"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 5
3: StackMap locals: java.io.IOException org.apache.tomcat.util.file.ConfigurationSource$Resource
StackMap stack:
aload 0
invokespecial org.apache.tomcat.util.file.ConfigurationSource.getServerXml:()Lorg/apache/tomcat/util/file/ConfigurationSource$Resource;
astore 2
4: goto 9
5: StackMap locals:
StackMap stack:
aload 0
aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.serverXmlPath:Ljava/lang/String;
invokevirtual org.apache.catalina.startup.CatalinaBaseConfigurationSource.getResource:(Ljava/lang/String;)Lorg/apache/tomcat/util/file/ConfigurationSource$Resource;
astore 2
6: goto 9
StackMap locals:
StackMap stack: java.io.IOException
7: astore 3
start local 3 8: aload 3
astore 1
end local 3 9: StackMap locals:
StackMap stack:
aload 2
ifnonnull 16
10: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
ldc "server-embed.xml"
invokevirtual java.lang.ClassLoader.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
astore 3
start local 3 11: aload 3
ifnull 16
12: new org.apache.tomcat.util.file.ConfigurationSource$Resource
dup
aload 3
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
ldc "server-embed.xml"
invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
invokevirtual java.net.URL.toURI:()Ljava/net/URI;
invokespecial org.apache.tomcat.util.file.ConfigurationSource$Resource.<init>:(Ljava/io/InputStream;Ljava/net/URI;)V
astore 2
13: goto 16
StackMap locals: org.apache.catalina.startup.CatalinaBaseConfigurationSource java.io.IOException org.apache.tomcat.util.file.ConfigurationSource$Resource java.io.InputStream
StackMap stack: java.net.URISyntaxException
14: pop
15: aload 3
invokevirtual java.io.InputStream.close:()V
end local 3 16: StackMap locals:
StackMap stack:
aload 2
ifnonnull 18
aload 1
ifnull 18
17: aload 1
athrow
18: StackMap locals:
StackMap stack:
aload 2
areturn
end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 19 0 this Lorg/apache/catalina/startup/CatalinaBaseConfigurationSource;
1 19 1 ioe Ljava/io/IOException;
2 19 2 result Lorg/apache/tomcat/util/file/ConfigurationSource$Resource;
8 9 3 e Ljava/io/IOException;
11 16 3 stream Ljava/io/InputStream;
Exception table:
from to target type
2 6 7 Class java.io.IOException
12 13 14 Class java.net.URISyntaxException
Exceptions:
throws java.io.IOException
public org.apache.tomcat.util.file.ConfigurationSource$Resource getResource(java.lang.String);
descriptor: (Ljava/lang/String;)Lorg/apache/tomcat/util/file/ConfigurationSource$Resource;
flags: (0x0001) ACC_PUBLIC
Code:
stack=8, locals=6, args_size=2
start local 0 start local 1 0: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.io.File.isAbsolute:()Z
ifne 3
2: new java.io.File
dup
aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseFile:Ljava/io/File;
aload 1
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 2
3: StackMap locals: java.io.File
StackMap stack:
aload 2
invokevirtual java.io.File.isFile:()Z
ifeq 5
4: new org.apache.tomcat.util.file.ConfigurationSource$Resource
dup
new java.io.FileInputStream
dup
aload 2
invokespecial java.io.FileInputStream.<init>:(Ljava/io/File;)V
aload 2
invokevirtual java.io.File.toURI:()Ljava/net/URI;
invokespecial org.apache.tomcat.util.file.ConfigurationSource$Resource.<init>:(Ljava/io/InputStream;Ljava/net/URI;)V
areturn
5: StackMap locals:
StackMap stack:
aconst_null
astore 3
aconst_null
astore 4
6: aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
aload 1
invokevirtual java.lang.ClassLoader.getResourceAsStream:(Ljava/lang/String;)Ljava/io/InputStream;
astore 5
start local 5 7: aload 5
ifnull 11
8: new org.apache.tomcat.util.file.ConfigurationSource$Resource
dup
aload 5
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
aload 1
invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
invokevirtual java.net.URL.toURI:()Ljava/net/URI;
invokespecial org.apache.tomcat.util.file.ConfigurationSource$Resource.<init>:(Ljava/io/InputStream;Ljava/net/URI;)V
9: aload 5
ifnull 10
aload 5
invokevirtual java.io.InputStream.close:()V
10: StackMap locals: org.apache.catalina.startup.CatalinaBaseConfigurationSource java.lang.String java.io.File java.lang.Throwable java.lang.Throwable java.io.InputStream
StackMap stack: org.apache.tomcat.util.file.ConfigurationSource$Resource
areturn
11: StackMap locals:
StackMap stack:
aload 5
ifnull 20
aload 5
invokevirtual java.io.InputStream.close:()V
goto 20
StackMap locals:
StackMap stack: java.lang.Throwable
12: astore 3
aload 5
ifnull 13
aload 5
invokevirtual java.io.InputStream.close:()V
end local 5 StackMap locals:
StackMap stack:
13: aload 3
athrow
StackMap locals:
StackMap stack: java.lang.Throwable
14: astore 4
aload 3
ifnonnull 15
aload 4
astore 3
goto 16
StackMap locals:
StackMap stack:
15: aload 3
aload 4
if_acmpeq 16
aload 3
aload 4
invokevirtual java.lang.Throwable.addSuppressed:(Ljava/lang/Throwable;)V
StackMap locals:
StackMap stack:
16: aload 3
athrow
StackMap locals: org.apache.catalina.startup.CatalinaBaseConfigurationSource java.lang.String java.io.File
StackMap stack: java.nio.file.InvalidPathException
17: pop
goto 20
18: StackMap locals:
StackMap stack: java.net.URISyntaxException
astore 3
start local 3 19: new java.io.IOException
dup
getstatic org.apache.catalina.startup.CatalinaBaseConfigurationSource.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "catalinaConfigurationSource.cannotObtainURL"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 3
invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 3 20: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual org.apache.catalina.startup.CatalinaBaseConfigurationSource.getURI:(Ljava/lang/String;)Ljava/net/URI;
astore 3
start local 3 21: aload 3
invokevirtual java.net.URI.toURL:()Ljava/net/URL;
astore 4
start local 4 22: new org.apache.tomcat.util.file.ConfigurationSource$Resource
dup
aload 4
invokevirtual java.net.URL.openConnection:()Ljava/net/URLConnection;
invokevirtual java.net.URLConnection.getInputStream:()Ljava/io/InputStream;
aload 3
invokespecial org.apache.tomcat.util.file.ConfigurationSource$Resource.<init>:(Ljava/io/InputStream;Ljava/net/URI;)V
23: areturn
end local 4 24: StackMap locals: org.apache.catalina.startup.CatalinaBaseConfigurationSource java.lang.String java.io.File java.net.URI
StackMap stack: java.net.MalformedURLException
astore 4
start local 4 25: new java.io.IOException
dup
getstatic org.apache.catalina.startup.CatalinaBaseConfigurationSource.sm:Lorg/apache/tomcat/util/res/StringManager;
ldc "catalinaConfigurationSource.cannotObtainURL"
iconst_1
anewarray java.lang.Object
dup
iconst_0
aload 1
aastore
invokevirtual org.apache.tomcat.util.res.StringManager.getString:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
aload 4
invokespecial java.io.IOException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 26 0 this Lorg/apache/catalina/startup/CatalinaBaseConfigurationSource;
0 26 1 name Ljava/lang/String;
1 26 2 f Ljava/io/File;
7 13 5 stream Ljava/io/InputStream;
19 20 3 e Ljava/net/URISyntaxException;
21 26 3 uri Ljava/net/URI;
22 24 4 url Ljava/net/URL;
25 26 4 e Ljava/net/MalformedURLException;
Exception table:
from to target type
7 9 12 any
6 10 14 any
11 14 14 any
5 10 17 Class java.nio.file.InvalidPathException
11 17 17 Class java.nio.file.InvalidPathException
5 10 18 Class java.net.URISyntaxException
11 17 18 Class java.net.URISyntaxException
21 23 24 Class java.net.MalformedURLException
Exceptions:
throws java.io.IOException
MethodParameters:
Name Flags
name
public java.net.URI getURI(java.lang.String);
descriptor: (Ljava/lang/String;)Ljava/net/URI;
flags: (0x0001) ACC_PUBLIC
Code:
stack=4, locals=4, args_size=2
start local 0 start local 1 0: new java.io.File
dup
aload 1
invokespecial java.io.File.<init>:(Ljava/lang/String;)V
astore 2
start local 2 1: aload 2
invokevirtual java.io.File.isAbsolute:()Z
ifne 3
2: new java.io.File
dup
aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseFile:Ljava/io/File;
aload 1
invokespecial java.io.File.<init>:(Ljava/io/File;Ljava/lang/String;)V
astore 2
3: StackMap locals: java.io.File
StackMap stack:
aload 2
invokevirtual java.io.File.isFile:()Z
ifeq 5
4: aload 2
invokevirtual java.io.File.toURI:()Ljava/net/URI;
areturn
5: StackMap locals:
StackMap stack:
aload 0
invokevirtual java.lang.Object.getClass:()Ljava/lang/Class;
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
aload 1
invokevirtual java.lang.ClassLoader.getResource:(Ljava/lang/String;)Ljava/net/URL;
astore 3
start local 3 6: aload 3
ifnull 10
7: aload 3
invokevirtual java.net.URL.toURI:()Ljava/net/URI;
8: areturn
end local 3 9: StackMap locals:
StackMap stack: java.lang.Exception
pop
10: StackMap locals:
StackMap stack:
aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseUri:Ljava/net/URI;
ifnull 13
11: aload 0
getfield org.apache.catalina.startup.CatalinaBaseConfigurationSource.catalinaBaseUri:Ljava/net/URI;
aload 1
invokevirtual java.net.URI.resolve:(Ljava/lang/String;)Ljava/net/URI;
astore 3
start local 3 12: goto 14
end local 3 13: StackMap locals:
StackMap stack:
aload 1
invokestatic java.net.URI.create:(Ljava/lang/String;)Ljava/net/URI;
astore 3
start local 3 14: StackMap locals: java.net.URI
StackMap stack:
aload 3
areturn
end local 3 end local 2 end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 15 0 this Lorg/apache/catalina/startup/CatalinaBaseConfigurationSource;
0 15 1 name Ljava/lang/String;
1 15 2 f Ljava/io/File;
6 9 3 resource Ljava/net/URL;
12 13 3 uri Ljava/net/URI;
14 15 3 uri Ljava/net/URI;
Exception table:
from to target type
5 8 9 Class java.lang.Exception
MethodParameters:
Name Flags
name
}
SourceFile: "CatalinaBaseConfigurationSource.java"
InnerClasses:
public Resource = org.apache.tomcat.util.file.ConfigurationSource$Resource of org.apache.tomcat.util.file.ConfigurationSource