Skip to content

Commit d417fe2

Browse files
committed
Simplify OpenPGPSignatureChain API by removing duplicate Link members
1 parent 6e13489 commit d417fe2

File tree

1 file changed

+17
-41
lines changed

1 file changed

+17
-41
lines changed

pg/src/main/java/org/bouncycastle/openpgp/api/OpenPGPCertificate.java

Lines changed: 17 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -749,7 +749,7 @@ private void processPrimaryKey(OpenPGPPrimaryKey primaryKey)
749749
// Key Signatures
750750
for (OpenPGPComponentSignature sig : keySignatures)
751751
{
752-
OpenPGPSignatureChain chain = OpenPGPSignatureChain.direct(sig, sig.issuer, primaryKey);
752+
OpenPGPSignatureChain chain = OpenPGPSignatureChain.direct(sig);
753753
keySignatureChains.add(chain);
754754
}
755755
componentSignatureChains.put(primaryKey, keySignatureChains);
@@ -771,7 +771,7 @@ private void processPrimaryKey(OpenPGPPrimaryKey primaryKey)
771771

772772
for (OpenPGPComponentSignature sig : bindings)
773773
{
774-
OpenPGPSignatureChain chain = OpenPGPSignatureChain.direct(sig, sig.getIssuerComponent(), identity);
774+
OpenPGPSignatureChain chain = OpenPGPSignatureChain.direct(sig);
775775
identityChains.add(chain);
776776
}
777777
componentSignatureChains.put(identity, identityChains);
@@ -801,13 +801,12 @@ private void processSubkey(OpenPGPSubkey subkey)
801801
{
802802
for (OpenPGPSignatureChain issuerChain : issuerChains.chains)
803803
{
804-
subkeyChains.add(issuerChain.plus(sig, subkey));
804+
subkeyChains.add(issuerChain.plus(sig));
805805
}
806806
}
807807
else
808808
{
809-
subkeyChains.add(new OpenPGPSignatureChain(
810-
new OpenPGPSignatureChain.Certification(sig, issuer, subkey)));
809+
subkeyChains.add(new OpenPGPSignatureChain(OpenPGPSignatureChain.Link.create(sig)));
811810
}
812811
}
813812
this.componentSignatureChains.put(subkey, subkeyChains);
@@ -1621,8 +1620,7 @@ protected OpenPGPSignatureChains getMergedDanglingExternalSignatureChainEndsFrom
16211620
{
16221621
OpenPGPSignatureChain externalChain = issuerKey.getSignatureChains().getChainAt(evaluationTime);
16231622
externalChain = externalChain.plus(
1624-
new OpenPGPComponentSignature(rootLink.signature.getSignature(), issuerKey, this),
1625-
this);
1623+
new OpenPGPComponentSignature(rootLink.signature.getSignature(), issuerKey, this));
16261624
chainsBy.add(externalChain);
16271625
}
16281626
}
@@ -2833,11 +2831,9 @@ public OpenPGPComponentSignature getSignature()
28332831
/**
28342832
* Return an NEW instance of the {@link OpenPGPSignatureChain} with the new link appended.
28352833
* @param sig signature
2836-
* @param targetComponent signature target
28372834
* @return new instance
28382835
*/
2839-
public OpenPGPSignatureChain plus(OpenPGPComponentSignature sig,
2840-
OpenPGPCertificateComponent targetComponent)
2836+
public OpenPGPSignatureChain plus(OpenPGPComponentSignature sig)
28412837
{
28422838
if (getLeafLinkTargetKey() != sig.getIssuerComponent())
28432839
{
@@ -2846,16 +2842,14 @@ public OpenPGPSignatureChain plus(OpenPGPComponentSignature sig,
28462842

28472843
OpenPGPSignatureChain chain = new OpenPGPSignatureChain(this);
28482844

2849-
chain.chainLinks.add(Link.create(sig, sig.getIssuerComponent(), targetComponent));
2845+
chain.chainLinks.add(Link.create(sig));
28502846

28512847
return chain;
28522848
}
28532849

2854-
public static OpenPGPSignatureChain direct(OpenPGPComponentSignature sig,
2855-
OpenPGPComponentKey issuer,
2856-
OpenPGPCertificateComponent targetComponent)
2850+
public static OpenPGPSignatureChain direct(OpenPGPComponentSignature sig)
28572851
{
2858-
return new OpenPGPSignatureChain(Link.create(sig, issuer, targetComponent));
2852+
return new OpenPGPSignatureChain(Link.create(sig));
28592853
}
28602854

28612855
public Link getRootLink()
@@ -3056,16 +3050,10 @@ public Iterator<Link> iterator()
30563050
public static abstract class Link
30573051
{
30583052
protected final OpenPGPComponentSignature signature;
3059-
protected final OpenPGPComponentKey issuer;
3060-
protected final OpenPGPCertificateComponent target;
30613053

3062-
public Link(OpenPGPComponentSignature signature,
3063-
OpenPGPComponentKey issuer,
3064-
OpenPGPCertificateComponent target)
3054+
public Link(OpenPGPComponentSignature signature)
30653055
{
30663056
this.signature = signature;
3067-
this.issuer = issuer;
3068-
this.target = target;
30693057
}
30703058

30713059
public Date since()
@@ -3142,17 +3130,15 @@ public String toString()
31423130
return signature.toString();
31433131
}
31443132

3145-
public static Link create(OpenPGPComponentSignature signature,
3146-
OpenPGPComponentKey issuer,
3147-
OpenPGPCertificateComponent target)
3133+
public static Link create(OpenPGPComponentSignature signature)
31483134
{
31493135
if (signature.isRevocation())
31503136
{
3151-
return new Revocation(signature, issuer, target);
3137+
return new Revocation(signature);
31523138
}
31533139
else
31543140
{
3155-
return new Certification(signature, issuer, target);
3141+
return new Certification(signature);
31563142
}
31573143
}
31583144

@@ -3172,15 +3158,10 @@ public static class Certification
31723158
* Positive certification.
31733159
*
31743160
* @param signature signature
3175-
* @param issuer key that issued the certification.
3176-
* Is nullable (e.g. for 3rd-party sigs where the cert is not available)
3177-
* @param target signed certificate component
31783161
*/
3179-
public Certification(OpenPGPComponentSignature signature,
3180-
OpenPGPComponentKey issuer,
3181-
OpenPGPCertificateComponent target)
3162+
public Certification(OpenPGPComponentSignature signature)
31823163
{
3183-
super(signature, issuer, target);
3164+
super(signature);
31843165
}
31853166
}
31863167

@@ -3194,15 +3175,10 @@ public static class Revocation
31943175
* Revocation.
31953176
*
31963177
* @param signature signature
3197-
* @param issuer key that issued the revocation.
3198-
* Is nullable (e.g. for 3rd-party sigs where the cert is not available)
3199-
* @param target revoked certification component
32003178
*/
3201-
public Revocation(OpenPGPComponentSignature signature,
3202-
OpenPGPComponentKey issuer,
3203-
OpenPGPCertificateComponent target)
3179+
public Revocation(OpenPGPComponentSignature signature)
32043180
{
3205-
super(signature, issuer, target);
3181+
super(signature);
32063182
}
32073183

32083184
@Override

0 commit comments

Comments
 (0)