You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@maven.apache.org by kh...@apache.org on 2020/03/21 18:55:04 UTC
[maven-artifact-transfer] branch MSHARED-864 updated: Continued
refactoring -> Generics ?
This is an automated email from the ASF dual-hosted git repository.
khmarbaise pushed a commit to branch MSHARED-864
in repository https://gitbox.apache.org/repos/asf/maven-artifact-transfer.git
The following commit(s) were added to refs/heads/MSHARED-864 by this push:
new bb4dd33 Continued refactoring -> Generics ?
bb4dd33 is described below
commit bb4dd337308be081c8a9cadfa7958227cbbad549
Author: Karl Heinz Marbaise <kh...@apache.org>
AuthorDate: Sun Mar 15 21:47:25 2020 +0100
Continued refactoring -> Generics ?
---
pom.xml | 11 ++++
.../deploy/internal/DefaultArtifactDeployer.java | 6 +-
.../transfer/artifact/deploy/internal/Invoker.java | 34 ++---------
.../deploy/internal/Maven30ArtifactDeployer.java | 7 +--
.../deploy/internal/Maven31ArtifactDeployer.java | 7 +--
.../install/internal/DefaultArtifactInstaller.java | 6 +-
.../artifact/install/internal/Invoker.java | 34 ++---------
.../install/internal/Maven30ArtifactInstaller.java | 5 +-
.../install/internal/Maven31ArtifactInstaller.java | 5 +-
.../resolve/internal/DefaultArtifactResolver.java | 26 ++++----
.../artifact/resolve/internal/Invoker.java | 30 ++--------
.../internal/DefaultDependencyCollector.java | 22 +++----
.../transfer/collection/internal/Invoker.java | 69 ++++------------------
.../internal/Maven30DependencyCollector.java | 16 +++--
.../internal/Maven30DependencyNodeAdapter.java | 2 +-
.../internal/Maven31DependencyCollector.java | 16 +++--
.../internal/Maven31DependencyNodeAdapter.java | 2 +-
.../internal/DefaultDependencyCollector.java | 22 +++----
.../dependencies/collect/internal/Invoker.java | 12 ++--
.../internal/DefaultDependencyResolver.java | 14 ++---
.../dependencies/resolve/internal/Invoker.java | 4 +-
21 files changed, 108 insertions(+), 242 deletions(-)
diff --git a/pom.xml b/pom.xml
index 1bcca0b..371c954 100644
--- a/pom.xml
+++ b/pom.xml
@@ -61,6 +61,17 @@
<build>
<plugins>
<plugin>
+ <groupId>org.apache.maven.plugins</groupId>
+ <artifactId>maven-compiler-plugin</artifactId>
+ <configuration>
+<!-- <showDeprecation>true</showDeprecation>-->
+ <compilerArgs>
+<!-- <arg>-Xlint:deprecation</arg>-->
+ <arg>-Xlint:unchecked</arg>
+ </compilerArgs>
+ </configuration>
+ </plugin>
+ <plugin>
<groupId>org.codehaus.plexus</groupId>
<artifactId>plexus-component-metadata</artifactId>
<executions>
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/DefaultArtifactDeployer.java b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/DefaultArtifactDeployer.java
index c6f2858..3d977c3 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/DefaultArtifactDeployer.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/DefaultArtifactDeployer.java
@@ -134,8 +134,7 @@ class DefaultArtifactDeployer
org.eclipse.aether.RepositorySystem repositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven31ArtifactDeployer( repositorySystem, session );
}
@@ -144,8 +143,7 @@ class DefaultArtifactDeployer
org.sonatype.aether.RepositorySystem repositorySystem =
container.lookup( org.sonatype.aether.RepositorySystem.class );
- org.sonatype.aether.RepositorySystemSession session =
- (org.sonatype.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.sonatype.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven30ArtifactDeployer( repositorySystem, session );
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Invoker.java
index 1102163..be93619 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Invoker.java
@@ -33,18 +33,18 @@ final class Invoker
// do not instantiate
}
- public static Object invoke( Object object, String method )
+ public static <T> T invoke( Object object, String method )
throws ArtifactDeployerException
{
- return invoke( object.getClass(), object, method );
+ return (T) invoke( object.getClass(), object, method );
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws ArtifactDeployerException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{
@@ -60,34 +60,12 @@ final class Invoker
}
}
- public static Object invoke( Object object, String method, Class<?> clazz, Object arg )
- throws ArtifactDeployerException
- {
- try
- {
- final Class<?> objectClazz = object.getClass();
- return objectClazz.getMethod( method, clazz ).invoke( object, arg );
- }
- catch ( IllegalAccessException e )
- {
- throw new ArtifactDeployerException( e.getMessage(), e );
- }
- catch ( InvocationTargetException e )
- {
- throw new ArtifactDeployerException( e.getMessage(), e );
- }
- catch ( NoSuchMethodException e )
- {
- throw new ArtifactDeployerException( e.getMessage(), e );
- }
- }
-
- public static Object invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
+ public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
throws ArtifactDeployerException
{
try
{
- return objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
+ return (T) objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
}
catch ( IllegalAccessException e )
{
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven30ArtifactDeployer.java b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven30ArtifactDeployer.java
index e8ef395..06a7c93 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven30ArtifactDeployer.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven30ArtifactDeployer.java
@@ -78,9 +78,8 @@ class Maven30ArtifactDeployer
// transform artifacts
for ( org.apache.maven.artifact.Artifact mavenArtifact : mavenArtifacts )
{
- Artifact aetherArtifact =
- (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
- org.apache.maven.artifact.Artifact.class, mavenArtifact );
+ Artifact aetherArtifact = Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ org.apache.maven.artifact.Artifact.class, mavenArtifact );
request.addArtifact( aetherArtifact );
RemoteRepository aetherRepository;
@@ -133,7 +132,7 @@ class Maven30ArtifactDeployer
throws ArtifactDeployerException
{
// CHECKSTYLE_OFF: LineLength
- RemoteRepository aetherRepo = (RemoteRepository) Invoker.invoke( RepositoryUtils.class, "toRepo",
+ RemoteRepository aetherRepo = Invoker.invoke( RepositoryUtils.class, "toRepo",
ArtifactRepository.class,
remoteRepository );
// CHECKSTYLE_ON: LineLength
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven31ArtifactDeployer.java b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven31ArtifactDeployer.java
index 52c7295..f3bf542 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven31ArtifactDeployer.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/deploy/internal/Maven31ArtifactDeployer.java
@@ -79,9 +79,8 @@ class Maven31ArtifactDeployer
// transform artifacts
for ( org.apache.maven.artifact.Artifact mavenArtifact : mavenArtifacts )
{
- Artifact aetherArtifact =
- (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
- org.apache.maven.artifact.Artifact.class, mavenArtifact );
+ Artifact aetherArtifact = Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ org.apache.maven.artifact.Artifact.class, mavenArtifact );
request.addArtifact( aetherArtifact );
RemoteRepository aetherRepository;
@@ -134,7 +133,7 @@ class Maven31ArtifactDeployer
throws ArtifactDeployerException
{
// CHECKSTYLE_OFF: LineLength
- RemoteRepository aetherRepo = (RemoteRepository) Invoker.invoke( RepositoryUtils.class, "toRepo",
+ RemoteRepository aetherRepo = Invoker.invoke( RepositoryUtils.class, "toRepo",
ArtifactRepository.class,
remoteRepository );
// CHECKSTYLE_ON: LineLength
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/DefaultArtifactInstaller.java b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/DefaultArtifactInstaller.java
index f8a56f7..58e3a9e 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/DefaultArtifactInstaller.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/DefaultArtifactInstaller.java
@@ -148,8 +148,7 @@ class DefaultArtifactInstaller
org.eclipse.aether.RepositorySystem repositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven31ArtifactInstaller( repositorySystem, session );
}
@@ -158,8 +157,7 @@ class DefaultArtifactInstaller
org.sonatype.aether.RepositorySystem repositorySystem =
container.lookup( org.sonatype.aether.RepositorySystem.class );
- org.sonatype.aether.RepositorySystemSession session =
- (org.sonatype.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.sonatype.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven30ArtifactInstaller( repositorySystem, session );
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Invoker.java
index f748e04..d1389ec 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Invoker.java
@@ -33,18 +33,18 @@ final class Invoker
// do not instantiate
}
- public static Object invoke( Object object, String method )
+ public static <T> T invoke( Object object, String method )
throws ArtifactInstallerException
{
- return invoke( object.getClass(), object, method );
+ return (T) invoke( object.getClass(), object, method );
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws ArtifactInstallerException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{
@@ -60,34 +60,12 @@ final class Invoker
}
}
- public static Object invoke( Object object, String method, Class<?> argClazz, Object arg )
+ public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
throws ArtifactInstallerException
{
try
{
- final Class<?> objectClazz = object.getClass();
- return objectClazz.getMethod( method, argClazz ).invoke( object, arg );
- }
- catch ( IllegalAccessException e )
- {
- throw new ArtifactInstallerException( e.getMessage(), e );
- }
- catch ( InvocationTargetException e )
- {
- throw new ArtifactInstallerException( e.getMessage(), e );
- }
- catch ( NoSuchMethodException e )
- {
- throw new ArtifactInstallerException( e.getMessage(), e );
- }
- }
-
- public static Object invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
- throws ArtifactInstallerException
- {
- try
- {
- return objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
+ return (T) objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
}
catch ( IllegalAccessException e )
{
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven30ArtifactInstaller.java b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven30ArtifactInstaller.java
index 2a15dfd..fbff698 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven30ArtifactInstaller.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven30ArtifactInstaller.java
@@ -60,9 +60,8 @@ class Maven30ArtifactInstaller
// transform artifacts
for ( org.apache.maven.artifact.Artifact mavenArtifact : mavenArtifacts )
{
- Artifact mainArtifact =
- (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
- org.apache.maven.artifact.Artifact.class, mavenArtifact );
+ Artifact mainArtifact = Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ org.apache.maven.artifact.Artifact.class, mavenArtifact );
request.addArtifact( mainArtifact );
for ( ArtifactMetadata metadata : mavenArtifact.getMetadataList() )
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven31ArtifactInstaller.java b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven31ArtifactInstaller.java
index e4eae74..aa15504 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven31ArtifactInstaller.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/install/internal/Maven31ArtifactInstaller.java
@@ -61,9 +61,8 @@ class Maven31ArtifactInstaller
// transform artifacts
for ( org.apache.maven.artifact.Artifact mavenArtifact : mavenArtifacts )
{
- Artifact mainArtifact =
- (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
- org.apache.maven.artifact.Artifact.class, mavenArtifact );
+ Artifact mainArtifact = Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ org.apache.maven.artifact.Artifact.class, mavenArtifact );
request.addArtifact( mainArtifact );
for ( ArtifactMetadata metadata : mavenArtifact.getMetadataList() )
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/DefaultArtifactResolver.java b/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/DefaultArtifactResolver.java
index 9f1826b..12c3ece 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/DefaultArtifactResolver.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/DefaultArtifactResolver.java
@@ -142,14 +142,11 @@ class DefaultArtifactResolver
org.eclipse.aether.RepositorySystem repositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- @SuppressWarnings( "unchecked" )
- List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.eclipse.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class, "toRepos",
- List.class,
- buildingRequest.getRemoteRepositories() );
-
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class, "toRepos",
+ List.class,
+ buildingRequest.getRemoteRepositories() );
+
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven31ArtifactResolver( repositorySystem, aetherRepositories, session );
@@ -159,14 +156,11 @@ class DefaultArtifactResolver
org.sonatype.aether.RepositorySystem repositorySystem =
container.lookup( org.sonatype.aether.RepositorySystem.class );
- @SuppressWarnings( "unchecked" )
- List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.sonatype.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class,
- "toRepos", List.class,
- buildingRequest.getRemoteRepositories() );
-
- org.sonatype.aether.RepositorySystemSession session =
- (org.sonatype.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class,
+ "toRepos", List.class,
+ buildingRequest.getRemoteRepositories() );
+
+ org.sonatype.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
return new Maven30ArtifactResolver( repositorySystem, aetherRepositories, session );
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/Invoker.java
index a398f9e..ebbea34 100644
--- a/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/artifact/resolve/internal/Invoker.java
@@ -33,40 +33,18 @@ final class Invoker
// do not instantiate
}
- public static Object invoke( Object object, String method )
+ public static <T> T invoke( Object object, String method )
throws ArtifactResolverException
{
- return invoke( object.getClass(), object, method );
+ return (T) invoke( object.getClass(), object, method );
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws ArtifactResolverException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
- }
- catch ( IllegalAccessException e )
- {
- throw new ArtifactResolverException( e.getMessage(), e );
- }
- catch ( InvocationTargetException e )
- {
- throw new ArtifactResolverException( e.getMessage(), e );
- }
- catch ( NoSuchMethodException e )
- {
- throw new ArtifactResolverException( e.getMessage(), e );
- }
- }
-
- public static Object invoke( Object object, String method, Class<?> argClazz, Object arg )
- throws ArtifactResolverException
- {
- try
- {
- final Class<?> objectClazz = object.getClass();
- return objectClazz.getMethod( method, argClazz ).invoke( object, arg );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/DefaultDependencyCollector.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/DefaultDependencyCollector.java
index 62a8fb2..449eb99 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/DefaultDependencyCollector.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/DefaultDependencyCollector.java
@@ -164,14 +164,11 @@ class DefaultDependencyCollector implements DependencyCollector, Contextualizabl
org.eclipse.aether.RepositorySystem m31RepositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
- @SuppressWarnings( "unchecked" )
- List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.eclipse.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class, "toRepos",
- List.class,
- buildingRequest.getRemoteRepositories() );
+ List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class, "toRepos",
+ List.class,
+ buildingRequest.getRemoteRepositories() );
return new Maven31DependencyCollector( m31RepositorySystem, artifactHandlerManager, session,
aetherRepositories );
@@ -181,14 +178,11 @@ class DefaultDependencyCollector implements DependencyCollector, Contextualizabl
org.sonatype.aether.RepositorySystem m30RepositorySystem =
container.lookup( org.sonatype.aether.RepositorySystem.class );
- org.sonatype.aether.RepositorySystemSession session =
- (org.sonatype.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.sonatype.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
- @SuppressWarnings( "unchecked" )
- List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories =
- ( List<org.sonatype.aether.repository.RemoteRepository> ) Invoker.invoke( RepositoryUtils.class,
- "toRepos", List.class,
- buildingRequest.getRemoteRepositories() );
+ List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class,
+ "toRepos", List.class,
+ buildingRequest.getRemoteRepositories() );
return new Maven30DependencyCollector( m30RepositorySystem, artifactHandlerManager, session,
aetherRepositories );
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Invoker.java
index 31951f8..405c446 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Invoker.java
@@ -34,18 +34,21 @@ final class Invoker
// do not instantiate
}
- public static Object invoke( Object object, String method )
+ public static <T> T invoke( Object object, String method )
throws DependencyCollectionException
{
- return invoke( object.getClass(), object, method );
+ @SuppressWarnings( "unchecked" )
+ T invoke = (T) invoke( object.getClass(), object, method );
+ return invoke;
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ @SuppressWarnings( "unchecked" )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws DependencyCollectionException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{
@@ -61,34 +64,12 @@ final class Invoker
}
}
- public static Object invoke( Object object, String method, Class<?> argClazz, Object arg )
- throws DependencyCollectionException
- {
- try
- {
- final Class<?> objectClazz = object.getClass();
- return objectClazz.getMethod( method, argClazz ).invoke( object, arg );
- }
- catch ( IllegalAccessException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( InvocationTargetException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( NoSuchMethodException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- }
-
- public static Object invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
+ public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
throws DependencyCollectionException
{
try
{
- return objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
+ return (T) objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
}
catch ( IllegalAccessException e )
{
@@ -114,12 +95,12 @@ final class Invoker
* @return the result of the method invocation
* @throws DependencyCollectorException if any checked exception occurs
*/
- public static Object invoke( Class<?> objectClazz, String staticMethod, Class<?>[] argClasses, Object[] args )
+ public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?>[] argClasses, Object[] args )
throws DependencyCollectionException
{
try
{
- return objectClazz.getMethod( staticMethod, argClasses ).invoke( null, args );
+ return (T) objectClazz.getMethod( staticMethod, argClasses ).invoke( null, args );
}
catch ( IllegalAccessException e )
{
@@ -135,32 +116,4 @@ final class Invoker
}
}
- public static Object newInstance( Class<?> objectClazz, Class<?> argClazz, Object arg )
- throws DependencyCollectionException
- {
- try
- {
- return objectClazz.getConstructor( argClazz ).newInstance( arg );
- }
- catch ( InstantiationException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( IllegalAccessException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( IllegalArgumentException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( InvocationTargetException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- catch ( NoSuchMethodException e )
- {
- throw new DependencyCollectionException( e.getMessage(), e );
- }
- }
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyCollector.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyCollector.java
index 67e3556..037d021 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyCollector.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyCollector.java
@@ -70,10 +70,9 @@ class Maven30DependencyCollector
public CollectResult collectDependencies( org.apache.maven.model.Dependency root )
throws DependencyCollectionException
{
- ArtifactTypeRegistry typeRegistry =
- (ArtifactTypeRegistry) Invoker
- .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
- ArtifactHandlerManager.class, artifactHandlerManager );
+ ArtifactTypeRegistry typeRegistry = Invoker
+ .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
+ ArtifactHandlerManager.class, artifactHandlerManager );
CollectRequest request = new CollectRequest();
request.setRoot( toDependency( root, typeRegistry ) );
@@ -113,10 +112,9 @@ class Maven30DependencyCollector
CollectRequest request = new CollectRequest();
request.setRoot( new Dependency( aetherArtifact, null ) );
- ArtifactTypeRegistry typeRegistry =
- (ArtifactTypeRegistry) Invoker
- .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
- ArtifactHandlerManager.class, artifactHandlerManager );
+ ArtifactTypeRegistry typeRegistry = Invoker
+ .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
+ ArtifactHandlerManager.class, artifactHandlerManager );
List<Dependency> aetherDependencies = new ArrayList<Dependency>( root.getDependencies().size() );
for ( org.apache.maven.model.Dependency mavenDependency : root.getDependencies() )
@@ -164,7 +162,7 @@ class Maven30DependencyCollector
Object[] args = new Object[] { mavenDependency, typeRegistry };
- return (Dependency) Invoker
+ return Invoker
.invoke( RepositoryUtils.class, "toDependency", argClasses, args );
}
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyNodeAdapter.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyNodeAdapter.java
index 052353f..b8e6ea9 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyNodeAdapter.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven30DependencyNodeAdapter.java
@@ -152,7 +152,7 @@ class Maven30DependencyNodeAdapter implements DependencyNode
{
try
{
- return (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ return Invoker.invoke( RepositoryUtils.class, "toArtifact",
org.sonatype.aether.artifact.Artifact.class, aetherArtifact );
}
catch ( DependencyCollectionException e )
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyCollector.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyCollector.java
index b6c5744..ef5057b 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyCollector.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyCollector.java
@@ -70,10 +70,9 @@ class Maven31DependencyCollector
public CollectResult collectDependencies( org.apache.maven.model.Dependency root )
throws DependencyCollectionException
{
- ArtifactTypeRegistry typeRegistry =
- (ArtifactTypeRegistry) Invoker
- .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
- ArtifactHandlerManager.class, artifactHandlerManager );
+ ArtifactTypeRegistry typeRegistry = Invoker
+ .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
+ ArtifactHandlerManager.class, artifactHandlerManager );
CollectRequest request = new CollectRequest();
request.setRoot( toDependency( root, typeRegistry ) );
@@ -113,10 +112,9 @@ class Maven31DependencyCollector
CollectRequest request = new CollectRequest();
request.setRoot( new Dependency( aetherArtifact, null ) );
- ArtifactTypeRegistry typeRegistry =
- (ArtifactTypeRegistry) Invoker
- .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
- ArtifactHandlerManager.class, artifactHandlerManager );
+ ArtifactTypeRegistry typeRegistry = Invoker
+ .invoke( RepositoryUtils.class, "newArtifactTypeRegistry",
+ ArtifactHandlerManager.class, artifactHandlerManager );
List<Dependency> aetherDependencies = new ArrayList<Dependency>( root.getDependencies().size() );
for ( org.apache.maven.model.Dependency mavenDependency : root.getDependencies() )
@@ -163,7 +161,7 @@ class Maven31DependencyCollector
Object[] args = new Object[] { root, typeRegistry };
- return (Dependency) Invoker
+ return Invoker
.invoke( RepositoryUtils.class, "toDependency", argClasses, args );
}
diff --git a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyNodeAdapter.java b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyNodeAdapter.java
index 3b3dbb7..5987f7f 100644
--- a/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyNodeAdapter.java
+++ b/src/main/java/org/apache/maven/shared/transfer/collection/internal/Maven31DependencyNodeAdapter.java
@@ -152,7 +152,7 @@ class Maven31DependencyNodeAdapter implements DependencyNode
{
try
{
- return (Artifact) Invoker.invoke( RepositoryUtils.class, "toArtifact",
+ return Invoker.invoke( RepositoryUtils.class, "toArtifact",
org.eclipse.aether.artifact.Artifact.class, aetherArtifact );
}
catch ( DependencyCollectionException e )
diff --git a/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/DefaultDependencyCollector.java b/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/DefaultDependencyCollector.java
index 3d50a66..b2676f5 100644
--- a/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/DefaultDependencyCollector.java
+++ b/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/DefaultDependencyCollector.java
@@ -175,14 +175,11 @@ class DefaultDependencyCollector implements DependencyCollector, Contextualizabl
org.eclipse.aether.RepositorySystem m31RepositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
- @SuppressWarnings( "unchecked" )
- List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.eclipse.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class, "toRepos",
- List.class,
- buildingRequest.getRemoteRepositories() );
+ List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class, "toRepos",
+ List.class,
+ buildingRequest.getRemoteRepositories() );
return new Maven31DependencyCollector( m31RepositorySystem, artifactHandlerManager, session,
aetherRepositories );
@@ -193,14 +190,11 @@ class DefaultDependencyCollector implements DependencyCollector, Contextualizabl
org.sonatype.aether.RepositorySystem m30RepositorySystem =
container.lookup( org.sonatype.aether.RepositorySystem.class );
- org.sonatype.aether.RepositorySystemSession session =
- (org.sonatype.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
+ org.sonatype.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
- @SuppressWarnings( "unchecked" )
- List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.sonatype.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class,
- "toRepos", List.class,
- buildingRequest.getRemoteRepositories() );
+ List<org.sonatype.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class,
+ "toRepos", List.class,
+ buildingRequest.getRemoteRepositories() );
return new Maven30DependencyCollector( m30RepositorySystem, artifactHandlerManager, session,
aetherRepositories );
diff --git a/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/Invoker.java
index 01a8410..efc59a6 100644
--- a/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/dependencies/collect/internal/Invoker.java
@@ -33,18 +33,18 @@ final class Invoker
// do not instantiate
}
- public static Object invoke( Object object, String method )
+ public static <T> T invoke( Object object, String method )
throws DependencyCollectorException
{
- return invoke( object.getClass(), object, method );
+ return (T) invoke( object.getClass(), object, method );
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws DependencyCollectorException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{
@@ -82,12 +82,12 @@ final class Invoker
}
}
- public static Object invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
+ public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
throws DependencyCollectorException
{
try
{
- return objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
+ return (T) objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
}
catch ( IllegalAccessException e )
{
diff --git a/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/DefaultDependencyResolver.java b/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/DefaultDependencyResolver.java
index 19faa28..d4a6049 100644
--- a/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/DefaultDependencyResolver.java
+++ b/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/DefaultDependencyResolver.java
@@ -164,14 +164,12 @@ class DefaultDependencyResolver
org.eclipse.aether.RepositorySystem m31RepositorySystem =
container.lookup( org.eclipse.aether.RepositorySystem.class );
- org.eclipse.aether.RepositorySystemSession session =
- (org.eclipse.aether.RepositorySystemSession) Invoker.invoke( buildingRequest, "getRepositorySession" );
-
- List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories =
- (List<org.eclipse.aether.repository.RemoteRepository>) Invoker.invoke( RepositoryUtils.class,
- "toRepos",
- List.class,
- buildingRequest.getRemoteRepositories() );
+ org.eclipse.aether.RepositorySystemSession session = Invoker.invoke( buildingRequest, "getRepositorySession" );
+
+ List<org.eclipse.aether.repository.RemoteRepository> aetherRepositories = Invoker.invoke( RepositoryUtils.class,
+ "toRepos",
+ List.class,
+ buildingRequest.getRemoteRepositories() );
return new Maven31DependencyResolver( m31RepositorySystem, artifactHandlerManager, session,
aetherRepositories );
diff --git a/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/Invoker.java b/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/Invoker.java
index f98a0ce..e20ea96 100644
--- a/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/Invoker.java
+++ b/src/main/java/org/apache/maven/shared/transfer/dependencies/resolve/internal/Invoker.java
@@ -39,12 +39,12 @@ final class Invoker
return (T) invoke( object.getClass(), object, method );
}
- public static Object invoke( Class<?> objectClazz, Object object, String method )
+ public static <T> T invoke( Class<?> objectClazz, Object object, String method )
throws DependencyResolverException
{
try
{
- return objectClazz.getMethod( method ).invoke( object );
+ return (T) objectClazz.getMethod( method ).invoke( object );
}
catch ( IllegalAccessException e )
{