final class com.sun.security.sasl.Provider$ProviderService extends java.security.Provider$Service
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: com.sun.security.sasl.Provider$ProviderService
super_class: java.security.Provider$Service
{
void <init>(java.security.Provider, java.lang.String, java.lang.String, java.lang.String);
descriptor: (Ljava/security/Provider;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
flags: (0x0000)
Code:
stack=7, locals=5, args_size=5
start local 0 // com.sun.security.sasl.Provider$ProviderService this
start local 1 // java.security.Provider p
start local 2 // java.lang.String type
start local 3 // java.lang.String algo
start local 4 // java.lang.String cn
0: .line 61
aload 0 /* this */
aload 1 /* p */
aload 2 /* type */
aload 3 /* algo */
aload 4 /* cn */
aconst_null
aconst_null
invokespecial java.security.Provider$Service.<init>:(Ljava/security/Provider;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/util/List;Ljava/util/Map;)V
1: .line 62
return
end local 4 // java.lang.String cn
end local 3 // java.lang.String algo
end local 2 // java.lang.String type
end local 1 // java.security.Provider p
end local 0 // com.sun.security.sasl.Provider$ProviderService this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lcom/sun/security/sasl/Provider$ProviderService;
0 2 1 p Ljava/security/Provider;
0 2 2 type Ljava/lang/String;
0 2 3 algo Ljava/lang/String;
0 2 4 cn Ljava/lang/String;
MethodParameters:
Name Flags
p
type
algo
cn
public java.lang.Object newInstance(java.lang.Object);
descriptor: (Ljava/lang/Object;)Ljava/lang/Object;
flags: (0x0001) ACC_PUBLIC
Code:
stack=5, locals=5, args_size=2
start local 0 // com.sun.security.sasl.Provider$ProviderService this
start local 1 // java.lang.Object ctrParamObj
0: .line 67
aload 0 /* this */
invokevirtual com.sun.security.sasl.Provider$ProviderService.getType:()Ljava/lang/String;
astore 2 /* type */
start local 2 // java.lang.String type
1: .line 68
aload 1 /* ctrParamObj */
ifnull 5
2: .line 69
new java.security.InvalidParameterException
dup
3: .line 70
new java.lang.StringBuilder
dup
ldc "constructorParameter not used with "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 2 /* type */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " engines"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
4: .line 69
invokespecial java.security.InvalidParameterException.<init>:(Ljava/lang/String;)V
athrow
5: .line 73
StackMap locals: java.lang.String
StackMap stack:
aload 0 /* this */
invokevirtual com.sun.security.sasl.Provider$ProviderService.getAlgorithm:()Ljava/lang/String;
astore 3 /* algo */
start local 3 // java.lang.String algo
6: .line 76
aload 3 /* algo */
ldc "DIGEST-MD5"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 9
7: .line 77
new com.sun.security.sasl.digest.FactoryImpl
dup
invokespecial com.sun.security.sasl.digest.FactoryImpl.<init>:()V
8: areturn
9: .line 79
StackMap locals: java.lang.String
StackMap stack:
aload 3 /* algo */
ldc "NTLM"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 12
10: .line 80
new com.sun.security.sasl.ntlm.FactoryImpl
dup
invokespecial com.sun.security.sasl.ntlm.FactoryImpl.<init>:()V
11: areturn
12: .line 82
StackMap locals:
StackMap stack:
aload 2 /* type */
ldc "SaslClientFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 17
13: .line 83
aload 3 /* algo */
ldc "EXTERNAL"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
aload 3 /* algo */
ldc "PLAIN"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifne 15
14: .line 84
aload 3 /* algo */
ldc "CRAM-MD5"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
15: .line 85
StackMap locals:
StackMap stack:
new com.sun.security.sasl.ClientFactoryImpl
dup
invokespecial com.sun.security.sasl.ClientFactoryImpl.<init>:()V
16: areturn
17: .line 87
StackMap locals:
StackMap stack:
aload 2 /* type */
ldc "SaslServerFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
18: .line 88
aload 3 /* algo */
ldc "CRAM-MD5"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 25
19: .line 89
new com.sun.security.sasl.ServerFactoryImpl
dup
invokespecial com.sun.security.sasl.ServerFactoryImpl.<init>:()V
20: areturn
21: .line 92
StackMap locals:
StackMap stack: java.lang.Exception
astore 4 /* ex */
start local 4 // java.lang.Exception ex
22: .line 93
new java.security.NoSuchAlgorithmException
dup
new java.lang.StringBuilder
dup
ldc "Error constructing "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
23: .line 94
aload 2 /* type */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " for "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 3 /* algo */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
ldc " using SunSASL"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4 /* ex */
24: .line 93
invokespecial java.security.NoSuchAlgorithmException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 // java.lang.Exception ex
25: .line 96
StackMap locals:
StackMap stack:
new java.security.ProviderException
dup
new java.lang.StringBuilder
dup
ldc "No impl for "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
aload 3 /* algo */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
26: .line 97
ldc " "
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
aload 2 /* type */
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
27: .line 96
invokespecial java.security.ProviderException.<init>:(Ljava/lang/String;)V
athrow
end local 3 // java.lang.String algo
end local 2 // java.lang.String type
end local 1 // java.lang.Object ctrParamObj
end local 0 // com.sun.security.sasl.Provider$ProviderService this
LocalVariableTable:
Start End Slot Name Signature
0 28 0 this Lcom/sun/security/sasl/Provider$ProviderService;
0 28 1 ctrParamObj Ljava/lang/Object;
1 28 2 type Ljava/lang/String;
6 28 3 algo Ljava/lang/String;
22 25 4 ex Ljava/lang/Exception;
Exception table:
from to target type
6 8 21 Class java.lang.Exception
9 11 21 Class java.lang.Exception
12 16 21 Class java.lang.Exception
17 20 21 Class java.lang.Exception
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
ctrParamObj
}
SourceFile: "Provider.java"
NestHost: com.sun.security.sasl.Provider
InnerClasses:
private final ProviderService = com.sun.security.sasl.Provider$ProviderService of com.sun.security.sasl.Provider
public Service = java.security.Provider$Service of java.security.Provider