diff options
author | Simon Rettberg | 2015-09-01 16:26:09 +0200 |
---|---|---|
committer | Simon Rettberg | 2015-09-01 16:26:09 +0200 |
commit | 802a564dae4e41d149d307bfd1265d30e02ce792 (patch) | |
tree | 83334c36451ac0e47c8402ba1ae6df89bbb4d843 /dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/thrift/ServerHandler.java | |
parent | [client] ImageDetailsWindow: only show popup menu item if image-version is ac... (diff) | |
download | tutor-module-802a564dae4e41d149d307bfd1265d30e02ce792.tar.gz tutor-module-802a564dae4e41d149d307bfd1265d30e02ce792.tar.xz tutor-module-802a564dae4e41d149d307bfd1265d30e02ce792.zip |
[server] Store block hashes in DB
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.java | 14 |
1 files changed, 12 insertions, 2 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 3b76efcd..94d95042 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 @@ -13,6 +13,7 @@ import org.openslx.bwlp.sat.database.mappers.DbImagePermissions; import org.openslx.bwlp.sat.database.mappers.DbLecture; import org.openslx.bwlp.sat.database.mappers.DbLecturePermissions; import org.openslx.bwlp.sat.database.mappers.DbUser; +import org.openslx.bwlp.sat.database.models.ImageVersionMeta; import org.openslx.bwlp.sat.database.models.LocalUser; import org.openslx.bwlp.sat.fileserv.FileServer; import org.openslx.bwlp.sat.fileserv.IncomingDataTransfer; @@ -133,14 +134,23 @@ public class ServerHandler implements SatelliteServer.Iface { throws TAuthorizationException, TInvocationException, TNotFoundException, TTransferRejectedException { UserInfo user = SessionManager.getOrFail(userToken); - User.canDownloadImageVersionOrFail(user, imageVersionId); + ImageVersionMeta imageVersion; + try { + imageVersion = DbImage.getVersionDetails(imageVersionId); + } catch (SQLException e) { + throw new TInvocationException(); + } + User.canDownloadImageVersionOrFail(user, imageVersion.imageBaseId, imageVersionId); OutgoingDataTransfer transfer; try { transfer = fileServer.createNewUserDownload(DbImage.getLocalImageData(imageVersionId)); } catch (SQLException e) { throw new TInvocationException(); } - return new TransferInformation(transfer.getId(), fileServer.getPlainPort(), fileServer.getSslPort()); + TransferInformation ti = new TransferInformation(transfer.getId(), fileServer.getPlainPort(), fileServer.getSslPort()); + ti.setBlockHashes(imageVersion.sha1sums); + ti.setMachineDescription(imageVersion.machineDescription); + return ti; } @Override |