You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@commons.apache.org by br...@apache.org on 2008/07/16 10:08:20 UTC
svn commit: r677188 -
/commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java
Author: brett
Date: Wed Jul 16 01:08:19 2008
New Revision: 677188
URL: http://svn.apache.org/viewvc?rev=677188&view=rev
Log:
just use a single key ring - this avoids the need to clean up memory when creating multiple copies as the collections hold a map
Modified:
commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java
Modified: commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java
URL: http://svn.apache.org/viewvc/commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java?rev=677188&r1=677187&r2=677188&view=diff
==============================================================================
--- commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java (original)
+++ commons/sandbox/openpgp/trunk/src/main/java/org/apache/commons/openpgp/BouncyCastleKeyRing.java Wed Jul 16 01:08:19 2008
@@ -39,20 +39,20 @@
public class BouncyCastleKeyRing
implements KeyRing
{
- private final PGPSecretKeyRingCollection pgpSec;
+ private final PGPSecretKeyRing pgpSec;
private final char[] password;
- private final PGPPublicKeyRingCollection pgpPub;
+ private final PGPPublicKeyRing pgpPub;
private static final long MASK = 0xFFFFFFFFL;
public BouncyCastleKeyRing( InputStream secretKeyRingStream, InputStream publicKeyRingStream, char[] password )
throws IOException, PGPException
{
- pgpSec = new PGPSecretKeyRingCollection( PGPUtil.getDecoderStream( secretKeyRingStream ) );
+ pgpSec = new PGPSecretKeyRing( PGPUtil.getDecoderStream( secretKeyRingStream ) );
- pgpPub = new PGPPublicKeyRingCollection( PGPUtil.getDecoderStream( publicKeyRingStream ) );
+ pgpPub = new PGPPublicKeyRing( PGPUtil.getDecoderStream( publicKeyRingStream ) );
this.password = password;
}
@@ -61,25 +61,19 @@
{
return password;
}
-
+
public PGPSecretKey getSecretKey( String keyId )
{
- Iterator rIt = pgpSec.getKeyRings();
+ Iterator kIt = pgpSec.getSecretKeys();
- while ( rIt.hasNext() )
+ while ( kIt.hasNext() )
{
- PGPSecretKeyRing kRing = (PGPSecretKeyRing) rIt.next();
- Iterator kIt = kRing.getSecretKeys();
+ PGPSecretKey k = (PGPSecretKey) kIt.next();
- while ( kIt.hasNext() )
+ // TODO: do long conversion in other direction
+ if ( k.isSigningKey() && Long.toHexString( k.getKeyID() & MASK ).equals( keyId.toLowerCase() ) )
{
- PGPSecretKey k = (PGPSecretKey) kIt.next();
-
- // TODO: do long conversion in other direction
- if ( k.isSigningKey() && Long.toHexString( k.getKeyID() & MASK ).equals( keyId.toLowerCase() ) )
- {
- return k;
- }
+ return k;
}
}
@@ -88,22 +82,16 @@
public PGPPublicKey getPublicKey( String keyId )
{
- Iterator rIt = pgpPub.getKeyRings();
+ Iterator kIt = pgpPub.getPublicKeys();
- while ( rIt.hasNext() )
+ while ( kIt.hasNext() )
{
- PGPPublicKeyRing kRing = (PGPPublicKeyRing) rIt.next();
- Iterator kIt = kRing.getPublicKeys();
+ PGPPublicKey k = (PGPPublicKey) kIt.next();
- while ( kIt.hasNext() )
+ // TODO: do long conversion in other direction
+ if ( Long.toHexString( k.getKeyID() & MASK ).equals( keyId.toLowerCase() ) )
{
- PGPPublicKey k = (PGPPublicKey) kIt.next();
-
- // TODO: do long conversion in other direction
- if ( Long.toHexString( k.getKeyID() & MASK ).equals( keyId.toLowerCase() ) )
- {
- return k;
- }
+ return k;
}
}