public class ch.qos.cal10n.MessageConveyor implements ch.qos.cal10n.IMessageConveyor
minor version: 0
major version: 59
flags: flags: (0x0021) ACC_PUBLIC, ACC_SUPER
this_class: ch.qos.cal10n.MessageConveyor
super_class: java.lang.Object
{
final java.util.Locale locale;
descriptor: Ljava/util/Locale;
flags: (0x0010) ACC_FINAL
final java.util.Map<java.lang.String, ch.qos.cal10n.util.CAL10NBundle> cache;
descriptor: Ljava/util/Map;
flags: (0x0010) ACC_FINAL
Signature: Ljava/util/Map<Ljava/lang/String;Lch/qos/cal10n/util/CAL10NBundle;>;
public void <init>(java.util.Locale);
descriptor: (Ljava/util/Locale;)V
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 0
invokespecial java.lang.Object.<init>:()V
1: aload 0
new java.util.concurrent.ConcurrentHashMap
dup
invokespecial java.util.concurrent.ConcurrentHashMap.<init>:()V
putfield ch.qos.cal10n.MessageConveyor.cache:Ljava/util/Map;
2: aload 0
aload 1
putfield ch.qos.cal10n.MessageConveyor.locale:Ljava/util/Locale;
3: return
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 4 0 this Lch/qos/cal10n/MessageConveyor;
0 4 1 locale Ljava/util/Locale;
MethodParameters:
Name Flags
locale
public <E extends java.lang.Enum<?>> java.lang.String getMessage(E, []);
descriptor: (Ljava/lang/Enum;[Ljava/lang/Object;)Ljava/lang/String;
flags: (0x0081) ACC_PUBLIC, ACC_VARARGS
Code:
stack=3, locals=8, args_size=3
start local 0 start local 1 start local 2 0: aload 1
invokevirtual java.lang.Enum.getDeclaringClass:()Ljava/lang/Class;
astore 3
start local 3 1: aload 3
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
astore 4
start local 4 2: aload 0
getfield ch.qos.cal10n.MessageConveyor.cache:Ljava/util/Map;
aload 4
invokeinterface java.util.Map.get:(Ljava/lang/Object;)Ljava/lang/Object;
checkcast ch.qos.cal10n.util.CAL10NBundle
astore 5
start local 5 3: aload 5
ifnull 4
aload 5
invokevirtual ch.qos.cal10n.util.CAL10NBundle.hasChanged:()Z
ifeq 6
4: StackMap locals: java.lang.Class java.lang.String ch.qos.cal10n.util.CAL10NBundle
StackMap stack:
aload 0
aload 3
invokevirtual ch.qos.cal10n.MessageConveyor.lookupResourceBundleByEnumClassAndLocale:(Ljava/lang/Class;)Lch/qos/cal10n/util/CAL10NBundle;
astore 5
5: aload 0
getfield ch.qos.cal10n.MessageConveyor.cache:Ljava/util/Map;
aload 4
aload 5
invokeinterface java.util.Map.put:(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
pop
6: StackMap locals:
StackMap stack:
aload 1
invokevirtual java.lang.Enum.toString:()Ljava/lang/String;
astore 6
start local 6 7: aload 5
aload 6
invokevirtual ch.qos.cal10n.util.CAL10NBundle.getString:(Ljava/lang/String;)Ljava/lang/String;
astore 7
start local 7 8: aload 7
ifnonnull 10
9: new java.lang.StringBuilder
dup
ldc "No key found for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 6
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
areturn
10: StackMap locals: java.lang.String java.lang.String
StackMap stack:
aload 2
ifnull 11
aload 2
arraylength
ifne 12
11: StackMap locals:
StackMap stack:
aload 7
areturn
12: StackMap locals:
StackMap stack:
aload 7
aload 2
invokestatic java.text.MessageFormat.format:(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
areturn
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
0 13 0 this Lch/qos/cal10n/MessageConveyor;
0 13 1 key TE;
0 13 2 args [Ljava/lang/Object;
1 13 3 declaringClass Ljava/lang/Class<+Ljava/lang/Enum<*>;>;
2 13 4 declaringClassName Ljava/lang/String;
3 13 5 rb Lch/qos/cal10n/util/CAL10NBundle;
7 13 6 keyAsStr Ljava/lang/String;
8 13 7 value Ljava/lang/String;
Exceptions:
throws ch.qos.cal10n.MessageConveyorException
Signature: <E:Ljava/lang/Enum<*>;>(TE;[Ljava/lang/Object;)Ljava/lang/String;
MethodParameters:
Name Flags
key
args
private <E extends java.lang.Enum<?>> ch.qos.cal10n.util.CAL10NBundle lookupResourceBundleByEnumClassAndLocale(java.lang.Class<E>);
descriptor: (Ljava/lang/Class;)Lch/qos/cal10n/util/CAL10NBundle;
flags: (0x0002) ACC_PRIVATE
Code:
stack=5, locals=7, args_size=2
start local 0 start local 1 0: new ch.qos.cal10n.util.AnnotationExtractorViaEnumClass
dup
aload 1
invokespecial ch.qos.cal10n.util.AnnotationExtractorViaEnumClass.<init>:(Ljava/lang/Class;)V
astore 2
start local 2 1: aload 2
invokevirtual ch.qos.cal10n.util.AnnotationExtractorViaEnumClass.getBaseName:()Ljava/lang/String;
astore 3
start local 3 2: aload 3
ifnonnull 9
3: new ch.qos.cal10n.MessageConveyorException
dup
4: new java.lang.StringBuilder
dup
ldc "Missing @BaseName annotation in enum type ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
5: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]. See also "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
6: ldc "http://cal10n.qos.ch/codes.html#missingBaseNameAnnotation"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
7: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
8: invokespecial ch.qos.cal10n.MessageConveyorException.<init>:(Ljava/lang/String;)V
athrow
9: StackMap locals: ch.qos.cal10n.util.AnnotationExtractorViaEnumClass java.lang.String
StackMap stack:
aload 2
aload 0
getfield ch.qos.cal10n.MessageConveyor.locale:Ljava/util/Locale;
invokevirtual ch.qos.cal10n.util.AnnotationExtractorViaEnumClass.extractCharset:(Ljava/util/Locale;)Ljava/lang/String;
astore 4
start local 4 10: new ch.qos.cal10n.util.CAL10NBundleFinderByClassloader
dup
aload 1
invokevirtual java.lang.Class.getClassLoader:()Ljava/lang/ClassLoader;
invokespecial ch.qos.cal10n.util.CAL10NBundleFinderByClassloader.<init>:(Ljava/lang/ClassLoader;)V
astore 5
start local 5 11: aload 5
12: aload 3
aload 0
getfield ch.qos.cal10n.MessageConveyor.locale:Ljava/util/Locale;
aload 4
13: invokevirtual ch.qos.cal10n.util.CAL10NBundleFinderByClassloader.getBundle:(Ljava/lang/String;Ljava/util/Locale;Ljava/lang/String;)Lch/qos/cal10n/util/CAL10NBundle;
astore 6
start local 6 14: aload 6
ifnonnull 21
15: new ch.qos.cal10n.MessageConveyorException
dup
16: new java.lang.StringBuilder
dup
ldc "Failed to locate resource bundle ["
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
17: ldc "] for locale ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 0
getfield ch.qos.cal10n.MessageConveyor.locale:Ljava/util/Locale;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/Object;)Ljava/lang/StringBuilder;
ldc "] for enum type ["
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
18: aload 1
invokevirtual java.lang.Class.getName:()Ljava/lang/String;
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc "]"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
19: invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
20: invokespecial ch.qos.cal10n.MessageConveyorException.<init>:(Ljava/lang/String;)V
athrow
21: StackMap locals: java.lang.String ch.qos.cal10n.util.CAL10NBundleFinderByClassloader ch.qos.cal10n.util.CAL10NBundle
StackMap stack:
aload 6
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 22 0 this Lch/qos/cal10n/MessageConveyor;
0 22 1 declaringClass Ljava/lang/Class<TE;>;
1 22 2 annotationExtractor Lch/qos/cal10n/util/AnnotationExtractorViaEnumClass;
2 22 3 baseName Ljava/lang/String;
10 22 4 charset Ljava/lang/String;
11 22 5 cal10NBundleFinderByClassloader Lch/qos/cal10n/util/CAL10NBundleFinderByClassloader;
14 22 6 rb Lch/qos/cal10n/util/CAL10NBundle;
Exceptions:
throws ch.qos.cal10n.MessageConveyorException
Signature: <E:Ljava/lang/Enum<*>;>(Ljava/lang/Class<TE;>;)Lch/qos/cal10n/util/CAL10NBundle;
MethodParameters:
Name Flags
declaringClass
public java.lang.String getMessage(ch.qos.cal10n.MessageParameterObj);
descriptor: (Lch/qos/cal10n/MessageParameterObj;)Ljava/lang/String;
flags: (0x0001) ACC_PUBLIC
Code:
stack=3, locals=2, args_size=2
start local 0 start local 1 0: aload 1
ifnonnull 4
1: new java.lang.IllegalArgumentException
dup
2: ldc "MessageParameterObj argumument cannot be null"
3: invokespecial java.lang.IllegalArgumentException.<init>:(Ljava/lang/String;)V
athrow
4: StackMap locals:
StackMap stack:
aload 0
aload 1
invokevirtual ch.qos.cal10n.MessageParameterObj.getKey:()Ljava/lang/Enum;
aload 1
invokevirtual ch.qos.cal10n.MessageParameterObj.getArgs:()[Ljava/lang/Object;
invokevirtual ch.qos.cal10n.MessageConveyor.getMessage:(Ljava/lang/Enum;[Ljava/lang/Object;)Ljava/lang/String;
areturn
end local 1 end local 0 LocalVariableTable:
Start End Slot Name Signature
0 5 0 this Lch/qos/cal10n/MessageConveyor;
0 5 1 mpo Lch/qos/cal10n/MessageParameterObj;
Exceptions:
throws ch.qos.cal10n.MessageConveyorException
MethodParameters:
Name Flags
mpo
}
SourceFile: "MessageConveyor.java"