From 719c1b185a0be132e2d5f31ea6f7bb3d4a9ad8ac Mon Sep 17 00:00:00 2001 From: "Dr. Martin Goik" <goik@hdm-stuttgart.de> Date: Thu, 20 Jan 2022 00:46:56 +0100 Subject: [PATCH] Enum correction in reflection code --- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- .../mi/sd1/test/ignore_me/ObjectWrapper.java | 13 ++++++++++--- 6 files changed, 60 insertions(+), 18 deletions(-) diff --git a/Klausuren/Sd1/2020winter/First/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2020winter/First/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 3ea40e6af..2e67853e3 100644 --- a/Klausuren/Sd1/2020winter/First/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2020winter/First/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -136,9 +136,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } diff --git a/Klausuren/Sd1/2020winter/First/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2020winter/First/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 3ea40e6af..2e67853e3 100644 --- a/Klausuren/Sd1/2020winter/First/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2020winter/First/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -136,9 +136,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } diff --git a/Klausuren/Sd1/2020winter/Second/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2020winter/Second/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 3ea40e6af..2e67853e3 100644 --- a/Klausuren/Sd1/2020winter/Second/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2020winter/Second/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -136,9 +136,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } diff --git a/Klausuren/Sd1/2020winter/Second/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2020winter/Second/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 3ea40e6af..2e67853e3 100644 --- a/Klausuren/Sd1/2020winter/Second/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2020winter/Second/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -136,9 +136,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } diff --git a/Klausuren/Sd1/2021summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2021summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 9ffd35e49..2b8ef988a 100644 --- a/Klausuren/Sd1/2021summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2021summer/Exam/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -137,9 +137,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } diff --git a/Klausuren/Sd1/2021summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java b/Klausuren/Sd1/2021summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java index 9ffd35e49..2b8ef988a 100644 --- a/Klausuren/Sd1/2021summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java +++ b/Klausuren/Sd1/2021summer/Solve/src/test/java/de/hdm_stuttgart/mi/sd1/test/ignore_me/ObjectWrapper.java @@ -137,9 +137,16 @@ public class ObjectWrapper<T> { for (int i = 0; i < formalArgumentTypes.length; i++) { final Class parametersClass = parameter[i].getClass(); - if (!formalArgumentTypes[i].equals(parametersClass) && - !formalArgumentTypes[i].equals(getPrimitiveType(parametersClass))) { - return false; + final Class<?> formalArgumentType = formalArgumentTypes[i]; + + if (formalArgumentType.isPrimitive()) { + if (!formalArgumentType.equals(getPrimitiveType(parametersClass))) { + return false; + } + } else { + if (!formalArgumentType.isAssignableFrom(parametersClass)) { + return false; + } } } } -- GitLab