final class sun.security.smartcardio.SunPCSC$ProviderService extends java.security.Provider$Service
minor version: 0
major version: 59
flags: flags: (0x0030) ACC_FINAL, ACC_SUPER
this_class: sun.security.smartcardio.SunPCSC$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 // sun.security.smartcardio.SunPCSC$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 46
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 47
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 // sun.security.smartcardio.SunPCSC$ProviderService this
LocalVariableTable:
Start End Slot Name Signature
0 2 0 this Lsun/security/smartcardio/SunPCSC$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 // sun.security.smartcardio.SunPCSC$ProviderService this
start local 1 // java.lang.Object ctrParamObj
0: .line 52
aload 0 /* this */
invokevirtual sun.security.smartcardio.SunPCSC$ProviderService.getType:()Ljava/lang/String;
astore 2 /* type */
start local 2 // java.lang.String type
1: .line 53
aload 0 /* this */
invokevirtual sun.security.smartcardio.SunPCSC$ProviderService.getAlgorithm:()Ljava/lang/String;
astore 3 /* algo */
start local 3 // java.lang.String algo
2: .line 55
aload 2 /* type */
ldc "TerminalFactory"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
3: .line 56
aload 3 /* algo */
ldc "PC/SC"
invokevirtual java.lang.String.equals:(Ljava/lang/Object;)Z
ifeq 10
4: .line 57
new sun.security.smartcardio.SunPCSC$Factory
dup
aload 1 /* ctrParamObj */
invokespecial sun.security.smartcardio.SunPCSC$Factory.<init>:(Ljava/lang/Object;)V
5: areturn
6: .line 59
StackMap locals: sun.security.smartcardio.SunPCSC$ProviderService java.lang.Object java.lang.String java.lang.String
StackMap stack: java.lang.Exception
astore 4 /* ex */
start local 4 // java.lang.Exception ex
7: .line 60
new java.security.NoSuchAlgorithmException
dup
new java.lang.StringBuilder
dup
ldc "Error constructing "
invokespecial java.lang.StringBuilder.<init>:(Ljava/lang/String;)V
8: .line 61
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 SunPCSC"
invokevirtual java.lang.StringBuilder.append:(Ljava/lang/String;)Ljava/lang/StringBuilder;
invokevirtual java.lang.StringBuilder.toString:()Ljava/lang/String;
aload 4 /* ex */
9: .line 60
invokespecial java.security.NoSuchAlgorithmException.<init>:(Ljava/lang/String;Ljava/lang/Throwable;)V
athrow
end local 4 // java.lang.Exception ex
10: .line 63
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;
11: .line 64
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;
12: .line 63
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 // sun.security.smartcardio.SunPCSC$ProviderService this
LocalVariableTable:
Start End Slot Name Signature
0 13 0 this Lsun/security/smartcardio/SunPCSC$ProviderService;
0 13 1 ctrParamObj Ljava/lang/Object;
1 13 2 type Ljava/lang/String;
2 13 3 algo Ljava/lang/String;
7 10 4 ex Ljava/lang/Exception;
Exception table:
from to target type
2 5 6 Class java.lang.Exception
Exceptions:
throws java.security.NoSuchAlgorithmException
MethodParameters:
Name Flags
ctrParamObj
}
SourceFile: "SunPCSC.java"
NestHost: sun.security.smartcardio.SunPCSC
InnerClasses:
public Service = java.security.Provider$Service of java.security.Provider
public final Factory = sun.security.smartcardio.SunPCSC$Factory of sun.security.smartcardio.SunPCSC
private final ProviderService = sun.security.smartcardio.SunPCSC$ProviderService of sun.security.smartcardio.SunPCSC