summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMürsel Türk2020-11-11 15:46:18 +0100
committerMürsel Türk2020-11-11 15:46:18 +0100
commit76a3d137b3a75684175b988f85edc502a12e25ce (patch)
tree39bf429bf42b3c2d1427c21b57a18185edce07b1
parent[client] Fixed search in description (diff)
downloadtutor-module-76a3d137b3a75684175b988f85edc502a12e25ce.tar.gz
tutor-module-76a3d137b3a75684175b988f85edc502a12e25ce.tar.xz
tutor-module-76a3d137b3a75684175b988f85edc502a12e25ce.zip
[client] Check if description field is set
The helper class for checking whether object has field with the help of java reflection is removed and replaced by methods of Thrift TBase. Issue : #3691
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java12
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java12
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/util/ObjectHelper.java16
3 files changed, 14 insertions, 26 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java
index 4326b525..b1f31220 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/control/ImageListViewer.java
@@ -24,7 +24,6 @@ import org.openslx.dozmod.permissions.ImagePerms;
import org.openslx.dozmod.thrift.Session;
import org.openslx.dozmod.thrift.cache.ImageCache;
import org.openslx.dozmod.thrift.cache.UserCache;
-import org.openslx.dozmod.util.ObjectHelper;
import org.openslx.util.QuickTimer;
import org.openslx.util.QuickTimer.Task;
@@ -77,10 +76,13 @@ public class ImageListViewer extends QLabel {
ImageSummaryRead image = imageTable.getModelRow(entry.getIdentifier());
if (searchFieldPattern.matcher(image.imageName).find())
return true;
- if (chkSearchInDescription.isSelected() && ObjectHelper.objectHasField(image, "description")) {
- String description = image.getFieldValue(image.fieldForId(23)).toString();
- if (searchFieldPattern.matcher(description).find())
- return true;
+ if (chkSearchInDescription.isSelected()) {
+ ImageSummaryRead._Fields descriptionField = image.fieldForId(23);
+ if (descriptionField != null && image.isSet(descriptionField)) {
+ String description = image.getFieldValue(descriptionField).toString();
+ if (searchFieldPattern.matcher(description).find())
+ return true;
+ }
}
UserInfo user = UserCache.find(image.ownerId);
if (user == null)
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
index c288a0aa..f61ac6a3 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureListWindow.java
@@ -48,7 +48,6 @@ import org.openslx.dozmod.thrift.ThriftActions;
import org.openslx.dozmod.thrift.ThriftActions.DeleteLectureCallback;
import org.openslx.dozmod.thrift.cache.LectureCache;
import org.openslx.dozmod.thrift.cache.UserCache;
-import org.openslx.dozmod.util.ObjectHelper;
import org.openslx.util.QuickTimer;
import org.openslx.util.QuickTimer.Task;
import org.openslx.util.Util;
@@ -120,10 +119,13 @@ public class LectureListWindow extends LectureListWindowLayout {
LectureSummary lecture = tblLectures.getModelRow(entry.getIdentifier());
if (searchFieldPattern.matcher(lecture.lectureName).find())
return true;
- if (chkSearchInDescription.isSelected() && ObjectHelper.objectHasField(lecture, "description")) {
- String description = lecture.getFieldValue(lecture.fieldForId(18)).toString();
- if (description != null && searchFieldPattern.matcher(description).find())
- return true;
+ if (chkSearchInDescription.isSelected()) {
+ LectureSummary._Fields descriptionField = lecture.fieldForId(18);
+ if (descriptionField != null && lecture.isSet(descriptionField)) {
+ String description = lecture.getFieldValue(descriptionField).toString();
+ if (description != null && searchFieldPattern.matcher(description).find())
+ return true;
+ }
}
UserInfo user = UserCache.find(lecture.ownerId);
if (user == null)
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ObjectHelper.java b/dozentenmodul/src/main/java/org/openslx/dozmod/util/ObjectHelper.java
deleted file mode 100644
index 75f9dcce..00000000
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/util/ObjectHelper.java
+++ /dev/null
@@ -1,16 +0,0 @@
-package org.openslx.dozmod.util;
-
-import java.lang.reflect.Field;
-
-public class ObjectHelper {
-
- public static Boolean objectHasField(Object object, String fieldName) {
- Class<?> clazz = object.getClass();
- for (Field field : clazz.getFields()) {
- if (field.getName().equals(fieldName)) {
- return true;
- }
- }
- return false;
- }
-}