summaryrefslogtreecommitdiffstats
path: root/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java
diff options
context:
space:
mode:
authorSimon Rettberg2015-06-24 18:31:59 +0200
committerSimon Rettberg2015-06-24 18:31:59 +0200
commit9ff2e9adc74f804023ed751a5afe264b596bf93a (patch)
treebbe395bc463ae0dc562f14b2c6611c726c5fac8d /dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java
parent[server] More methods implemented (diff)
downloadtutor-module-9ff2e9adc74f804023ed751a5afe264b596bf93a.tar.gz
tutor-module-9ff2e9adc74f804023ed751a5afe264b596bf93a.tar.xz
tutor-module-9ff2e9adc74f804023ed751a5afe264b596bf93a.zip
[server] Fnished image-related methods so far, started implementing lecture-related ones....
Diffstat (limited to 'dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java')
-rw-r--r--dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java35
1 files changed, 28 insertions, 7 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java
index d4440793..cab355a7 100644
--- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java
+++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java
@@ -9,6 +9,7 @@ import org.apache.log4j.Logger;
import org.apache.thrift.TException;
import org.openslx.bwlp.sat.database.mappers.DbImage;
import org.openslx.bwlp.sat.database.mappers.DbImagePermissions;
+import org.openslx.bwlp.sat.database.mappers.DbLecture;
import org.openslx.bwlp.sat.database.mappers.DbUser;
import org.openslx.bwlp.sat.fileserv.ActiveUpload;
import org.openslx.bwlp.sat.fileserv.FileServer;
@@ -198,7 +199,11 @@ public class ServerHandler implements SatelliteServer.Iface {
TNotFoundException, TInternalServerError {
UserInfo user = SessionManager.getOrFail(userToken);
User.hasImageVersionPermissionOrFail(user, imageVersionId, Permission.ADMIN);
- // TODO: Permissions cleared; Now mark image for deletion (set expire time in the past...)
+ try {
+ DbImage.markForDeletion(imageVersionId);
+ } catch (SQLException e) {
+ throw new TInternalServerError();
+ }
}
@Override
@@ -207,7 +212,11 @@ public class ServerHandler implements SatelliteServer.Iface {
TInternalServerError {
UserInfo user = SessionManager.getOrFail(userToken);
User.hasImageBasePermissionOrFail(user, imageBaseId, Permission.ADMIN);
- // TODO: Permissions cleared; Now write image permissions
+ try {
+ DbImagePermissions.writeForImageBase(imageBaseId, permissions);
+ } catch (SQLException e) {
+ throw new TInternalServerError();
+ }
}
@Override
@@ -235,15 +244,27 @@ public class ServerHandler implements SatelliteServer.Iface {
}
@Override
- public String createLecture(String userToken, LectureWrite lecture) throws TAuthorizationException {
- // TODO Auto-generated method stub
- return null;
+ public String createLecture(String userToken, LectureWrite lecture) throws TAuthorizationException,
+ TInternalServerError {
+ UserInfo user = SessionManager.getOrFail(userToken);
+ User.canCreateLectureOrFail(user);
+ try {
+ return DbLecture.create(user, lecture);
+ } catch (SQLException e) {
+ throw new TInternalServerError();
+ }
}
@Override
public void updateLecture(String userToken, String lectureId, LectureWrite lecture)
- throws TAuthorizationException, TNotFoundException {
- // TODO Auto-generated method stub
+ throws TAuthorizationException, TNotFoundException, TInternalServerError {
+ UserInfo user = SessionManager.getOrFail(userToken);
+ User.hasLecturePermissionOrFail(user, lectureId, Permission.EDIT);
+ try {
+ DbLecture.update(user, lectureId, lecture);
+ } catch (SQLException e) {
+ throw new TInternalServerError();
+ }
}
@Override