[MRRESOURCES-122] Java 8 as minimum (#16)
* [MRRESOURCES-122] Java 8 as minimum
Signed-off-by: Olivier Lamy <olamy@apache.org>
diff --git a/pom.xml b/pom.xml
index 37c9163..421b430 100644
--- a/pom.xml
+++ b/pom.xml
@@ -30,7 +30,7 @@
</parent>
<artifactId>maven-remote-resources-plugin</artifactId>
- <version>3.0.1-SNAPSHOT</version>
+ <version>3.1.0-SNAPSHOT</version>
<packaging>maven-plugin</packaging>
<name>Apache Maven Remote Resources Plugin</name>
@@ -68,7 +68,7 @@
</distributionManagement>
<properties>
- <javaVersion>7</javaVersion>
+ <javaVersion>8</javaVersion>
<mavenVersion>3.2.5</mavenVersion>
<project.build.outputTimestamp>2022-07-17T16:33:17Z</project.build.outputTimestamp>
diff --git a/src/main/java/org/apache/maven/plugin/resources/remote/ModelInheritanceAssembler.java b/src/main/java/org/apache/maven/plugin/resources/remote/ModelInheritanceAssembler.java
index 31000ae..e713afd 100644
--- a/src/main/java/org/apache/maven/plugin/resources/remote/ModelInheritanceAssembler.java
+++ b/src/main/java/org/apache/maven/plugin/resources/remote/ModelInheritanceAssembler.java
@@ -478,9 +478,8 @@
Map<String, ReportSet> childReportSets = child.getReportSetsAsMap();
- for ( Object parentReportSet1 : parentReportSets )
+ for ( ReportSet parentReportSet : parentReportSets )
{
- ReportSet parentReportSet = (ReportSet) parentReportSet1;
if ( !handleAsInheritance || parentIsInherited )
{
diff --git a/src/main/java/org/apache/maven/plugin/resources/remote/ProcessRemoteResourcesMojo.java b/src/main/java/org/apache/maven/plugin/resources/remote/ProcessRemoteResourcesMojo.java
index cd70a67..cedeb5d 100644
--- a/src/main/java/org/apache/maven/plugin/resources/remote/ProcessRemoteResourcesMojo.java
+++ b/src/main/java/org/apache/maven/plugin/resources/remote/ProcessRemoteResourcesMojo.java
@@ -21,7 +21,6 @@
import java.io.ByteArrayInputStream;
import java.io.File;
-import java.io.FileInputStream;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.FileReader;
@@ -38,6 +37,7 @@
import java.io.Writer;
import java.net.MalformedURLException;
import java.net.URL;
+import java.nio.file.Files;
import java.text.SimpleDateFormat;
import java.util.AbstractMap;
import java.util.ArrayList;
@@ -493,7 +493,7 @@
catch ( MalformedURLException e )
{
// ignore
- getLog().debug( "URL issue with supplemental-models.xml: " + e.toString() );
+ getLog().debug( "URL issue with supplemental-models.xml: " + e );
}
}
}
@@ -696,7 +696,7 @@
getLog().debug( "Adding project with groupId [" + p.getGroupId() + "]" );
}
}
- Collections.sort( projects, new ProjectComparator() );
+ projects.sort( new ProjectComparator( ) );
return projects;
}
@@ -714,12 +714,7 @@
return dependencyResolver.resolve( project, Arrays.asList( resolveScopes ), mavenSession );
}
}
- catch ( ArtifactResolutionException e )
- {
- throw new IllegalStateException( "Failed to resolve dependencies for one or more projects in the reactor. "
- + "Reason: " + e.getMessage(), e );
- }
- catch ( ArtifactNotFoundException e )
+ catch ( ArtifactResolutionException | ArtifactNotFoundException e )
{
throw new IllegalStateException( "Failed to resolve dependencies for one or more projects in the reactor. "
+ "Reason: " + e.getMessage(), e );
@@ -873,7 +868,7 @@
{
if ( encoding != null )
{
- return new InputStreamReader( new FileInputStream( source ), encoding );
+ return new InputStreamReader( Files.newInputStream( source.toPath() ), encoding );
}
else
{
@@ -918,9 +913,9 @@
if ( file.exists() )
{
- try ( InputStream is = new FileInputStream( file ) )
+ try ( InputStream is = Files.newInputStream( file.toPath() );
+ InputStream newContents = new ByteArrayInputStream( outStream.getData() ) )
{
- final InputStream newContents = new ByteArrayInputStream( outStream.getData() );
needOverwrite = !IOUtil.contentEquals( is, newContents );
if ( getLog().isDebugEnabled() )
{
@@ -937,7 +932,7 @@
}
getLog().debug( "Writing " + file );
- try ( OutputStream os = new FileOutputStream( file ) )
+ try ( OutputStream os = Files.newOutputStream( file.toPath() ) )
{
outStream.writeTo( os );
}
@@ -1279,7 +1274,7 @@
if ( appendedResourceFile.exists() )
{
getLog().info( "Copying appended resource: " + projectResource );
- try ( InputStream in = new FileInputStream( appendedResourceFile );
+ try ( InputStream in = Files.newInputStream( appendedResourceFile.toPath() );
OutputStream out = new FileOutputStream( f, true ) )
{
IOUtil.copy( in, out );
@@ -1374,7 +1369,7 @@
return groupId.trim() + ":" + artifactId.trim();
}
- private Map<String, Model> loadSupplements( String models[] )
+ private Map<String, Model> loadSupplements( String[] models )
throws MojoExecutionException
{
if ( models == null )
diff --git a/src/test/java/org/apache/maven/plugin/resources/remote/RemoteResourcesMojoTest.java b/src/test/java/org/apache/maven/plugin/resources/remote/RemoteResourcesMojoTest.java
index 87b34ba..26e8e0f 100644
--- a/src/test/java/org/apache/maven/plugin/resources/remote/RemoteResourcesMojoTest.java
+++ b/src/test/java/org/apache/maven/plugin/resources/remote/RemoteResourcesMojoTest.java
@@ -22,47 +22,38 @@
import org.apache.maven.artifact.DefaultArtifact;
import org.apache.maven.artifact.handler.DefaultArtifactHandler;
import org.apache.maven.artifact.repository.ArtifactRepository;
-import org.apache.maven.artifact.repository.LegacyLocalRepositoryManager;
import org.apache.maven.artifact.versioning.VersionRange;
import org.apache.maven.execution.DefaultMavenExecutionRequest;
import org.apache.maven.execution.DefaultMavenExecutionResult;
import org.apache.maven.execution.MavenSession;
-import org.apache.maven.execution.ReactorManager;
import org.apache.maven.plugin.resources.remote.stub.MavenProjectBuildStub;
import org.apache.maven.plugin.resources.remote.stub.MavenProjectResourcesStub;
import org.apache.maven.plugin.testing.AbstractMojoTestCase;
-import org.apache.maven.project.DefaultProjectBuildingRequest;
import org.apache.maven.project.MavenProject;
-import org.apache.maven.project.ProjectBuildingRequest;
import org.apache.maven.repository.internal.MavenRepositorySystemUtils;
-import org.codehaus.plexus.DefaultPlexusContainer;
-import org.codehaus.plexus.logging.console.ConsoleLoggerManager;
import org.codehaus.plexus.util.FileUtils;
import java.io.File;
-import java.io.FileInputStream;
-import java.io.FileOutputStream;
import java.io.InputStream;
+import java.io.OutputStream;
import java.net.URL;
+import java.nio.charset.StandardCharsets;
+import java.nio.file.Files;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Calendar;
-import java.util.Properties;
+import java.util.Collections;
import java.util.jar.JarOutputStream;
import java.util.zip.ZipEntry;
import org.codehaus.plexus.util.IOUtil;
import org.eclipse.aether.DefaultRepositorySystemSession;
-import org.eclipse.aether.RepositorySystemSession;
-import org.eclipse.aether.internal.impl.EnhancedLocalRepositoryManagerFactory;
import org.eclipse.aether.internal.impl.SimpleLocalRepositoryManagerFactory;
import org.eclipse.aether.repository.LocalRepository;
-import org.eclipse.aether.repository.LocalRepositoryManager;
/**
* RemoteResources plugin Test Case
*/
-
public class RemoteResourcesMojoTest
extends AbstractMojoTestCase
{
@@ -256,12 +247,12 @@
file = new File( file, "UTF-8.bin" );
assertTrue( file.exists() );
- InputStream in = new FileInputStream( file );
- byte[] data = IOUtil.toByteArray( in );
- in.close();
-
- byte[] expected = "\u00E4\u00F6\u00FC\u00C4\u00D6\u00DC\u00DF".getBytes( "UTF-8" );
- assertTrue( Arrays.equals( expected, data ) );
+ try (InputStream in = Files.newInputStream( file.toPath( ) ) )
+ {
+ byte[] data = IOUtil.toByteArray( in );
+ byte[] expected = "\u00E4\u00F6\u00FC\u00C4\u00D6\u00DC\u00DF".getBytes( StandardCharsets.UTF_8 );
+ assertTrue( Arrays.equals( expected, data ) );
+ }
}
public void testVelocityISO88591()
@@ -297,12 +288,13 @@
file = new File( file, "ISO-8859-1.bin" );
assertTrue( file.exists() );
- InputStream in = new FileInputStream( file );
- byte[] data = IOUtil.toByteArray( in );
- in.close();
+ try (InputStream in = Files.newInputStream( file.toPath() ) )
+ {
+ byte[] data = IOUtil.toByteArray( in );
+ byte[] expected = "\u00E4\u00F6\u00FC\u00C4\u00D6\u00DC\u00DF".getBytes( StandardCharsets.ISO_8859_1 );
+ assertTrue( Arrays.equals( expected, data ) );
+ }
- byte[] expected = "\u00E4\u00F6\u00FC\u00C4\u00D6\u00DC\u00DF".getBytes( "ISO-8859-1" );
- assertTrue( Arrays.equals( expected, data ) );
}
public void testFilteredBundles()
@@ -386,7 +378,7 @@
protected void buildResourceBundle( String id,
String sourceEncoding,
- String resourceNames[],
+ String[] resourceNames,
File jarName )
throws Exception
{
@@ -418,21 +410,24 @@
if ( null != jarName )
{
- JarOutputStream jar = new JarOutputStream( new FileOutputStream( jarName ) );
- jar.putNextEntry( new ZipEntry( "META-INF/maven/remote-resources.xml" ) );
- jar.write( data.getBytes() );
- jar.closeEntry();
-
- for ( String resourceName : resourceNames )
+ try ( OutputStream fos = Files.newOutputStream( jarName.toPath() );
+ JarOutputStream jar = new JarOutputStream( fos ) )
{
- File resource = new File( resourceDir, resourceName );
- InputStream in = new FileInputStream( resource );
- jar.putNextEntry( new ZipEntry( resourceName ) );
- IOUtil.copy( in, jar );
+ jar.putNextEntry( new ZipEntry( "META-INF/maven/remote-resources.xml" ) );
+ jar.write( data.getBytes() );
jar.closeEntry();
- in.close();
+
+ for ( String resourceName : resourceNames )
+ {
+ File resource = new File( resourceDir, resourceName );
+ try ( InputStream in = Files.newInputStream( resource.toPath() ) )
+ {
+ jar.putNextEntry( new ZipEntry( resourceName ) );
+ IOUtil.copy( in, jar );
+ jar.closeEntry();
+ }
+ }
}
- jar.close();
}
}
@@ -500,7 +495,7 @@
protected ProcessRemoteResourcesMojo lookupProcessMojoWithSettings( final MavenProject project,
- String bundles[] )
+ String[] bundles )
throws Exception
{
return lookupProcessMojoWithSettings( project, new ArrayList<>( Arrays.asList( bundles ) ) );
@@ -522,11 +517,11 @@
request = new DefaultMavenExecutionRequest();
request.setUserProperties( null );
request.setLocalRepository( localRepository );
- request.setGoals( Arrays.asList( "install" ) );
+ request.setGoals(Collections.singletonList( "install" ) );
request.setBaseDirectory( project.getBasedir() );
request.setStartTime( Calendar.getInstance().getTime() );
MavenSession session = new MavenSession( getContainer(), reposession, request, new DefaultMavenExecutionResult() );
- session.setProjects( Arrays.asList( project ) );
+ session.setProjects( Collections.singletonList( project ) );
setVariableValueToObject( mojo, "project", project );
setVariableValueToObject( mojo, "outputDirectory", new File( project.getBuild().getOutputDirectory() ) );
@@ -540,6 +535,6 @@
protected ProcessRemoteResourcesMojo lookupProcessMojoWithDefaultSettings( final MavenProject project )
throws Exception
{
- return lookupProcessMojoWithSettings( project, new ArrayList<String>() );
+ return lookupProcessMojoWithSettings( project, new ArrayList<>() );
}
}