You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by ep...@apache.org on 2005/12/05 10:15:29 UTC
svn commit: r354028 - in
/maven/repository-manager/trunk/maven-repository-reports-standard/src:
main/java/org/apache/maven/repository/reporting/
test/java/org/apache/maven/repository/reporting/
Author: epunzalan
Date: Mon Dec 5 01:15:17 2005
New Revision: 354028
URL: http://svn.apache.org/viewcvs?rev=354028&view=rev
Log:
PR: MRM-2
Submitted by: John Tolentino
Added:
maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java (with props)
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java (with props)
Modified:
maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java?rev=354028&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java Mon Dec 5 01:15:17 2005
@@ -0,0 +1,104 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.metadata.RepositoryMetadata;
+
+import java.util.Iterator;
+import java.util.List;
+import java.util.ArrayList;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class DefaultArtifactReporter
+ implements ArtifactReporter
+{
+ private List artifactFailures = new ArrayList();
+
+ private List artifactSuccesses = new ArrayList();
+
+ private List artifactWarnings = new ArrayList();
+
+ private List metadataFailures = new ArrayList();
+
+ private List metadataSuccesses = new ArrayList();
+
+ private List metadataWarnings = new ArrayList();
+
+ public void addFailure( Artifact artifact, String reason )
+ {
+ artifactFailures.add( new ArtifactResult( artifact, reason ) );
+ }
+
+ public void addSuccess( Artifact artifact )
+ {
+ artifactSuccesses.add( new ArtifactResult( artifact ) );
+ }
+
+ public void addWarning( Artifact artifact, String reason )
+ {
+ artifactWarnings.add( new ArtifactResult( artifact, reason ) );
+ }
+
+ public void addFailure( RepositoryMetadata metadata, String reason )
+ {
+ metadataFailures.add( new RepositoryMetadataResult( metadata, reason ) );
+ }
+
+ public void addSuccess( RepositoryMetadata metadata )
+ {
+ metadataSuccesses.add( new RepositoryMetadataResult( metadata ) );
+ }
+
+ public void addWarning( RepositoryMetadata metadata, String reason )
+ {
+ metadataWarnings.add( new RepositoryMetadataResult( metadata, reason ) );
+ }
+
+ public Iterator getArtifactFailureIterator()
+ {
+ return artifactFailures.iterator();
+ }
+
+ public Iterator getArtifactSuccessIterator()
+ {
+ return artifactSuccesses.iterator();
+ }
+
+ public Iterator getArtifactWarningIterator()
+ {
+ return artifactWarnings.iterator();
+ }
+
+ public Iterator getRepositoryMetadataFailureIterator()
+ {
+ return metadataFailures.iterator();
+ }
+
+ public Iterator getRepositoryMetadataSuccessIterator()
+ {
+ return metadataSuccesses.iterator();
+ }
+
+ public Iterator getRepositoryMetadataWarningIterator()
+ {
+ return metadataWarnings.iterator();
+ }
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/main/java/org/apache/maven/repository/reporting/DefaultArtifactReporter.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Added: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java?rev=354028&view=auto
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java (added)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java Mon Dec 5 01:15:17 2005
@@ -0,0 +1,143 @@
+package org.apache.maven.repository.reporting;
+
+/*
+ * Copyright 2001-2005 The Apache Software Foundation.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+import org.apache.maven.artifact.factory.ArtifactFactory;
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.repository.metadata.ArtifactRepositoryMetadata;
+import org.apache.maven.artifact.repository.metadata.Versioning;
+import org.apache.maven.model.Model;
+
+import java.util.Iterator;
+
+/**
+ * @author <a href="mailto:jtolentino@mergere.com">John Tolentino</a>
+ */
+public class ArtifactReporterTest
+ extends AbstractRepositoryReportsTestCase
+{
+ protected ArtifactReporter reporter;
+ protected ArtifactFactory artifactFactory;
+ protected Artifact artifact;
+ protected MockArtifactReportProcessor processor;
+ protected Versioning versioning;
+ protected Model model;
+
+ protected void setUp()
+ throws Exception
+ {
+ super.setUp();
+ reporter = new DefaultArtifactReporter();
+ artifactFactory = (ArtifactFactory) lookup( ArtifactFactory.ROLE );
+ artifact = artifactFactory.createBuildArtifact( "groupId", "artifactId", "1.0-alpha-1", "type" );
+ processor = new MockArtifactReportProcessor();
+ versioning = new Versioning();
+ versioning.addVersion( "1.0-alpha-1" );
+ versioning.setLastUpdated( "20050611.202020" );
+ model = new Model();
+ }
+
+ public void testArtifactReporterSingleSuccess()
+ {
+ processor.addReturnValue( ReportCondition.SUCCESS, artifact, "all is good" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator success = reporter.getArtifactSuccessIterator();
+ assertTrue( success.hasNext() );
+ success.next();
+ assertFalse( success.hasNext() );
+ }
+
+ public void testArtifactReporterMultipleSuccess()
+ {
+ processor.addReturnValue( ReportCondition.SUCCESS, artifact, "one" );
+ processor.addReturnValue( ReportCondition.SUCCESS, artifact, "two" );
+ processor.addReturnValue( ReportCondition.SUCCESS, artifact, "three" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator success = reporter.getArtifactSuccessIterator();
+ assertTrue( success.hasNext() );
+ int i;
+ for (i = 0; success.hasNext(); i++)
+ {
+ success.next();
+ }
+ assertTrue(i == 3);
+ }
+
+ public void testArtifactReporterSingleFailure()
+ {
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed once" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator failure = reporter.getArtifactFailureIterator();
+ assertTrue( failure.hasNext() );
+ failure.next();
+ assertFalse( failure.hasNext() );
+ }
+
+ public void testArtifactReporterMultipleFailure()
+ {
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed once" );
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed twice" );
+ processor.addReturnValue( ReportCondition.FAILURE, artifact, "failed thrice" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator failure = reporter.getArtifactFailureIterator();
+ assertTrue( failure.hasNext() );
+ int i;
+ for (i = 0; failure.hasNext(); i++)
+ {
+ failure.next();
+ }
+ assertTrue(i == 3);
+ }
+
+ public void testArtifactReporterSingleWarning()
+ {
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "you've been warned" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator warning = reporter.getArtifactFailureIterator();
+ assertTrue( warning.hasNext() );
+ warning.next();
+ assertFalse( warning.hasNext() );
+ }
+
+ public void testArtifactReporterMultipleWarning()
+ {
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "i'm warning you" );
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "you have to stop now" );
+ processor.addReturnValue( ReportCondition.WARNING, artifact, "all right... that does it!" );
+ processor.processArtifact( model, artifact, reporter );
+ Iterator warning = reporter.getArtifactFailureIterator();
+ assertTrue( warning.hasNext() );
+ int i;
+ for (i = 0; warning.hasNext(); i++)
+ {
+ warning.next();
+ }
+ assertTrue(i == 3);
+ }
+
+ protected void tearDown()
+ throws Exception
+ {
+ versioning = null;
+ processor.clearList();
+ processor = null;
+ artifactFactory = null;
+ reporter = null;
+ super.tearDown();
+ }
+
+}
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java
------------------------------------------------------------------------------
svn:eol-style = native
Propchange: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/ArtifactReporterTest.java
------------------------------------------------------------------------------
svn:keywords = "Author Date Id Revision"
Modified: maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java
URL: http://svn.apache.org/viewcvs/maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java?rev=354028&r1=354027&r2=354028&view=diff
==============================================================================
--- maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java (original)
+++ maven/repository-manager/trunk/maven-repository-reports-standard/src/test/java/org/apache/maven/repository/reporting/MockArtifactReportProcessor.java Mon Dec 5 01:15:17 2005
@@ -30,6 +30,7 @@
implements ArtifactReportProcessor
{
private List reportConditions;
+
private Iterator iterator;
public MockArtifactReportProcessor()
@@ -43,23 +44,26 @@
{
iterator = reportConditions.iterator();
}
- if ( ! reportConditions.isEmpty() )
+ if ( !reportConditions.isEmpty() )
{
- ReportCondition reportCondition = (ReportCondition) iterator.next();
- switch( reportCondition.getResult() )
+ while(iterator.hasNext())
{
- case ReportCondition.SUCCESS :
- {
- reporter.addSuccess( reportCondition.getArtifact() );
- }
- case ReportCondition.WARNING :
- {
- reporter.addWarning( reportCondition.getArtifact(), reportCondition.getReason() );
- }
- case ReportCondition.FAILURE :
- {
- reporter.addFailure( reportCondition.getArtifact(), reportCondition.getReason() );
- }
+ ReportCondition reportCondition = (ReportCondition) iterator.next();
+ switch ( reportCondition.getResult() )
+ {
+ case ReportCondition.SUCCESS:
+ {
+ reporter.addSuccess( reportCondition.getArtifact() );
+ }
+ case ReportCondition.WARNING:
+ {
+ reporter.addWarning( reportCondition.getArtifact(), reportCondition.getReason() );
+ }
+ case ReportCondition.FAILURE:
+ {
+ reporter.addFailure( reportCondition.getArtifact(), reportCondition.getReason() );
+ }
+ }
}
}
}