1 package org.apache.maven.shared.transfer.artifact.install.internal;
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22 import java.lang.reflect.InvocationTargetException;
23
24 import org.apache.maven.shared.transfer.artifact.install.ArtifactInstallerException;
25
26
27
28
29 final class Invoker
30 {
31 private Invoker()
32 {
33
34 }
35
36 public static <T> T invoke( Object object, String method )
37 throws ArtifactInstallerException
38 {
39 try
40 {
41 @SuppressWarnings( "unchecked" )
42 T invoke = (T) object.getClass().getMethod( method ).invoke( object );
43 return invoke;
44 }
45 catch ( IllegalAccessException | InvocationTargetException | NoSuchMethodException e )
46 {
47 throw new ArtifactInstallerException( e.getMessage(), e );
48 }
49 }
50
51 public static <T> T invoke( Class<?> objectClazz, String staticMethod, Class<?> argClazz, Object arg )
52 throws ArtifactInstallerException
53 {
54 try
55 {
56 @SuppressWarnings( "unchecked" )
57 T invoke = (T) objectClazz.getMethod( staticMethod, argClazz ).invoke( null, arg );
58 return invoke;
59 }
60 catch ( IllegalAccessException | InvocationTargetException | NoSuchMethodException e )
61 {
62 throw new ArtifactInstallerException( e.getMessage(), e );
63 }
64 }
65 }