You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by og...@apache.org on 2009/04/28 01:12:32 UTC

svn commit: r769199 [2/19] - in /maven/mercury/trunk: mercury-ant-tasks/src/main/java/org/apache/maven/mercury/ant/tasks/ mercury-ant-tasks/src/test/java/org/apache/maven/mercury/ant/tasks/ mercury-core/src/main/java/org/apache/maven/mercury/artifact/ ...

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/DefaultArtifact.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/DefaultArtifact.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/DefaultArtifact.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/DefaultArtifact.java Mon Apr 27 23:12:25 2009
@@ -35,10 +35,9 @@
     private String inheritedScope;
 
     private byte[] pomBlob;
-    
-    /** 
-     * for temporary holding the reference
-     *  to the pom file during data transfer
+
+    /**
+     * for temporary holding the reference to the pom file during data transfer
      */
     transient private File pomFile;
 

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/MetadataTreeNode.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/MetadataTreeNode.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/MetadataTreeNode.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/MetadataTreeNode.java Mon Apr 27 23:12:25 2009
@@ -82,7 +82,7 @@
      * actual found versions
      */
     List<MetadataTreeNode> children;
-    
+
     /** unique name of this node. Used in SAT solver */
     String name;
 
@@ -267,7 +267,7 @@
         return real;
     }
 
-    public void setReal( boolean real)
+    public void setReal( boolean real )
     {
         this.real = real;
     }
@@ -305,7 +305,7 @@
     public static final void showNode( MetadataTreeNode n, int level, Writer wr )
         throws IOException
     {
-        if( n == null )
+        if ( n == null )
         {
             wr.write( "null node" );
             return;
@@ -360,7 +360,7 @@
             for ( MetadataTreeNode kid : node.getChildren() )
                 reNum( kid, num );
     }
-    
+
     public String getName()
     {
         return name;
@@ -368,14 +368,14 @@
 
     public void createNames( int level, int seq )
     {
-        name = md.toScopedString()+":"+level+"."+seq;
-        
-        if( hasChildren() )
+        name = md.toScopedString() + ":" + level + "." + seq;
+
+        if ( hasChildren() )
         {
             int no = 0;
-            
-            for( MetadataTreeNode kid : children )
-                kid.createNames( level+1, no++ );
+
+            for ( MetadataTreeNode kid : children )
+                kid.createNames( level + 1, no++ );
         }
     }
     // ------------------------------------------------------------------------

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/QualityRange.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/QualityRange.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/QualityRange.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/QualityRange.java Mon Apr 27 23:12:25 2009
@@ -28,7 +28,7 @@
 public class QualityRange
 {
     private static final Language LANG = new DefaultLanguage( QualityRange.class );
-    
+
     public static final QualityRange SNAPSHOTS_ONLY =
         new QualityRange( Quality.SNAPSHOT_QUALITY, true, Quality.SNAPSHOT_TS_QUALITY, true );
 
@@ -66,18 +66,16 @@
         this.qualityTo = qualityTo;
         this.toInclusive = toInclusive;
     }
-    
+
     public static QualityRange create( boolean releases, boolean snapshots )
     {
-        if( releases && snapshots )
+        if ( releases && snapshots )
             return ALL;
-        else
-            if( releases )
-                return new QualityRange( Quality.ALPHA_QUALITY, true, Quality.RELEASE_QUALITY, true );
-            else
-                if( snapshots )
-                    return new QualityRange( Quality.SNAPSHOT_QUALITY, true, Quality.SNAPSHOT_TS_QUALITY, true );
-        
+        else if ( releases )
+            return new QualityRange( Quality.ALPHA_QUALITY, true, Quality.RELEASE_QUALITY, true );
+        else if ( snapshots )
+            return new QualityRange( Quality.SNAPSHOT_QUALITY, true, Quality.SNAPSHOT_TS_QUALITY, true );
+
         throw new IllegalArgumentException( LANG.getMessage( "quality.no.sn.no.rel" ) );
     }
 

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ArtifactListProcessor.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ArtifactListProcessor.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ArtifactListProcessor.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ArtifactListProcessor.java Mon Apr 27 23:12:25 2009
@@ -25,7 +25,7 @@
 
 /**
  * generic interface to be implemented by helper components
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */
@@ -39,7 +39,7 @@
 
     /**
      * initialize it if required
-     *
+     * 
      * @throws ArtifactListProcessorException
      */
     public void init( Map<String, String> env )
@@ -51,7 +51,7 @@
 
     /**
      * actually do that
-     *
+     * 
      * @throws ArtifactListProcessorException
      */
     public List<ArtifactMetadata> process( List<ArtifactMetadata> artifacts )

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ConfigurationUtil.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ConfigurationUtil.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ConfigurationUtil.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/api/ConfigurationUtil.java Mon Apr 27 23:12:25 2009
@@ -15,28 +15,25 @@
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
-*/
+ */
 
 package org.apache.maven.mercury.artifact.api;
 
 import java.util.Map;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class ConfigurationUtil
 {
-    public static void configure( Configurable impl, Map<String,Object> config )
-    throws ConfigurationException
+    public static void configure( Configurable impl, Map<String, Object> config )
+        throws ConfigurationException
     {
-        if( impl == null || config == null )
+        if ( impl == null || config == null )
             return;
-        
-        for( Map.Entry<String, Object> e : config.entrySet() )
+
+        for ( Map.Entry<String, Object> e : config.entrySet() )
             impl.setOption( e.getKey(), e.getValue() );
     }
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ArtifactVersion.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ArtifactVersion.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ArtifactVersion.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ArtifactVersion.java Mon Apr 27 23:12:25 2009
@@ -33,6 +33,6 @@
     int getBuildNumber();
 
     String getQualifier();
-    
+
     Quality getQuality();
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ComparableVersion.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ComparableVersion.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ComparableVersion.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/ComparableVersion.java Mon Apr 27 23:12:25 2009
@@ -62,7 +62,7 @@
     private static class IntegerItem
         implements Item
     {
-    	private static final BigInteger BigInteger_ZERO = new BigInteger( "0" );
+        private static final BigInteger BigInteger_ZERO = new BigInteger( "0" );
 
         private final BigInteger value;
 
@@ -70,7 +70,7 @@
 
         private IntegerItem()
         {
-        	this.value = BigInteger_ZERO;
+            this.value = BigInteger_ZERO;
         }
 
         public IntegerItem( String str )
@@ -175,15 +175,12 @@
         }
 
         /**
-         * Returns a comparable for a qualifier.
-         *
-         * This method both takes into account the ordering of known qualifiers as well as lexical ordering for unknown
-         * qualifiers.
-         *
-         * just returning an Integer with the index here is faster, but requires a lot of if/then/else to check for -1
-         * or QUALIFIERS.size and then resort to lexical ordering. Most comparisons are decided by the first character,
-         * so this is still fast. If more characters are needed then it requires a lexical sort anyway.
-         *
+         * Returns a comparable for a qualifier. This method both takes into account the ordering of known qualifiers as
+         * well as lexical ordering for unknown qualifiers. just returning an Integer with the index here is faster, but
+         * requires a lot of if/then/else to check for -1 or QUALIFIERS.size and then resort to lexical ordering. Most
+         * comparisons are decided by the first character, so this is still fast. If more characters are needed then it
+         * requires a lexical sort anyway.
+         * 
          * @param qualifier
          * @return
          */

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/DefaultArtifactVersion.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/DefaultArtifactVersion.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/DefaultArtifactVersion.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/DefaultArtifactVersion.java Mon Apr 27 23:12:25 2009
@@ -119,10 +119,8 @@
         if ( version == null )
             return false;
 
-        if ( version.endsWith( Artifact.SNAPSHOT_VERSION ) 
-            || version.endsWith( Artifact.LATEST_VERSION )
-            || version.endsWith( Artifact.RELEASE_VERSION )
-        )
+        if ( version.endsWith( Artifact.SNAPSHOT_VERSION ) || version.endsWith( Artifact.LATEST_VERSION )
+            || version.endsWith( Artifact.RELEASE_VERSION ) )
             return true;
 
         return false;

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MavenVersionRange.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MavenVersionRange.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MavenVersionRange.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MavenVersionRange.java Mon Apr 27 23:12:25 2009
@@ -25,14 +25,10 @@
 import org.codehaus.plexus.lang.Language;
 
 /**
- * Single range implementation, similar to OSGi specification:
- *
- * [1.2.3, 4.5.6) 1.2.3 <= x < 4.5.6
- * [1.2.3, 4.5.6] 1.2.3 <= x <= 4.5.6
- * (1.2.3, 4.5.6) 1.2.3 < x < 4.5.6
- * (1.2.3, 4.5.6] 1.2.3 < x <= 4.5.6
- * 1.2.3 1.2.3 <= x - this one is configurable nowadays
- *
+ * Single range implementation, similar to OSGi specification: [1.2.3, 4.5.6) 1.2.3 <= x < 4.5.6 [1.2.3, 4.5.6] 1.2.3 <=
+ * x <= 4.5.6 (1.2.3, 4.5.6) 1.2.3 < x < 4.5.6 (1.2.3, 4.5.6] 1.2.3 < x <= 4.5.6 1.2.3 1.2.3 <= x - this one is
+ * configurable nowadays
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */
@@ -263,10 +259,11 @@
     {
         if ( SYSTEM_PARAMETER_OSGI_VERSION.equals( name ) )
         {
-            _osgiVersion = Boolean.parseBoolean( System.getProperty( (String)val, SYSTEM_PARAMETER_OSGI_VERSION_DEFAULT ) );
+            _osgiVersion =
+                Boolean.parseBoolean( System.getProperty( (String) val, SYSTEM_PARAMETER_OSGI_VERSION_DEFAULT ) );
         }
     }
-    
+
     public boolean isSingleton()
     {
         return _singleton;

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MetadataVersionComparator.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MetadataVersionComparator.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MetadataVersionComparator.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/MetadataVersionComparator.java Mon Apr 27 23:12:25 2009
@@ -26,7 +26,7 @@
 
 /**
  * version comparator used elsewhere to keep version collections sorted
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionComparator.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionComparator.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionComparator.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionComparator.java Mon Apr 27 23:12:25 2009
@@ -25,7 +25,7 @@
 
 /**
  * version comparator used elsewhere to keep version collections sorted
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionQuery.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionQuery.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionQuery.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionQuery.java Mon Apr 27 23:12:25 2009
@@ -22,7 +22,7 @@
 
 /**
  * multiple ranges. Not sure if we need need it - will delete later ..
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRange.java Mon Apr 27 23:12:25 2009
@@ -22,7 +22,7 @@
 
 /**
  * interface to the version range processor. To be implemented for various syntaxes/interpreters
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */
@@ -31,7 +31,7 @@
 {
     /**
      * returns true if the supplied version fits into the range
-     *
+     * 
      * @param version to test
      * @return
      */

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRangeFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRangeFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRangeFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/artifact/version/VersionRangeFactory.java Mon Apr 27 23:12:25 2009
@@ -25,7 +25,7 @@
 
 /**
  * lack of IoC container makes me throw this class in.
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
  */
@@ -47,7 +47,7 @@
     // --------------------------------------------------------------------------------------------
     /**
      * helpful latest version calculator
-     *
+     * 
      * @param versions
      * @param noSnapshots
      * @return
@@ -64,8 +64,8 @@
             // RELEASE?
             if ( noSnapshots )
             {
-                if( vn.endsWith( Artifact.SNAPSHOT_VERSION ) || vn.matches( Artifact.SNAPSHOT_TS_REGEX ) )
-                continue;
+                if ( vn.endsWith( Artifact.SNAPSHOT_VERSION ) || vn.matches( Artifact.SNAPSHOT_TS_REGEX ) )
+                    continue;
             }
 
             if ( version == null )

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessor.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessor.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessor.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessor.java Mon Apr 27 23:12:25 2009
@@ -29,7 +29,7 @@
     public static final DependencyProcessor NULL_PROCESSOR = new DependencyProcessor()
     {
         public List<ArtifactMetadata> getDependencies( ArtifactMetadata bmd, MetadataReader mdReader,
-                                                            Map<String, String> env, Map<?, ?> sysProps )
+                                                       Map<String, String> env, Map<?, ?> sysProps )
             throws MetadataReaderException, DependencyProcessorException
         {
             return null;
@@ -37,9 +37,9 @@
     };
 
     // TODO: shouldn't sysProps be changed to Properties because of System.getProperties() API?
-    // Oleg: sysProp may help to experiment with Objects, different from Strings, so I'd 
-    //  stay with the Map until this is stable enough
+    // Oleg: sysProp may help to experiment with Objects, different from Strings, so I'd
+    // stay with the Map until this is stable enough
     public List<ArtifactMetadata> getDependencies( ArtifactMetadata bmd, MetadataReader mdReader,
-                                                        Map<String, String> env, Map<?, ?> sysProps )
+                                                   Map<String, String> env, Map<?, ?> sysProps )
         throws MetadataReaderException, DependencyProcessorException;
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessorException.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessorException.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessorException.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/DependencyProcessorException.java Mon Apr 27 23:12:25 2009
@@ -19,11 +19,8 @@
 package org.apache.maven.mercury.builder.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class DependencyProcessorException
     extends Exception

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReader.java Mon Apr 27 23:12:25 2009
@@ -19,20 +19,19 @@
 package org.apache.maven.mercury.builder.api;
 
 import org.apache.maven.mercury.artifact.ArtifactMetadata;
+import org.apache.maven.mercury.repository.api.RepositoryException;
 
 /**
  * This interface implementation is supplied to MetadataProcessor to simplify it's access to remote repositories
- *
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public interface MetadataReader
 {
     /**
      * read raw content pointed by bmd, possibly modified by classifier and type
-     *
+     * 
      * @param bmd coordinates
      * @param classifier - replaces the getClassifier() from bmd if not null
      * @param type - replaces the getType() from bmd if not null
@@ -47,9 +46,9 @@
     public byte[] readRawData( ArtifactMetadata bmd, String classifier, String type )
         throws MetadataReaderException;
 
-  /**
+    /**
      * read metadata for the artifact, pointed by bmd. It will return POM bytes regardless of actual bmd type
-     *
+     * 
      * @param bmd metadata to read
      * @param exempt - if this read should be exempt from stream verification, default - false
      * @return

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/builder/api/MetadataReaderException.java Mon Apr 27 23:12:25 2009
@@ -19,11 +19,8 @@
 package org.apache.maven.mercury.builder.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class MetadataReaderException
     extends Exception

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifier.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifier.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifier.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifier.java Mon Apr 27 23:12:25 2009
@@ -19,27 +19,24 @@
 package org.apache.maven.mercury.crypto.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public abstract class AbstractStreamVerifier
 {
-  protected StreamVerifierAttributes attributes;
+    protected StreamVerifierAttributes attributes;
 
-  /**
-   * @param attributes
-   */
-  public AbstractStreamVerifier( StreamVerifierAttributes attributes )
-  {
-    this.attributes = attributes;
-  }
+    /**
+     * @param attributes
+     */
+    public AbstractStreamVerifier( StreamVerifierAttributes attributes )
+    {
+        this.attributes = attributes;
+    }
+
+    public StreamVerifierAttributes getAttributes()
+    {
+        return attributes;
+    }
 
-  public StreamVerifierAttributes getAttributes()
-  {
-    return attributes;
-  }
-  
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifierFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifierFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifierFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/AbstractStreamVerifierFactory.java Mon Apr 27 23:12:25 2009
@@ -20,26 +20,25 @@
 
 /**
  * Helper for implementing stream verifier factories, takes care of attributes
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public abstract class AbstractStreamVerifierFactory
 {
-  protected StreamVerifierAttributes attributes;
+    protected StreamVerifierAttributes attributes;
 
-  /**
-   * @param attributes
-   */
-  public AbstractStreamVerifierFactory( StreamVerifierAttributes attributes )
-  {
-    this.attributes = attributes;
-  }
+    /**
+     * @param attributes
+     */
+    public AbstractStreamVerifierFactory( StreamVerifierAttributes attributes )
+    {
+        this.attributes = attributes;
+    }
+
+    public StreamVerifierAttributes getAttributes()
+    {
+        return attributes == null ? new StreamVerifierAttributes() : attributes;
+    }
 
-  public StreamVerifierAttributes getAttributes()
-  {
-    return attributes == null ? new StreamVerifierAttributes() : attributes;
-  }
-  
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserver.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserver.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserver.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserver.java Mon Apr 27 23:12:25 2009
@@ -20,16 +20,18 @@
 
 public interface StreamObserver
 {
-    void byteReady(int b)
-    throws StreamObserverException;
-    
-    void bytesReady(byte[]b, int off, int len)
-    throws StreamObserverException;
-    
-    void setLength(long length);
+    void byteReady( int b )
+        throws StreamObserverException;
+
+    void bytesReady( byte[] b, int off, int len )
+        throws StreamObserverException;
+
+    void setLength( long length );
+
     long getLength();
-    
-    void setLastModified(String time);
+
+    void setLastModified( String time );
+
     String getLastModified();
 
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverException.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverException.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverException.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverException.java Mon Apr 27 23:12:25 2009
@@ -19,54 +19,47 @@
 package org.apache.maven.mercury.crypto.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class StreamObserverException
     extends Exception
 {
 
-  /**
+    /**
    * 
    */
-  public StreamObserverException()
-  {
-    // TODO Auto-generated constructor stub
-  }
-
-  /**
-   * @param message
-   */
-  public StreamObserverException(
-      String message )
-  {
-    super( message );
-    // TODO Auto-generated constructor stub
-  }
-
-  /**
-   * @param cause
-   */
-  public StreamObserverException(
-      Throwable cause )
-  {
-    super( cause );
-    // TODO Auto-generated constructor stub
-  }
-
-  /**
-   * @param message
-   * @param cause
-   */
-  public StreamObserverException(
-      String message,
-      Throwable cause )
-  {
-    super( message, cause );
-    // TODO Auto-generated constructor stub
-  }
+    public StreamObserverException()
+    {
+        // TODO Auto-generated constructor stub
+    }
+
+    /**
+     * @param message
+     */
+    public StreamObserverException( String message )
+    {
+        super( message );
+        // TODO Auto-generated constructor stub
+    }
+
+    /**
+     * @param cause
+     */
+    public StreamObserverException( Throwable cause )
+    {
+        super( cause );
+        // TODO Auto-generated constructor stub
+    }
+
+    /**
+     * @param message
+     * @param cause
+     */
+    public StreamObserverException( String message, Throwable cause )
+    {
+        super( message, cause );
+        // TODO Auto-generated constructor stub
+    }
 
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamObserverFactory.java Mon Apr 27 23:12:25 2009
@@ -20,6 +20,6 @@
 
 public interface StreamObserverFactory
 {
-  public StreamObserver newInstance()
-  throws StreamObserverException;
+    public StreamObserver newInstance()
+        throws StreamObserverException;
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifier.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifier.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifier.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifier.java Mon Apr 27 23:12:25 2009
@@ -18,23 +18,22 @@
  */
 package org.apache.maven.mercury.crypto.api;
 
-
 public interface StreamVerifier
-extends StreamObserver
+    extends StreamObserver
 {
-  public StreamVerifierAttributes getAttributes();
+    public StreamVerifierAttributes getAttributes();
+
+    public String getSignature()
+        throws StreamVerifierException;
+
+    // to verify stream: initSignature( InputStream signatureStream ), process stream, then verifySignature()
+    public void initSignature( String signatureStream )
+        throws StreamVerifierException;
+
+    public boolean verifySignature()
+        throws StreamVerifierException;
 
-  public String getSignature()
-  throws StreamVerifierException;
-  
-  // to verify stream: initSignature( InputStream signatureStream ), process stream, then verifySignature()
-  public void initSignature( String signatureStream )
-  throws StreamVerifierException;
-  
-  public boolean verifySignature()
-  throws StreamVerifierException;
-  
-//  public boolean verifySignature( String signature )
-//  throws StreamVerifierException;
+    // public boolean verifySignature( String signature )
+    // throws StreamVerifierException;
 
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierAttributes.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierAttributes.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierAttributes.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierAttributes.java Mon Apr 27 23:12:25 2009
@@ -19,55 +19,49 @@
 package org.apache.maven.mercury.crypto.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class StreamVerifierAttributes
 {
-  protected boolean isLenient = true;
-  protected boolean isSufficient = false;
-  protected String  extension = "none";
-  protected String  digestAlgorithm = "SHA-1";
-  
-  /**
+    protected boolean isLenient = true;
+
+    protected boolean isSufficient = false;
+
+    protected String extension = "none";
+
+    protected String digestAlgorithm = "SHA-1";
+
+    /**
    * 
    */
-  public StreamVerifierAttributes( String extension, boolean isLenient, boolean isSufficient)
-  {
-    this.extension = extension;
-    this.isLenient = isLenient;
-    this.isSufficient = isSufficient;
-  }
-  
-  /**
+    public StreamVerifierAttributes( String extension, boolean isLenient, boolean isSufficient )
+    {
+        this.extension = extension;
+        this.isLenient = isLenient;
+        this.isSufficient = isSufficient;
+    }
+
+    /**
    * 
    */
-  public StreamVerifierAttributes()
-  {
-  }
-
-  public boolean isLenient()
-  {
-      return isLenient;
-  }
-
-  public boolean isSufficient()
-  {
-      return isSufficient;
-  }
-
-  public String getExtension()
-  {
-    return extension == null
-             ? extension
-             : extension.startsWith( "." )
-                         ? extension 
-                         : "."+extension
-           ;
-  }
-  
-  
+    public StreamVerifierAttributes()
+    {
+    }
+
+    public boolean isLenient()
+    {
+        return isLenient;
+    }
+
+    public boolean isSufficient()
+    {
+        return isSufficient;
+    }
+
+    public String getExtension()
+    {
+        return extension == null ? extension : extension.startsWith( "." ) ? extension : "." + extension;
+    }
+
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierException.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierException.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierException.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierException.java Mon Apr 27 23:12:25 2009
@@ -19,52 +19,46 @@
 package org.apache.maven.mercury.crypto.api;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class StreamVerifierException
-extends StreamObserverException
+    extends StreamObserverException
 {
 
-  /**
+    /**
    * 
    */
-  public StreamVerifierException()
-  {
-    // TODO Auto-generated constructor stub
-  }
-
-  /**
-   * @param message
-   */
-  public StreamVerifierException( String message )
-  {
-    super( message );
-  }
-
-  /**
-   * @param cause
-   */
-  public StreamVerifierException(
-      Throwable cause )
-  {
-    super( cause );
-    // TODO Auto-generated constructor stub
-  }
-
-  /**
-   * @param message
-   * @param cause
-   */
-  public StreamVerifierException(
-      String message,
-      Throwable cause )
-  {
-    super( message, cause );
-    // TODO Auto-generated constructor stub
-  }
+    public StreamVerifierException()
+    {
+        // TODO Auto-generated constructor stub
+    }
+
+    /**
+     * @param message
+     */
+    public StreamVerifierException( String message )
+    {
+        super( message );
+    }
+
+    /**
+     * @param cause
+     */
+    public StreamVerifierException( Throwable cause )
+    {
+        super( cause );
+        // TODO Auto-generated constructor stub
+    }
+
+    /**
+     * @param message
+     * @param cause
+     */
+    public StreamVerifierException( String message, Throwable cause )
+    {
+        super( message, cause );
+        // TODO Auto-generated constructor stub
+    }
 
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/api/StreamVerifierFactory.java Mon Apr 27 23:12:25 2009
@@ -20,8 +20,8 @@
 
 public interface StreamVerifierFactory
 {
-  public StreamVerifier newInstance()
-  throws StreamVerifierException;
-  
-  public String getDefaultExtension();
+    public StreamVerifier newInstance()
+        throws StreamVerifierException;
+
+    public String getDefaultExtension();
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/basic/ChecksumCalculator.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/basic/ChecksumCalculator.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/basic/ChecksumCalculator.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/basic/ChecksumCalculator.java Mon Apr 27 23:12:25 2009
@@ -19,8 +19,6 @@
 
 package org.apache.maven.mercury.crypto.basic;
 
-
-
 public class ChecksumCalculator
 {
     private static final byte[] __HEX_DIGITS = "0123456789abcdef".getBytes();
@@ -33,8 +31,8 @@
 
         for ( int i = 0, j = 0; i < l; i++ )
         {
-            raw[j++] = __HEX_DIGITS[ ( 0xF0 & bytes[i] ) >>> 4 ];
-            raw[j++] = __HEX_DIGITS[ 0x0F & bytes[i] ];
+            raw[j++] = __HEX_DIGITS[( 0xF0 & bytes[i] ) >>> 4];
+            raw[j++] = __HEX_DIGITS[0x0F & bytes[i]];
         }
 
         return new String( raw );

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/cli/Sign.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/cli/Sign.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/cli/Sign.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/cli/Sign.java Mon Apr 27 23:12:25 2009
@@ -15,16 +15,13 @@
 KIND, either express or implied.  See the License for the
 specific language governing permissions and limitations
 under the License.
-*/
+ */
 
 package org.apache.maven.mercury.crypto.cli;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class Sign
 {

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpHelper.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpHelper.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpHelper.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpHelper.java Mon Apr 27 23:12:25 2009
@@ -29,7 +29,6 @@
 
 import org.apache.maven.mercury.crypto.api.StreamObserverException;
 import org.apache.maven.mercury.crypto.api.StreamVerifierAttributes;
-import org.apache.maven.mercury.crypto.api.StreamVerifierException;
 import org.bouncycastle.jce.provider.BouncyCastleProvider;
 import org.bouncycastle.openpgp.PGPCompressedData;
 import org.bouncycastle.openpgp.PGPException;
@@ -45,194 +44,208 @@
 import org.codehaus.plexus.lang.Language;
 
 /**
- * PGP helper - collection of utility methods, loosely based on one of the
- * Bouncy Castle's SignedFileProcessor.java
- * 
+ * PGP helper - collection of utility methods, loosely based on one of the Bouncy Castle's SignedFileProcessor.java
  */
 public class PgpHelper
 {
-  public static final String PROVIDER = "BC";
-  public static final String EXTENSION = "asc";
-  
-  private static final byte [] _buf = new byte[10240];
-
-
-  private static final Language LANG = new DefaultLanguage( PgpHelper.class );
-  //---------------------------------------------------------------------------------
-  static 
-  {
-    Security.addProvider( new BouncyCastleProvider() );
-  }
-  //---------------------------------------------------------------------------------
-  /**
-   * load a key ring stream and find the secret key by hex id
-   * 
-   * @param in PGP keystore
-   * @param hexId key id
-   * @return
-   * @throws IOException
-   * @throws PGPException
-   */
-  public static PGPSecretKeyRing readKeyRing( InputStream in, String hexId )
-  throws IOException, PGPException
-  {
-    if( in == null )
-      throw new IllegalArgumentException( LANG.getMessage( "null.input.stream" ) );
-
-    if( hexId == null || hexId.length() < 16 )
-      throw new IllegalArgumentException( LANG.getMessage( "bad.key.id", hexId ) );
-    
-    long id = hexToId( hexId );
-
-    in = PGPUtil.getDecoderStream( in );
-
-    PGPSecretKeyRingCollection pgpSec = new PGPSecretKeyRingCollection( in );
-
-    Iterator<PGPSecretKeyRing> ringIt = pgpSec.getKeyRings();
-
-    while( ringIt.hasNext() )
-    {
-      PGPSecretKeyRing keyRing = ringIt.next();
-      PGPSecretKey key = keyRing.getSecretKey( id );
-      if( key != null )
-        return keyRing;
-    }
-
-    throw new IllegalArgumentException( LANG.getMessage( "no.secret.key", hexId ) );
-  }
-  //---------------------------------------------------------------------------------
-  public static long hexToId( String hexId )
-  {
-    BigInteger bi = new BigInteger( hexId, 16 );
-    return bi.longValue();
-  }
-  //---------------------------------------------------------------------------------
-  public static long getKeyId( InputStream inSig )
-  throws IOException, PGPException
-  {
-      PGPSignature sig = readSignature( inSig );
-      
-      return sig.getKeyID();
-  }
-  //---------------------------------------------------------------------------------
-  public static PGPSignature readSignature( InputStream inS )
-  throws IOException, PGPException
-  {
-    if( inS == null )
-      throw new IllegalArgumentException( "null.input.stream" );
-    
-    InputStream in = inS;
-    in = PGPUtil.getDecoderStream( in );
-  
-    PGPObjectFactory pgpObjectFactory = new PGPObjectFactory( in );
-    PGPSignatureList sigList = null;
-
-    Object pgpObject = pgpObjectFactory.nextObject();
-    
-    if( pgpObject == null )
-      throw new PGPException( LANG.getMessage( "no.objects.in.stream" ) );
-
-    if( pgpObject instanceof PGPCompressedData )
-    {
-        PGPCompressedData cd = (PGPCompressedData)pgpObject;
-
-        pgpObjectFactory = new PGPObjectFactory( cd.getDataStream() );
-        
-        sigList = (PGPSignatureList)pgpObjectFactory.nextObject();
-    }
-    else
-    {
-        sigList = (PGPSignatureList)pgpObject;
-    }
-    
-    if( sigList.size() < 1 )
-      throw new PGPException( LANG.getMessage( "no.signatures.in.stream" ) );
-    
-    PGPSignature sig = sigList.get(0);
-    
-    return sig;
-  }
-  //---------------------------------------------------------------------------------
-  public static String streamToString( InputStream in )
-  throws IOException
-  {
-    if( in == null )
-      return null;
-
-    ByteArrayOutputStream ba = new ByteArrayOutputStream();
-    int b = 0;
-    while( (b = in.read()) != -1 )
-      ba.write( b );
-    
-    return ba.toString();
-  }
-  //---------------------------------------------------------------------------------
-  public static String fileToString( String fileName )
-  throws IOException
-  {
-    FileInputStream fis = null;
-    try
-    {
-      fis = new FileInputStream( fileName );
-      return streamToString( fis );
-    }
-    finally
-    {
-      if( fis != null ) try { fis.close(); } catch( Exception any ) {}
-    }
-  }
-  //---------------------------------------------------------------------------------
-  public static final boolean verifyStream( InputStream in, InputStream asc, InputStream publicKeyRingStream )
-  throws IOException, StreamObserverException
-  {
-      StreamVerifierAttributes attributes = new StreamVerifierAttributes(PgpStreamVerifierFactory.DEFAULT_EXTENSION, false, true);
-      
-      PgpStreamVerifierFactory svf = new PgpStreamVerifierFactory( attributes, publicKeyRingStream );
-      String sig = PgpHelper.streamToString( asc );
-      
-      return verifyStream( in, sig, svf );
-  }
-  //---------------------------------------------------------------------------------
-  public static final boolean verifyStream( InputStream in, String sig, PgpStreamVerifierFactory factory )
-  throws IOException, StreamObserverException
-  {
-
-      PgpStreamVerifier sv = (PgpStreamVerifier)factory.newInstance();
-      
-      sv.initSignature( sig );
-      
-      int nBytes = -1;
-      while( (nBytes = in.read(_buf)) != -1 )
-        sv.bytesReady( _buf, 0, nBytes );
-      
-      boolean verified = sv.verifySignature();
-
-      return verified;
-  }
-  
-  public static final PGPPublicKeyRingCollection readPublicRing( InputStream in )
-  throws IOException, PGPException
-  {
-      if( in == null )
-          return null;
-      
-      PGPPublicKeyRingCollection res = new PGPPublicKeyRingCollection( PGPUtil.getDecoderStream( in ) );
-      
-      return res;
-  }
-  
-  public static final void writePublicRing( PGPPublicKeyRingCollection  prc, OutputStream out )
-  throws IOException
-  {
-      if( prc == null )
-          throw new IllegalArgumentException( LANG.getMessage( "null.ring" ) );
-      
-      if( out == null )
-          throw new IllegalArgumentException( LANG.getMessage( "null.os" ) );
-      
-      prc.encode( out );
-      
-  }
-  //---------------------------------------------------------------------------------
-  //---------------------------------------------------------------------------------
+    public static final String PROVIDER = "BC";
+
+    public static final String EXTENSION = "asc";
+
+    private static final byte[] _buf = new byte[10240];
+
+    private static final Language LANG = new DefaultLanguage( PgpHelper.class );
+    // ---------------------------------------------------------------------------------
+    static
+    {
+        Security.addProvider( new BouncyCastleProvider() );
+    }
+
+    // ---------------------------------------------------------------------------------
+    /**
+     * load a key ring stream and find the secret key by hex id
+     * 
+     * @param in PGP keystore
+     * @param hexId key id
+     * @return
+     * @throws IOException
+     * @throws PGPException
+     */
+    public static PGPSecretKeyRing readKeyRing( InputStream in, String hexId )
+        throws IOException, PGPException
+    {
+        if ( in == null )
+            throw new IllegalArgumentException( LANG.getMessage( "null.input.stream" ) );
+
+        if ( hexId == null || hexId.length() < 16 )
+            throw new IllegalArgumentException( LANG.getMessage( "bad.key.id", hexId ) );
+
+        long id = hexToId( hexId );
+
+        in = PGPUtil.getDecoderStream( in );
+
+        PGPSecretKeyRingCollection pgpSec = new PGPSecretKeyRingCollection( in );
+
+        Iterator<PGPSecretKeyRing> ringIt = pgpSec.getKeyRings();
+
+        while ( ringIt.hasNext() )
+        {
+            PGPSecretKeyRing keyRing = ringIt.next();
+            PGPSecretKey key = keyRing.getSecretKey( id );
+            if ( key != null )
+                return keyRing;
+        }
+
+        throw new IllegalArgumentException( LANG.getMessage( "no.secret.key", hexId ) );
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static long hexToId( String hexId )
+    {
+        BigInteger bi = new BigInteger( hexId, 16 );
+        return bi.longValue();
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static long getKeyId( InputStream inSig )
+        throws IOException, PGPException
+    {
+        PGPSignature sig = readSignature( inSig );
+
+        return sig.getKeyID();
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static PGPSignature readSignature( InputStream inS )
+        throws IOException, PGPException
+    {
+        if ( inS == null )
+            throw new IllegalArgumentException( "null.input.stream" );
+
+        InputStream in = inS;
+        in = PGPUtil.getDecoderStream( in );
+
+        PGPObjectFactory pgpObjectFactory = new PGPObjectFactory( in );
+        PGPSignatureList sigList = null;
+
+        Object pgpObject = pgpObjectFactory.nextObject();
+
+        if ( pgpObject == null )
+            throw new PGPException( LANG.getMessage( "no.objects.in.stream" ) );
+
+        if ( pgpObject instanceof PGPCompressedData )
+        {
+            PGPCompressedData cd = (PGPCompressedData) pgpObject;
+
+            pgpObjectFactory = new PGPObjectFactory( cd.getDataStream() );
+
+            sigList = (PGPSignatureList) pgpObjectFactory.nextObject();
+        }
+        else
+        {
+            sigList = (PGPSignatureList) pgpObject;
+        }
+
+        if ( sigList.size() < 1 )
+            throw new PGPException( LANG.getMessage( "no.signatures.in.stream" ) );
+
+        PGPSignature sig = sigList.get( 0 );
+
+        return sig;
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static String streamToString( InputStream in )
+        throws IOException
+    {
+        if ( in == null )
+            return null;
+
+        ByteArrayOutputStream ba = new ByteArrayOutputStream();
+        int b = 0;
+        while ( ( b = in.read() ) != -1 )
+            ba.write( b );
+
+        return ba.toString();
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static String fileToString( String fileName )
+        throws IOException
+    {
+        FileInputStream fis = null;
+        try
+        {
+            fis = new FileInputStream( fileName );
+            return streamToString( fis );
+        }
+        finally
+        {
+            if ( fis != null )
+                try
+                {
+                    fis.close();
+                }
+                catch ( Exception any )
+                {
+                }
+        }
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static final boolean verifyStream( InputStream in, InputStream asc, InputStream publicKeyRingStream )
+        throws IOException, StreamObserverException
+    {
+        StreamVerifierAttributes attributes =
+            new StreamVerifierAttributes( PgpStreamVerifierFactory.DEFAULT_EXTENSION, false, true );
+
+        PgpStreamVerifierFactory svf = new PgpStreamVerifierFactory( attributes, publicKeyRingStream );
+        String sig = PgpHelper.streamToString( asc );
+
+        return verifyStream( in, sig, svf );
+    }
+
+    // ---------------------------------------------------------------------------------
+    public static final boolean verifyStream( InputStream in, String sig, PgpStreamVerifierFactory factory )
+        throws IOException, StreamObserverException
+    {
+
+        PgpStreamVerifier sv = (PgpStreamVerifier) factory.newInstance();
+
+        sv.initSignature( sig );
+
+        int nBytes = -1;
+        while ( ( nBytes = in.read( _buf ) ) != -1 )
+            sv.bytesReady( _buf, 0, nBytes );
+
+        boolean verified = sv.verifySignature();
+
+        return verified;
+    }
+
+    public static final PGPPublicKeyRingCollection readPublicRing( InputStream in )
+        throws IOException, PGPException
+    {
+        if ( in == null )
+            return null;
+
+        PGPPublicKeyRingCollection res = new PGPPublicKeyRingCollection( PGPUtil.getDecoderStream( in ) );
+
+        return res;
+    }
+
+    public static final void writePublicRing( PGPPublicKeyRingCollection prc, OutputStream out )
+        throws IOException
+    {
+        if ( prc == null )
+            throw new IllegalArgumentException( LANG.getMessage( "null.ring" ) );
+
+        if ( out == null )
+            throw new IllegalArgumentException( LANG.getMessage( "null.os" ) );
+
+        prc.encode( out );
+
+    }
+    // ---------------------------------------------------------------------------------
+    // ---------------------------------------------------------------------------------
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifier.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifier.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifier.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifier.java Mon Apr 27 23:12:25 2009
@@ -38,205 +38,216 @@
 
 /**
  * lightweight pgp stream encoder, created one per stream
- *
+ * 
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class PgpStreamVerifier
-extends AbstractStreamVerifier
-implements StreamVerifier
+    extends AbstractStreamVerifier
+    implements StreamVerifier
 {
-  private static final Language LANG = new DefaultLanguage( PgpStreamVerifier.class );
-  
-  private PGPPublicKeyRingCollection trustedPublicKeyRing;
-
-  private PGPSignatureGenerator signatureGenerator;
-
-  private PGPSignature signature;
-  
-  private String signatureString;
-  
-  private long length = -1;
-  
-  private String lastModified;
-  
-  //-----------------------------------------------------------------------------------
-  public PgpStreamVerifier( StreamVerifierAttributes attributes )
-  {
-    super( attributes );
-  }
-  //-----------------------------------------------------------------------------------
-  public void init( PGPPublicKeyRingCollection trustedPublicKeyRing )
-  {
-    this.trustedPublicKeyRing = trustedPublicKeyRing;
-  }
-  //-----------------------------------------------------------------------------------
-  public void init( PGPPrivateKey privateKey, int algorithm, int digestAlgorithm )
-  throws StreamVerifierException
-  {
-    if( privateKey == null )
-      throw new IllegalArgumentException( LANG.getMessage( "null.private.key" ));
-    
-    try
-    {
-      signatureGenerator = new PGPSignatureGenerator(   algorithm
-                                                      , digestAlgorithm
-                                                      , PgpHelper.PROVIDER
-                                                    );
-      signatureGenerator.initSign( PGPSignature.BINARY_DOCUMENT, privateKey );
-      
-      signatureString = null;
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException(e);
-    }
-  }
-  
-  //-----------------------------------------------------------------------------------
-  public void byteReady( int b )
-  throws StreamObserverException
-  {
-    try
-    {
-      if( signature == null )
-      {
-        if( signatureGenerator == null )
-          throw new StreamVerifierException( LANG.getMessage( "no.stream.processor" ) );
-        signatureGenerator.update( (byte)b );
-      }
-      else
-        signature.update( (byte)b );
-    }
-    catch( SignatureException e )
-    {
-      throw new StreamObserverException(e);
-    }
-  }
-
-  //-----------------------------------------------------------------------------------
-  public void bytesReady( byte[] b, int off, int len )
-  throws StreamObserverException
-  {
-    try
-    {
-      if( signature == null )
-      {
-        if( signatureGenerator == null )
-          throw new StreamVerifierException( LANG.getMessage( "no.stream.processor" ) );
-        signatureGenerator.update( b, off, len );
-      }
-      else
-        signature.update( b, off, len );
-    }
-    catch( SignatureException e )
-    {
-      throw new StreamObserverException(e);
-    }
-  }
-  //-----------------------------------------------------------------------------------
-  public void initSignature( String signatureString )
-  throws StreamVerifierException
-  {
-    try
-    {
-      if( trustedPublicKeyRing == null )
-        throw new StreamVerifierException( LANG.getMessage( "no.trusted.ring" ) );
-
-      if( signatureString == null || signatureString.length() < 1 )
-        throw new StreamVerifierException( LANG.getMessage( "no.signature.string" ) );
-
-      signature = PgpHelper.readSignature( new ByteArrayInputStream( signatureString.getBytes() ) );
-      
-      if( signature == null )
-        throw new StreamVerifierException( "no.signatures.in.stream" );
-      
-      signature.initVerify( trustedPublicKeyRing.getPublicKey( signature.getKeyID() ), PgpHelper.PROVIDER );
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException(e);
-    }
-    
-    if( signature == null )
-      throw new StreamVerifierException("no.signatures.in.stream");
-    
-  }
-  //-----------------------------------------------------------------------------------
-  public boolean verifySignature()
-  throws StreamVerifierException
-  {
-
-    if( signature == null )
-      throw new StreamVerifierException( LANG.getMessage( "null.verify.signature" ));
-
-    try
-    {
-      boolean res = signature.verify(); 
-      return res;
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException( e );
-    }
-  }
-
-  //-----------------------------------------------------------------------------------
-  public String getSignature()
-  throws StreamVerifierException
-  {
-    if( signatureString != null )
-      return signatureString;
-    
-    if( signatureGenerator == null )
-      throw new StreamVerifierException("bad.verify.signature.state");
-    
-    BCPGOutputStream signaturePgpBytes = null;
-    try
-    {
-      ByteArrayOutputStream signatureBytes = new ByteArrayOutputStream();
-      ArmoredOutputStream aos = new ArmoredOutputStream( signatureBytes );
-      signaturePgpBytes = new BCPGOutputStream( aos );
-      signatureGenerator.generate().encode( signaturePgpBytes );
-      signaturePgpBytes.finish();
-      aos.flush();
-      aos.close();
-      signatureString = signatureBytes.toString();
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException( e );
-    }
-    finally
-    {
-      if( signaturePgpBytes != null ) try { signaturePgpBytes.close(); } catch( Exception any ) {}
-    }
-    
-    signatureGenerator = null;
-    
-    return signatureString;
-  }
-  //-----------------------------------------------------------------------------------
-  public long getLength()
-  {
-      return length;
-  }
-  //-----------------------------------------------------------------------------------
-  public void setLength(long length)
-  {
-      this.length = length;
-
-  }
-  //-----------------------------------------------------------------------------------
-  public String getLastModified()
-  {
-      return lastModified;
-  }
-  //-----------------------------------------------------------------------------------
-  public void setLastModified(String time)
-  {
-      lastModified = time;
+    private static final Language LANG = new DefaultLanguage( PgpStreamVerifier.class );
 
-  }
+    private PGPPublicKeyRingCollection trustedPublicKeyRing;
+
+    private PGPSignatureGenerator signatureGenerator;
+
+    private PGPSignature signature;
+
+    private String signatureString;
+
+    private long length = -1;
+
+    private String lastModified;
+
+    // -----------------------------------------------------------------------------------
+    public PgpStreamVerifier( StreamVerifierAttributes attributes )
+    {
+        super( attributes );
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void init( PGPPublicKeyRingCollection trustedPublicKeyRing )
+    {
+        this.trustedPublicKeyRing = trustedPublicKeyRing;
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void init( PGPPrivateKey privateKey, int algorithm, int digestAlgorithm )
+        throws StreamVerifierException
+    {
+        if ( privateKey == null )
+            throw new IllegalArgumentException( LANG.getMessage( "null.private.key" ) );
+
+        try
+        {
+            signatureGenerator = new PGPSignatureGenerator( algorithm, digestAlgorithm, PgpHelper.PROVIDER );
+            signatureGenerator.initSign( PGPSignature.BINARY_DOCUMENT, privateKey );
+
+            signatureString = null;
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void byteReady( int b )
+        throws StreamObserverException
+    {
+        try
+        {
+            if ( signature == null )
+            {
+                if ( signatureGenerator == null )
+                    throw new StreamVerifierException( LANG.getMessage( "no.stream.processor" ) );
+                signatureGenerator.update( (byte) b );
+            }
+            else
+                signature.update( (byte) b );
+        }
+        catch ( SignatureException e )
+        {
+            throw new StreamObserverException( e );
+        }
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void bytesReady( byte[] b, int off, int len )
+        throws StreamObserverException
+    {
+        try
+        {
+            if ( signature == null )
+            {
+                if ( signatureGenerator == null )
+                    throw new StreamVerifierException( LANG.getMessage( "no.stream.processor" ) );
+                signatureGenerator.update( b, off, len );
+            }
+            else
+                signature.update( b, off, len );
+        }
+        catch ( SignatureException e )
+        {
+            throw new StreamObserverException( e );
+        }
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void initSignature( String signatureString )
+        throws StreamVerifierException
+    {
+        try
+        {
+            if ( trustedPublicKeyRing == null )
+                throw new StreamVerifierException( LANG.getMessage( "no.trusted.ring" ) );
+
+            if ( signatureString == null || signatureString.length() < 1 )
+                throw new StreamVerifierException( LANG.getMessage( "no.signature.string" ) );
+
+            signature = PgpHelper.readSignature( new ByteArrayInputStream( signatureString.getBytes() ) );
+
+            if ( signature == null )
+                throw new StreamVerifierException( "no.signatures.in.stream" );
+
+            signature.initVerify( trustedPublicKeyRing.getPublicKey( signature.getKeyID() ), PgpHelper.PROVIDER );
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+
+        if ( signature == null )
+            throw new StreamVerifierException( "no.signatures.in.stream" );
+
+    }
+
+    // -----------------------------------------------------------------------------------
+    public boolean verifySignature()
+        throws StreamVerifierException
+    {
+
+        if ( signature == null )
+            throw new StreamVerifierException( LANG.getMessage( "null.verify.signature" ) );
+
+        try
+        {
+            boolean res = signature.verify();
+            return res;
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+    }
+
+    // -----------------------------------------------------------------------------------
+    public String getSignature()
+        throws StreamVerifierException
+    {
+        if ( signatureString != null )
+            return signatureString;
+
+        if ( signatureGenerator == null )
+            throw new StreamVerifierException( "bad.verify.signature.state" );
+
+        BCPGOutputStream signaturePgpBytes = null;
+        try
+        {
+            ByteArrayOutputStream signatureBytes = new ByteArrayOutputStream();
+            ArmoredOutputStream aos = new ArmoredOutputStream( signatureBytes );
+            signaturePgpBytes = new BCPGOutputStream( aos );
+            signatureGenerator.generate().encode( signaturePgpBytes );
+            signaturePgpBytes.finish();
+            aos.flush();
+            aos.close();
+            signatureString = signatureBytes.toString();
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+        finally
+        {
+            if ( signaturePgpBytes != null )
+                try
+                {
+                    signaturePgpBytes.close();
+                }
+                catch ( Exception any )
+                {
+                }
+        }
+
+        signatureGenerator = null;
+
+        return signatureString;
+    }
+
+    // -----------------------------------------------------------------------------------
+    public long getLength()
+    {
+        return length;
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void setLength( long length )
+    {
+        this.length = length;
+
+    }
+
+    // -----------------------------------------------------------------------------------
+    public String getLastModified()
+    {
+        return lastModified;
+    }
+
+    // -----------------------------------------------------------------------------------
+    public void setLastModified( String time )
+    {
+        lastModified = time;
+
+    }
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifierFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifierFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifierFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/pgp/PgpStreamVerifierFactory.java Mon Apr 27 23:12:25 2009
@@ -34,122 +34,116 @@
 import org.codehaus.plexus.lang.Language;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public class PgpStreamVerifierFactory
-extends AbstractStreamVerifierFactory
-implements StreamVerifierFactory
+    extends AbstractStreamVerifierFactory
+    implements StreamVerifierFactory
 {
 
-  public static final String DEFAULT_EXTENSION = PgpHelper.EXTENSION;
+    public static final String DEFAULT_EXTENSION = PgpHelper.EXTENSION;
 
-  private static final Language LANG = new DefaultLanguage( PgpStreamVerifierFactory.class );
+    private static final Language LANG = new DefaultLanguage( PgpStreamVerifierFactory.class );
 
-  private PGPPublicKeyRingCollection  trustedPublicKeyRing;
-  
-  private PGPPrivateKey privateKey;
-  
-  private int algorithm = 0;
-  
-  private int digestAlgorithm = PGPUtil.SHA1;
-  
-  //--------------------------------------------------------------------------------------------
-  public PgpStreamVerifierFactory( StreamVerifierAttributes attributes
-                                  , InputStream trustedPublicKeyRingStream
-                                  )
-  throws StreamVerifierException
-  {
-    super( attributes );
-    init( trustedPublicKeyRingStream );
-    
-  }
-  //--------------------------------------------------------------------------------------------
-  public PgpStreamVerifierFactory( StreamVerifierAttributes attributes
-                                  , PGPPublicKeyRingCollection publicKeyRing
-                                  )
-  throws StreamVerifierException
-  {
-    super( attributes );
-    this.trustedPublicKeyRing = publicKeyRing;
-  }
-  //--------------------------------------------------------------------------------------------
-  public PgpStreamVerifierFactory( StreamVerifierAttributes attributes
-                                  , InputStream secretKeyRingStream
-                                  , String secretKeyId
-                                  , String secretKeyPass
-                                  )
-  throws StreamVerifierException
-  {
-    super( attributes );
-    init( secretKeyRingStream, secretKeyId, secretKeyPass );
-  }
-  //--------------------------------------------------------------------------------------------
-  public void init(  InputStream trustedPublicKeyRingStream )
-  throws StreamVerifierException
-  {
-    try
-    {
-      if( trustedPublicKeyRingStream != null )
-      {
-        trustedPublicKeyRing = new PGPPublicKeyRingCollection(PGPUtil.getDecoderStream(trustedPublicKeyRingStream));
-        if( trustedPublicKeyRing == null )
-          throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.verify.empty" ) );
-      }
-      else
-        throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.verify" ) );
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException(e);
-    }
-  }
-  //--------------------------------------------------------------------------------------------
-  public void init( InputStream secretKeyRingStream
-                  , String secretKeyId
-                  , String secretKeyPass
-                  )
-  throws StreamVerifierException
-  {
-    try
-    {
-      if( secretKeyRingStream != null && secretKeyId != null && secretKeyPass != null )
-      {
-        PGPSecretKeyRing secRing = PgpHelper.readKeyRing( secretKeyRingStream, secretKeyId );
-        PGPSecretKey secKey = secRing.getSecretKey( PgpHelper.hexToId( secretKeyId ) );
-        privateKey = secKey.extractPrivateKey( secretKeyPass.toCharArray(), PgpHelper.PROVIDER );
-        algorithm =  secKey.getPublicKey().getAlgorithm();
-      }
-      else
-        throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.generate" ) );
-    }
-    catch( Exception e )
-    {
-      throw new StreamVerifierException(e);
-    }
-  }
-  //--------------------------------------------------------------------------------------------
-  public String getDefaultExtension()
-  {
-    return DEFAULT_EXTENSION;
-  }
-  //--------------------------------------------------------------------------------------------
-  public StreamVerifier newInstance()
-  throws StreamVerifierException
-  {
-    PgpStreamVerifier sv = new PgpStreamVerifier( attributes );
-    
-    if( privateKey != null )
-      sv.init( privateKey, algorithm, digestAlgorithm );
-    
-    if( trustedPublicKeyRing != null )
-      sv.init( trustedPublicKeyRing );
-    
-    return sv;
-  }
-  //--------------------------------------------------------------------------------------------
-  //--------------------------------------------------------------------------------------------
+    private PGPPublicKeyRingCollection trustedPublicKeyRing;
+
+    private PGPPrivateKey privateKey;
+
+    private int algorithm = 0;
+
+    private int digestAlgorithm = PGPUtil.SHA1;
+
+    // --------------------------------------------------------------------------------------------
+    public PgpStreamVerifierFactory( StreamVerifierAttributes attributes, InputStream trustedPublicKeyRingStream )
+        throws StreamVerifierException
+    {
+        super( attributes );
+        init( trustedPublicKeyRingStream );
+
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public PgpStreamVerifierFactory( StreamVerifierAttributes attributes, PGPPublicKeyRingCollection publicKeyRing )
+        throws StreamVerifierException
+    {
+        super( attributes );
+        this.trustedPublicKeyRing = publicKeyRing;
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public PgpStreamVerifierFactory( StreamVerifierAttributes attributes, InputStream secretKeyRingStream,
+                                     String secretKeyId, String secretKeyPass )
+        throws StreamVerifierException
+    {
+        super( attributes );
+        init( secretKeyRingStream, secretKeyId, secretKeyPass );
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public void init( InputStream trustedPublicKeyRingStream )
+        throws StreamVerifierException
+    {
+        try
+        {
+            if ( trustedPublicKeyRingStream != null )
+            {
+                trustedPublicKeyRing =
+                    new PGPPublicKeyRingCollection( PGPUtil.getDecoderStream( trustedPublicKeyRingStream ) );
+                if ( trustedPublicKeyRing == null )
+                    throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.verify.empty" ) );
+            }
+            else
+                throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.verify" ) );
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public void init( InputStream secretKeyRingStream, String secretKeyId, String secretKeyPass )
+        throws StreamVerifierException
+    {
+        try
+        {
+            if ( secretKeyRingStream != null && secretKeyId != null && secretKeyPass != null )
+            {
+                PGPSecretKeyRing secRing = PgpHelper.readKeyRing( secretKeyRingStream, secretKeyId );
+                PGPSecretKey secKey = secRing.getSecretKey( PgpHelper.hexToId( secretKeyId ) );
+                privateKey = secKey.extractPrivateKey( secretKeyPass.toCharArray(), PgpHelper.PROVIDER );
+                algorithm = secKey.getPublicKey().getAlgorithm();
+            }
+            else
+                throw new StreamVerifierException( LANG.getMessage( "bad.factory.init.generate" ) );
+        }
+        catch ( Exception e )
+        {
+            throw new StreamVerifierException( e );
+        }
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public String getDefaultExtension()
+    {
+        return DEFAULT_EXTENSION;
+    }
+
+    // --------------------------------------------------------------------------------------------
+    public StreamVerifier newInstance()
+        throws StreamVerifierException
+    {
+        PgpStreamVerifier sv = new PgpStreamVerifier( attributes );
+
+        if ( privateKey != null )
+            sv.init( privateKey, algorithm, digestAlgorithm );
+
+        if ( trustedPublicKeyRing != null )
+            sv.init( trustedPublicKeyRing );
+
+        return sv;
+    }
+    // --------------------------------------------------------------------------------------------
+    // --------------------------------------------------------------------------------------------
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1Verifier.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1Verifier.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1Verifier.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1Verifier.java Mon Apr 27 23:12:25 2009
@@ -28,92 +28,94 @@
 import org.apache.maven.mercury.crypto.api.StreamVerifierException;
 import org.apache.maven.mercury.crypto.basic.ChecksumCalculator;
 
-
 /**
  * SHA1Verifier
- *
- *
  */
 public class SHA1Verifier
-extends AbstractStreamVerifier
-implements StreamVerifier
+    extends AbstractStreamVerifier
+    implements StreamVerifier
 {
     public static final String digestAlgorithm = "SHA-1";
 
     private MessageDigest digest;
+
     private byte[] digestBytes;
-    private long length  = -1;
+
+    private long length = -1;
+
     private String lastModified;
-    
+
     private String sig;
-    
+
     public SHA1Verifier( StreamVerifierAttributes attributes )
     {
-      super( attributes );
+        super( attributes );
 
-      try
-      {
-          digest = MessageDigest.getInstance( digestAlgorithm );
-      }
-      catch (NoSuchAlgorithmException e)
-      {
-          //TODO
-      }
+        try
+        {
+            digest = MessageDigest.getInstance( digestAlgorithm );
+        }
+        catch ( NoSuchAlgorithmException e )
+        {
+            // TODO
+        }
     }
 
-    private byte[] getSignatureBytes ()
+    private byte[] getSignatureBytes()
     {
-        if (digestBytes == null)
+        if ( digestBytes == null )
             digestBytes = digest.digest();
         return digestBytes;
     }
-    
+
     public String getSignature()
     {
         return ChecksumCalculator.encodeToAsciiHex( getSignatureBytes() );
     }
-    
+
     public void initSignature( String signatureString )
-    throws StreamVerifierException
+        throws StreamVerifierException
     {
-      if( signatureString == null || signatureString.length() < 1 )
-        throw new IllegalArgumentException("null signature stream");
-      
-      sig =  signatureString;
-    
+        if ( signatureString == null || signatureString.length() < 1 )
+            throw new IllegalArgumentException( "null signature stream" );
+
+        sig = signatureString;
+
     }
 
     public boolean verifySignature()
     {
         String calculatedSignature = getSignature();
 
-        if (calculatedSignature == null && sig == null)
+        if ( calculatedSignature == null && sig == null )
             return true;
 
-        if ((calculatedSignature != null) && calculatedSignature.equals(sig))
+        if ( ( calculatedSignature != null ) && calculatedSignature.equals( sig ) )
             return true;
-        
+
         return false;
     }
 
-    public void byteReady(int b)
+    public void byteReady( int b )
     {
-        if (digest != null)
-            digest.update((byte)b);
+        if ( digest != null )
+            digest.update( (byte) b );
     }
 
-    public void bytesReady(byte[] b, int off, int len)
+    public void bytesReady( byte[] b, int off, int len )
     {
-        if (digest != null)
-            digest.update(b, off, len);
+        if ( digest != null )
+            digest.update( b, off, len );
     }
-    //-----------------------------------------------------------------------------------
+
+    // -----------------------------------------------------------------------------------
     public long getLength()
     {
         return length;
     }
-    //-----------------------------------------------------------------------------------
-    public void setLength(long length)
+
+    // -----------------------------------------------------------------------------------
+    public void setLength( long length )
     {
         this.length = length;
     }
@@ -123,7 +125,7 @@
         return lastModified;
     }
 
-    public void setLastModified(String time)
+    public void setLastModified( String time )
     {
         lastModified = time;
     }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1VerifierFactory.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1VerifierFactory.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1VerifierFactory.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/crypto/sha/SHA1VerifierFactory.java Mon Apr 27 23:12:25 2009
@@ -25,29 +25,29 @@
 import org.apache.maven.mercury.crypto.api.StreamVerifierFactory;
 
 public class SHA1VerifierFactory
-extends AbstractStreamVerifierFactory
-implements StreamVerifierFactory
+    extends AbstractStreamVerifierFactory
+    implements StreamVerifierFactory
 {
-  public static final String DEFAULT_EXTENSION = "sha1";
-  
-  public SHA1VerifierFactory( StreamVerifierAttributes attrs )
-  {
-    super( attrs );
-  }
-  
-  public SHA1VerifierFactory( boolean lenient, boolean satisfactory )
-  {
-    super( new StreamVerifierAttributes( DEFAULT_EXTENSION, lenient, satisfactory ) );
-  }
-  
-  public StreamVerifier newInstance()
-  {
-     return new SHA1Verifier( attributes );
-  }
-
-  public String getDefaultExtension()
-  {
-    return DEFAULT_EXTENSION;
-  }
+    public static final String DEFAULT_EXTENSION = "sha1";
+
+    public SHA1VerifierFactory( StreamVerifierAttributes attrs )
+    {
+        super( attrs );
+    }
+
+    public SHA1VerifierFactory( boolean lenient, boolean satisfactory )
+    {
+        super( new StreamVerifierAttributes( DEFAULT_EXTENSION, lenient, satisfactory ) );
+    }
+
+    public StreamVerifier newInstance()
+    {
+        return new SHA1Verifier( attributes );
+    }
+
+    public String getDefaultExtension()
+    {
+        return DEFAULT_EXTENSION;
+    }
 
 }

Modified: maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/event/AbstractMercuryEvent.java
URL: http://svn.apache.org/viewvc/maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/event/AbstractMercuryEvent.java?rev=769199&r1=769198&r2=769199&view=diff
==============================================================================
--- maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/event/AbstractMercuryEvent.java (original)
+++ maven/mercury/trunk/mercury-core/src/main/java/org/apache/maven/mercury/event/AbstractMercuryEvent.java Mon Apr 27 23:12:25 2009
@@ -22,135 +22,132 @@
 import java.util.Map;
 
 /**
- *
- *
  * @author Oleg Gusakov
  * @version $Id$
- *
  */
 public abstract class AbstractMercuryEvent
-implements MercuryEvent
+    implements MercuryEvent
 {
-  EventTypeEnum _type;
-  
-  String _name;
-  
-  String _tag;
-  
-  String _info;
-  
-  String _result;
-  
-  long _start;
-  
-  long _duration;
-  
-  Map<String, Object> _payload;
-  
-  public AbstractMercuryEvent()
-  {
-    start();
-  }
-  
-  public AbstractMercuryEvent( EventTypeEnum type, String name )
-  {
-    this();
-    this._type = type;
-    this._name = name;
-  }
-  
-  public AbstractMercuryEvent( EventTypeEnum type, String name, String info )
-  {
-    this( type, name );
-    this._info = info;
-  }
-
-  public long getDuration()
-  {
-    return _duration;
-  }
-
-  public Map<String, Object> getPayload()
-  {
-    return null;
-  }
-
-  public long getStart()
-  {
-    return _start;
-  }
-
-  public EventTypeEnum getType()
-  {
-    return _type;
-  }
-
-  public String getName()
-  {
-    return _name;
-  }
-
-  public String getInfo()
-  {
-    return _info;
-  }
-
-  public String getTag()
-  {
-    return _tag;
-  }
-
-  public String getResult()
-  {
-    return _result;
-  }
-
-  public void setResult( String result )
-  {
-    this._result = result;
-  }
-
-  public void setTag( String tag )
-  {
-    this._tag = tag;
-  }
-
-  public void setInfo( String info )
-  {
-    this._info = info;
-  }
-
-  public boolean hasResult()
-  {
-    return _result != null;
-  }
-
-  public Object getPayload( String name )
-  {
-    return _payload == null ? null : _payload.get( name );
-  }
-
-  public void setPayload( Map<String, Object> payload )
-  {
-    this._payload = payload;
-  }
-
-  public void setPayload( String name, Object value )
-  {
-    if( _payload == null )
-      _payload = new HashMap<String, Object>(4);
-    
-    _payload.put( name, value );
-  }
-
-  public void start()
-  {
-    this._start = System.currentTimeMillis();
-  }
-
-  public void stop()
-  {
-    _duration = System.currentTimeMillis() - _start;
-  }
+    EventTypeEnum _type;
+
+    String _name;
+
+    String _tag;
+
+    String _info;
+
+    String _result;
+
+    long _start;
+
+    long _duration;
+
+    Map<String, Object> _payload;
+
+    public AbstractMercuryEvent()
+    {
+        start();
+    }
+
+    public AbstractMercuryEvent( EventTypeEnum type, String name )
+    {
+        this();
+        this._type = type;
+        this._name = name;
+    }
+
+    public AbstractMercuryEvent( EventTypeEnum type, String name, String info )
+    {
+        this( type, name );
+        this._info = info;
+    }
+
+    public long getDuration()
+    {
+        return _duration;
+    }
+
+    public Map<String, Object> getPayload()
+    {
+        return null;
+    }
+
+    public long getStart()
+    {
+        return _start;
+    }
+
+    public EventTypeEnum getType()
+    {
+        return _type;
+    }
+
+    public String getName()
+    {
+        return _name;
+    }
+
+    public String getInfo()
+    {
+        return _info;
+    }
+
+    public String getTag()
+    {
+        return _tag;
+    }
+
+    public String getResult()
+    {
+        return _result;
+    }
+
+    public void setResult( String result )
+    {
+        this._result = result;
+    }
+
+    public void setTag( String tag )
+    {
+        this._tag = tag;
+    }
+
+    public void setInfo( String info )
+    {
+        this._info = info;
+    }
+
+    public boolean hasResult()
+    {
+        return _result != null;
+    }
+
+    public Object getPayload( String name )
+    {
+        return _payload == null ? null : _payload.get( name );
+    }
+
+    public void setPayload( Map<String, Object> payload )
+    {
+        this._payload = payload;
+    }
+
+    public void setPayload( String name, Object value )
+    {
+        if ( _payload == null )
+            _payload = new HashMap<String, Object>( 4 );
+
+        _payload.put( name, value );
+    }
+
+    public void start()
+    {
+        this._start = System.currentTimeMillis();
+    }
+
+    public void stop()
+    {
+        _duration = System.currentTimeMillis() - _start;
+    }
 
 }