Fix reflection method invokation
Either of Method.invoke, Field.get and Field.set can accept null as receiver. Change-Id: I4539dcc95a794f6ee84cf4e7aabf4e8f0206728f
This commit is contained in:
parent
05c9b0182b
commit
f23f00a13a
1 changed files with 3 additions and 3 deletions
|
@ -108,7 +108,7 @@ public class CompatUtils {
|
|||
|
||||
public static Object invoke(
|
||||
Object receiver, Object defaultValue, Method method, Object... args) {
|
||||
if (receiver == null || method == null) return defaultValue;
|
||||
if (method == null) return defaultValue;
|
||||
try {
|
||||
return method.invoke(receiver, args);
|
||||
} catch (IllegalArgumentException e) {
|
||||
|
@ -124,7 +124,7 @@ public class CompatUtils {
|
|||
}
|
||||
|
||||
public static Object getFieldValue(Object receiver, Object defaultValue, Field field) {
|
||||
if (receiver == null || field == null) return defaultValue;
|
||||
if (field == null) return defaultValue;
|
||||
try {
|
||||
return field.get(receiver);
|
||||
} catch (IllegalArgumentException e) {
|
||||
|
@ -137,7 +137,7 @@ public class CompatUtils {
|
|||
}
|
||||
|
||||
public static void setFieldValue(Object receiver, Field field, Object value) {
|
||||
if (receiver == null || field == null) return;
|
||||
if (field == null) return;
|
||||
try {
|
||||
field.set(receiver, value);
|
||||
} catch (IllegalArgumentException e) {
|
||||
|
|
Loading…
Reference in a new issue