Package org.fest.reflect.method
Class StaticMethodName
- java.lang.Object
-
- org.fest.reflect.method.StaticMethodName
-
public final class StaticMethodName extends java.lang.ObjectUnderstands the name of a static method to invoke using Java Reflection.The following is an example of proper usage of this class:
// Equivalent to call 'Jedi.setCommonPower("Jump")'staticMethod("setCommonPower").withParameterTypes(String.class) .in(Jedi.class) .invoke("Jump"); // Equivalent to call 'Jedi.addPadawan()'staticMethod("addPadawan").in(Jedi.class).invoke(); // Equivalent to call 'Jedi.commonPowerCount()' String name =staticMethod("commonPowerCount").withReturnType(String.class) .in(Jedi.class) .invoke(); // Equivalent to call 'Jedi.getCommonPowers()' List<String> powers =staticMethod("getCommonPowers").withReturnType(newTypeRef<List<String>>() {}) .in(Jedi.class) .invoke();- Author:
- Alex Ruiz
-
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description Invoker<java.lang.Void>in(java.lang.Class<?> target)Creates a new invoker for a static method that takes no parameters and return valuevoid.static StaticMethodNamestartStaticMethodAccess(java.lang.String name)Creates a newStaticMethodName: the starting point of the fluent interface for accessing static methods using Java Reflection.StaticMethodParameterTypes<java.lang.Void>withParameterTypes(java.lang.Class<?>... parameterTypes)Specifies the parameter types of the static method to invoke.<T> StaticMethodReturnType<T>withReturnType(java.lang.Class<T> type)Specifies the return type of the static method to invoke.<T> StaticMethodReturnTypeRef<T>withReturnType(TypeRef<T> type)Specifies the return type reference of the static method to invoke.
-
-
-
Method Detail
-
startStaticMethodAccess
public static StaticMethodName startStaticMethodAccess(java.lang.String name)
Creates a newStaticMethodName: the starting point of the fluent interface for accessing static methods using Java Reflection.- Parameters:
name- the name of the method to access using Java Reflection.- Returns:
- the created
StaticMethodName. - Throws:
java.lang.NullPointerException- if the given name isnull.java.lang.IllegalArgumentException- if the given name is empty.
-
withReturnType
public <T> StaticMethodReturnType<T> withReturnType(java.lang.Class<T> type)
Specifies the return type of the static method to invoke. This method call is optional if the return type of the method to invoke isvoid.- Type Parameters:
T- the generic type of the method's return type.- Parameters:
type- the return type of the method to invoke.- Returns:
- the created return type holder.
- Throws:
java.lang.NullPointerException- if the given type isnull.
-
withReturnType
public <T> StaticMethodReturnTypeRef<T> withReturnType(TypeRef<T> type)
Specifies the return type reference of the static method to invoke. This method call is optional if the return type of the method to invoke isvoid.- Type Parameters:
T- the generic type of the method's return type.- Parameters:
type- the return type reference of the method to invoke.- Returns:
- the created return type holder.
- Throws:
java.lang.NullPointerException- if the given type reference isnull.
-
withParameterTypes
public StaticMethodParameterTypes<java.lang.Void> withParameterTypes(java.lang.Class<?>... parameterTypes)
Specifies the parameter types of the static method to invoke. This method call is optional if the method to invoke does not take arguments.- Parameters:
parameterTypes- the parameter types of the method to invoke.- Returns:
- the created parameter types holder.
- Throws:
java.lang.NullPointerException- if the array of parameter types isnull.
-
in
public Invoker<java.lang.Void> in(java.lang.Class<?> target)
Creates a new invoker for a static method that takes no parameters and return valuevoid.- Parameters:
target- the object containing the method to invoke.- Returns:
- the created method invoker.
- Throws:
java.lang.NullPointerException- if the given target isnull.
-
-