This is an automated email from the ASF dual-hosted git repository.

rfscholte pushed a commit to branch MPIR-366
in repository 
https://gitbox.apache.org/repos/asf/maven-project-info-reports-plugin.git


The following commit(s) were added to refs/heads/MPIR-366 by this push:
     new 6646c74  [MPIR-366] Drop Maven 2 support
6646c74 is described below

commit 6646c74e19fd145b3ac78ec5025d11609e1b20d1
Author: rfscholte <rfscho...@apache.org>
AuthorDate: Fri Apr 13 13:12:14 2018 +0200

    [MPIR-366] Drop Maven 2 support
---
 .../stubs/DependencyArtifactStubFactory.java       | 74 ++++++++++++++++++++++
 1 file changed, 74 insertions(+)

diff --git 
a/src/test/java/org/apache/maven/report/projectinfo/stubs/DependencyArtifactStubFactory.java
 
b/src/test/java/org/apache/maven/report/projectinfo/stubs/DependencyArtifactStubFactory.java
new file mode 100644
index 0000000..7edbadb
--- /dev/null
+++ 
b/src/test/java/org/apache/maven/report/projectinfo/stubs/DependencyArtifactStubFactory.java
@@ -0,0 +1,74 @@
+package org.apache.maven.report.projectinfo.stubs;
+
+/* 
+ * Licensed to the Apache Software Foundation (ASF) under one
+ * or more contributor license agreements.  See the NOTICE file
+ * distributed with this work for additional information
+ * regarding copyright ownership.  The ASF licenses this file
+ * to you 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 java.io.File;
+import java.io.IOException;
+
+import org.apache.maven.artifact.Artifact;
+import org.apache.maven.artifact.ArtifactUtils;
+import org.apache.maven.artifact.versioning.VersionRange;
+import org.apache.maven.plugin.testing.ArtifactStubFactory;
+
+public class DependencyArtifactStubFactory
+    extends ArtifactStubFactory
+{
+    private boolean flattenedPath = true;
+
+    public DependencyArtifactStubFactory( File theWorkingDir, boolean 
theCreateFiles, boolean flattenedPath )
+    {
+        this( theWorkingDir, theCreateFiles );
+        this.flattenedPath = flattenedPath;
+    }
+
+    public DependencyArtifactStubFactory( File theWorkingDir, boolean 
theCreateFiles )
+    {
+        super( theWorkingDir, theCreateFiles );
+    }
+
+    @Override
+    public Artifact createArtifact( String groupId, String artifactId, 
VersionRange versionRange, String scope,
+                                    String type, String classifier, boolean 
optional )
+        throws IOException
+    {
+        File workingDir = getWorkingDir();
+
+        if ( !flattenedPath )
+        {
+            StringBuilder path = new StringBuilder( 128 );
+
+            path.append( groupId.replace( '.', '/' ) ).append( '/' );
+
+            path.append( artifactId ).append( '/' );
+
+            path.append( ArtifactUtils.toSnapshotVersion( 
versionRange.getRecommendedVersion().toString() ) );
+
+            // don't use flatten directories, won't happen at runtime
+            setWorkingDir( new File( workingDir, path.toString() ) );
+        }
+
+        Artifact artifact =
+            super.createArtifact( groupId, artifactId, versionRange, scope, 
type, classifier, optional );
+
+        setWorkingDir( workingDir );
+
+        return artifact;
+    }
+}

-- 
To stop receiving notification emails like this one, please contact
rfscho...@apache.org.

Reply via email to