V1TBSCertificateGenerator.smali
.class public Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;
.super Ljava/lang/Object;
.source "V1TBSCertificateGenerator.java"
# instance fields
.field endDate:Lorg/spongycastle/asn1/x509/Time;
.field issuer:Lorg/spongycastle/asn1/x500/X500Name;
.field serialNumber:Lorg/spongycastle/asn1/ASN1Integer;
.field signature:Lorg/spongycastle/asn1/x509/AlgorithmIdentifier;
.field startDate:Lorg/spongycastle/asn1/x509/Time;
.field subject:Lorg/spongycastle/asn1/x500/X500Name;
.field subjectPublicKeyInfo:Lorg/spongycastle/asn1/x509/SubjectPublicKeyInfo;
.field version:Lorg/spongycastle/asn1/DERTaggedObject;
# direct methods
.method public constructor <init>()V
.registers 7
.prologue
.line 37
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
.line 27
new-instance v0, Lorg/spongycastle/asn1/DERTaggedObject;
const/4 v1, 0x1
const/4 v2, 0x0
new-instance v3, Lorg/spongycastle/asn1/ASN1Integer;
const-wide/16 v4, 0x0
invoke-direct {v3, v4, v5}, Lorg/spongycastle/asn1/ASN1Integer;-><init>(J)V
invoke-direct {v0, v1, v2, v3}, Lorg/spongycastle/asn1/DERTaggedObject;-><init>(ZILorg/spongycastle/asn1/ASN1Encodable;)V
iput-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->version:Lorg/spongycastle/asn1/DERTaggedObject;
.line 38
return-void
.end method
# virtual methods
.method public generateTBSCertificate()Lorg/spongycastle/asn1/x509/TBSCertificate;
.registers 4
.prologue
.line 114
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->serialNumber:Lorg/spongycastle/asn1/ASN1Integer;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->signature:Lorg/spongycastle/asn1/x509/AlgorithmIdentifier;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->issuer:Lorg/spongycastle/asn1/x500/X500Name;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->startDate:Lorg/spongycastle/asn1/x509/Time;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->endDate:Lorg/spongycastle/asn1/x509/Time;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subject:Lorg/spongycastle/asn1/x500/X500Name;
if-eqz v0, :cond_1c
iget-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subjectPublicKeyInfo:Lorg/spongycastle/asn1/x509/SubjectPublicKeyInfo;
if-nez v0, :cond_24
.line 118
:cond_1c
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "not all mandatory fields set in V1 TBScertificate generator"
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.line 121
:cond_24
new-instance v0, Lorg/spongycastle/asn1/ASN1EncodableVector;
invoke-direct {v0}, Lorg/spongycastle/asn1/ASN1EncodableVector;-><init>()V
.line 124
iget-object v1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->serialNumber:Lorg/spongycastle/asn1/ASN1Integer;
invoke-virtual {v0, v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 125
iget-object v1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->signature:Lorg/spongycastle/asn1/x509/AlgorithmIdentifier;
invoke-virtual {v0, v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 126
iget-object v1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->issuer:Lorg/spongycastle/asn1/x500/X500Name;
invoke-virtual {v0, v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 131
new-instance v1, Lorg/spongycastle/asn1/ASN1EncodableVector;
invoke-direct {v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;-><init>()V
.line 133
iget-object v2, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->startDate:Lorg/spongycastle/asn1/x509/Time;
invoke-virtual {v1, v2}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 134
iget-object v2, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->endDate:Lorg/spongycastle/asn1/x509/Time;
invoke-virtual {v1, v2}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 136
new-instance v2, Lorg/spongycastle/asn1/DERSequence;
invoke-direct {v2, v1}, Lorg/spongycastle/asn1/DERSequence;-><init>(Lorg/spongycastle/asn1/ASN1EncodableVector;)V
invoke-virtual {v0, v2}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 138
iget-object v1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subject:Lorg/spongycastle/asn1/x500/X500Name;
invoke-virtual {v0, v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 140
iget-object v1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subjectPublicKeyInfo:Lorg/spongycastle/asn1/x509/SubjectPublicKeyInfo;
invoke-virtual {v0, v1}, Lorg/spongycastle/asn1/ASN1EncodableVector;->add(Lorg/spongycastle/asn1/ASN1Encodable;)V
.line 142
new-instance v1, Lorg/spongycastle/asn1/DERSequence;
invoke-direct {v1, v0}, Lorg/spongycastle/asn1/DERSequence;-><init>(Lorg/spongycastle/asn1/ASN1EncodableVector;)V
invoke-static {v1}, Lorg/spongycastle/asn1/x509/TBSCertificate;->getInstance(Ljava/lang/Object;)Lorg/spongycastle/asn1/x509/TBSCertificate;
move-result-object v0
return-object v0
.end method
.method public setEndDate(Lorg/spongycastle/asn1/ASN1UTCTime;)V
.registers 3
.prologue
.line 88
new-instance v0, Lorg/spongycastle/asn1/x509/Time;
invoke-direct {v0, p1}, Lorg/spongycastle/asn1/x509/Time;-><init>(Lorg/spongycastle/asn1/ASN1Primitive;)V
iput-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->endDate:Lorg/spongycastle/asn1/x509/Time;
.line 89
return-void
.end method
.method public setEndDate(Lorg/spongycastle/asn1/x509/Time;)V
.registers 2
.prologue
.line 82
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->endDate:Lorg/spongycastle/asn1/x509/Time;
.line 83
return-void
.end method
.method public setIssuer(Lorg/spongycastle/asn1/x500/X500Name;)V
.registers 2
.prologue
.line 64
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->issuer:Lorg/spongycastle/asn1/x500/X500Name;
.line 65
return-void
.end method
.method public setIssuer(Lorg/spongycastle/asn1/x509/X509Name;)V
.registers 3
.prologue
.line 58
invoke-virtual {p1}, Lorg/spongycastle/asn1/x509/X509Name;->toASN1Primitive()Lorg/spongycastle/asn1/ASN1Primitive;
move-result-object v0
invoke-static {v0}, Lorg/spongycastle/asn1/x500/X500Name;->getInstance(Ljava/lang/Object;)Lorg/spongycastle/asn1/x500/X500Name;
move-result-object v0
iput-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->issuer:Lorg/spongycastle/asn1/x500/X500Name;
.line 59
return-void
.end method
.method public setSerialNumber(Lorg/spongycastle/asn1/ASN1Integer;)V
.registers 2
.prologue
.line 43
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->serialNumber:Lorg/spongycastle/asn1/ASN1Integer;
.line 44
return-void
.end method
.method public setSignature(Lorg/spongycastle/asn1/x509/AlgorithmIdentifier;)V
.registers 2
.prologue
.line 49
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->signature:Lorg/spongycastle/asn1/x509/AlgorithmIdentifier;
.line 50
return-void
.end method
.method public setStartDate(Lorg/spongycastle/asn1/ASN1UTCTime;)V
.registers 3
.prologue
.line 76
new-instance v0, Lorg/spongycastle/asn1/x509/Time;
invoke-direct {v0, p1}, Lorg/spongycastle/asn1/x509/Time;-><init>(Lorg/spongycastle/asn1/ASN1Primitive;)V
iput-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->startDate:Lorg/spongycastle/asn1/x509/Time;
.line 77
return-void
.end method
.method public setStartDate(Lorg/spongycastle/asn1/x509/Time;)V
.registers 2
.prologue
.line 70
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->startDate:Lorg/spongycastle/asn1/x509/Time;
.line 71
return-void
.end method
.method public setSubject(Lorg/spongycastle/asn1/x500/X500Name;)V
.registers 2
.prologue
.line 103
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subject:Lorg/spongycastle/asn1/x500/X500Name;
.line 104
return-void
.end method
.method public setSubject(Lorg/spongycastle/asn1/x509/X509Name;)V
.registers 3
.prologue
.line 97
invoke-virtual {p1}, Lorg/spongycastle/asn1/x509/X509Name;->toASN1Primitive()Lorg/spongycastle/asn1/ASN1Primitive;
move-result-object v0
invoke-static {v0}, Lorg/spongycastle/asn1/x500/X500Name;->getInstance(Ljava/lang/Object;)Lorg/spongycastle/asn1/x500/X500Name;
move-result-object v0
iput-object v0, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subject:Lorg/spongycastle/asn1/x500/X500Name;
.line 98
return-void
.end method
.method public setSubjectPublicKeyInfo(Lorg/spongycastle/asn1/x509/SubjectPublicKeyInfo;)V
.registers 2
.prologue
.line 109
iput-object p1, p0, Lorg/spongycastle/asn1/x509/V1TBSCertificateGenerator;->subjectPublicKeyInfo:Lorg/spongycastle/asn1/x509/SubjectPublicKeyInfo;
.line 110
return-void
.end method