summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
diff options
context:
space:
mode:
authorJonathan Bauer2015-08-21 15:59:03 +0200
committerJonathan Bauer2015-08-21 15:59:03 +0200
commit32f69464f571f7db8d8aa82df965588da0adc636 (patch)
treef83141da824ab74bb4b36d22318dd5c3f1caf73d /dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
parent[client] ThriftActions & calls in LectureWizard (diff)
downloadtutor-module-32f69464f571f7db8d8aa82df965588da0adc636.tar.gz
tutor-module-32f69464f571f7db8d8aa82df965588da0adc636.tar.xz
tutor-module-32f69464f571f7db8d8aa82df965588da0adc636.zip
[client] more ThriftActions
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java100
1 files changed, 49 insertions, 51 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
index 6c16debd..6ec5a554 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java
@@ -29,8 +29,10 @@ import org.openslx.dozmod.gui.window.UserListWindow.UserAddedCallback;
import org.openslx.dozmod.gui.window.layout.LectureDetailsWindowLayout;
import org.openslx.dozmod.permissions.LecturePerms;
import org.openslx.dozmod.thrift.Session;
-import org.openslx.dozmod.thrift.ThriftError;
import org.openslx.dozmod.thrift.ThriftActions;
+import org.openslx.dozmod.thrift.ThriftActions.ImageMetaCallback;
+import org.openslx.dozmod.thrift.ThriftActions.LectureMetaCallback;
+import org.openslx.dozmod.thrift.ThriftError;
import org.openslx.dozmod.thrift.cache.UserCache;
import org.openslx.dozmod.util.FormatHelper;
import org.openslx.thrifthelper.ThriftManager;
@@ -117,37 +119,40 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
* @param lectureId the id of the lecture to be displayed
*/
public void setLecture(final String lectureId) {
- QuickTimer.scheduleOnce(new Task() {
- @Override
- public void fire() {
- TException error = null;
- try {
- synchronized (me) {
- if (lecture != null)
- return;
- lecture = ThriftManager.getSatClient().getLectureDetails(Session.getSatelliteToken(),
- lectureId);
- image = ThriftManager.getSatClient().getImageDetails(Session.getSatelliteToken(),
- lecture.getImageBaseId());
+ synchronized (me) {
+ if (lecture != null)
+ return;
+
+ // teh fugleh
+ final Frame parentFrame = JOptionPane.getFrameForComponent(me);
+ ThriftActions.getLectureDetails(parentFrame, lectureId, new LectureMetaCallback() {
+ @Override
+ public void fetchedLectureDetails(LectureRead lectureDetails) {
+ if (lectureDetails != null) {
+ lecture = lectureDetails;
+ ThriftActions.getImageDetails(parentFrame, lecture.getImageBaseId(), new ImageMetaCallback() {
+ @Override
+ public void fetchedImageDetails(ImageDetailsRead imageDetails) {
+ if (imageDetails != null) {
+ image = imageDetails;
+ if (lecture != null)
+ fill();
+ }
+ }
+ @Override
+ public void fetchedImagePermissions(Map<String, ImagePermissions> permissions) {
+ return;
+ }
+ });
}
- } catch (TException e) {
- error = e;
}
- final TException e = error;
- Gui.asyncExec(new Runnable() {
- @Override
- public void run() {
- if (e != null || lecture == null || image == null) {
- ThriftError.showMessage(btnAutoUpdate, LOGGER, e,
- "Konnte Daten der Vorlesung nicht abrufen");
- dispose();
- } else {
- fill();
- }
- }
- });
- }
- });
+ @Override
+ public void fetchedLecturePermissions(Map<String, LecturePermissions> permissions) {
+ return;
+ }
+ });
+
+ }
}
/**
@@ -209,27 +214,20 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements
}
private void setLectureOwner(final UserInfo user) {
- QuickTimer.scheduleOnce(new Task() {
- @Override
- public void fire() {
- try {
- ThriftManager.getSatClient().setLectureOwner(Session.getSatelliteToken(),
- lecture.getLectureId(), user.getUserId());
- } catch (TException e) {
- ThriftError.showMessage(me, LOGGER, e, "Fehler beim Übertragen der Besitzrechte");
- return;
- }
- Gui.showMessageBox(me, "Besitzrechte übertragen an " + FormatHelper.userName(user),
- MessageType.INFO, null, null);
- makeEditable(false);
- String lectureId = lecture.getLectureId();
- synchronized (me) {
- image = null;
- lecture = null;
- }
- setLecture(lectureId);
- }
- });
+ if (!ThriftActions.setLectureOwner(JOptionPane.getFrameForComponent(this),
+ lecture.getLectureId(), user)) {
+ return;
+ }
+ // success
+ Gui.showMessageBox(me, "Besitzrechte übertragen an " + FormatHelper.userName(user),
+ MessageType.INFO, null, null);
+ makeEditable(false);
+ String lectureId = lecture.getLectureId();
+ synchronized (me) {
+ image = null;
+ lecture = null;
+ }
+ setLecture(lectureId);
}
/**