diff options
Diffstat (limited to 'dozentenmodulserver/src/main/java')
| -rw-r--r-- | dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbImage.java | 53 |
1 files changed, 24 insertions, 29 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbImage.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbImage.java index 9b6b7966..a296ad87 100644 --- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbImage.java +++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbImage.java @@ -43,15 +43,14 @@ public class DbImage { // TODO: Implement tag search functionality try (MysqlConnection connection = Database.getConnection()) { MysqlStatement stmt = connection.prepareStatement("SELECT" - + " i.imagebaseid, i.currentversionid, i.latestversionid, i.displayname," + + " i.imagebaseid, i.latestversionid, i.displayname," + " i.osid, i.virtid, i.createtime, i.updatetime, i.ownerid," + " i.sharemode, i.istemplate, i.canlinkdefault, i.candownloaddefault," + " i.caneditdefault, i.canadmindefault," - + " cur.expiretime, cur.filesize, cur.isenabled, cur.isrestricted, cur.isvalid," + + " lat.expiretime, lat.filesize, lat.isrestricted, lat.isvalid," + " lat.uploaderid, lat.isprocessed," + " perm.canlink, perm.candownload, perm.canedit, perm.canadmin" + " FROM imagebase i" - + " LEFT JOIN imageversion cur ON (cur.imageversionid = i.currentversionid)" + " LEFT JOIN imageversion lat ON (lat.imageversionid = i.latestversionid)" + " LEFT JOIN imagepermission perm ON (i.imagebaseid = perm.imagebaseid AND perm.userid = :userid)" + Paginator.limitStatement(page)); @@ -71,7 +70,7 @@ public class DbImage { public static ImageDetailsRead getImageDetails(UserInfo user, String imageBaseId) throws TNotFoundException, SQLException { try (MysqlConnection connection = Database.getConnection()) { - MysqlStatement stmt = connection.prepareStatement("SELECT i.imagebaseid, i.currentversionid, i.latestversionid," + MysqlStatement stmt = connection.prepareStatement("SELECT i.imagebaseid, i.latestversionid," + " i.displayname, i.description, i.osid, i.virtid, i.createtime, i.updatetime, i.ownerid, i.updaterid," + " i.sharemode, i.istemplate," + " i.canlinkdefault, i.candownloaddefault, i.caneditdefault, i.canadmindefault," @@ -89,11 +88,11 @@ public class DbImage { List<ImageVersionDetails> versions = getImageVersions(connection, imageBaseId); ImagePermissions defaultPermissions = DbImagePermissions.fromResultSetDefault(rs); ImageDetailsRead image = new ImageDetailsRead(rs.getString("imagebaseid"), - rs.getString("currentversionid"), rs.getString("latestversionid"), versions, - rs.getString("displayname"), rs.getString("description"), tags, rs.getInt("osid"), - rs.getString("virtid"), rs.getLong("createtime"), rs.getLong("updatetime"), - rs.getString("ownerid"), rs.getString("updaterid"), - toShareMode(rs.getString("sharemode")), rs.getByte("istemplate") != 0, defaultPermissions); + rs.getString("latestversionid"), versions, rs.getString("displayname"), + rs.getString("description"), tags, rs.getInt("osid"), rs.getString("virtid"), + rs.getLong("createtime"), rs.getLong("updatetime"), rs.getString("ownerid"), + rs.getString("updaterid"), toShareMode(rs.getString("sharemode")), + rs.getByte("istemplate") != 0, defaultPermissions); return image; } catch (SQLException e) { LOGGER.error("Query failed in DbImage.getImageDetails()", e); @@ -112,12 +111,12 @@ public class DbImage { private static ImageSummaryRead resultSetToSummary(ResultSet rs) throws SQLException { ImagePermissions defaultPermissions = DbImagePermissions.fromResultSetDefault(rs); ImageSummaryRead entry = new ImageSummaryRead(rs.getString("imagebaseid"), - rs.getString("currentversionid"), rs.getString("latestversionid"), - rs.getString("displayname"), rs.getInt("osid"), rs.getString("virtid"), - rs.getLong("createtime"), rs.getLong("updatetime"), rs.getLong("expiretime"), - rs.getString("ownerid"), rs.getString("uploaderid"), toShareMode(rs.getString("sharemode")), - rs.getLong("filesize"), rs.getByte("isrestricted") != 0, rs.getByte("isvalid") != 0, - rs.getByte("isprocessed") != 0, rs.getByte("istemplate") != 0, defaultPermissions); + rs.getString("latestversionid"), rs.getString("displayname"), rs.getInt("osid"), + rs.getString("virtid"), rs.getLong("createtime"), rs.getLong("updatetime"), + rs.getLong("expiretime"), rs.getString("ownerid"), rs.getString("uploaderid"), + toShareMode(rs.getString("sharemode")), rs.getLong("filesize"), + rs.getByte("isrestricted") != 0, rs.getByte("isvalid") != 0, rs.getByte("isprocessed") != 0, + rs.getByte("istemplate") != 0, defaultPermissions); entry.userPermissions = DbImagePermissions.fromResultSetUser(rs); return entry; } @@ -144,15 +143,14 @@ public class DbImage { protected static ImageSummaryRead getImageSummary(MysqlConnection connection, UserInfo user, String imageBaseId) throws SQLException, TNotFoundException { MysqlStatement stmt = connection.prepareStatement("SELECT" - + " i.imagebaseid, i.currentversionid, i.latestversionid, i.displayname," + + " i.imagebaseid, i.latestversionid, i.displayname," + " i.osid, i.virtid, i.createtime, i.updatetime, i.ownerid," + " i.sharemode, i.istemplate, i.canlinkdefault, i.candownloaddefault," + " i.caneditdefault, i.canadmindefault," - + " cur.expiretime, cur.filesize, cur.isenabled, cur.isrestricted, cur.isvalid," + + " lat.expiretime, lat.filesize, lat.isrestricted, lat.isvalid," + " lat.uploaderid, lat.isprocessed," + " perm.canlink, perm.candownload, perm.canedit, perm.canadmin" + " FROM imagebase i" - + " LEFT JOIN imageversion cur ON (cur.imageversionid = i.currentversionid)" + " LEFT JOIN imageversion lat ON (lat.imageversionid = i.latestversionid)" + " LEFT JOIN imagepermission perm ON (i.imagebaseid = perm.imagebaseid AND perm.userid = :userid)" + " WHERE i.imagebaseid = :imagebaseid"); @@ -169,7 +167,7 @@ public class DbImage { throws SQLException { List<ImageVersionDetails> versionList = new ArrayList<>(); MysqlStatement stmt = connection.prepareStatement("SELECT" - + " imageversionid, createtime, expiretime, filesize, uploaderid, isenabled," + + " imageversionid, createtime, expiretime, filesize, uploaderid," + " isrestricted, isvalid, isprocessed" + " FROM imageversion" + " WHERE imagebaseid = :imagebaseid"); stmt.setString("imagebaseid", imageBaseId); @@ -178,9 +176,9 @@ public class DbImage { String imageVersionId = rs.getString("imageversionid"); versionList.add(new ImageVersionDetails(imageVersionId, rs.getLong("createtime"), rs.getLong("expiretime"), rs.getLong("filesize"), rs.getString("uploaderid"), - rs.getByte("isenabled") != 0, rs.getByte("isrestricted") != 0, - rs.getByte("isvalid") != 0, rs.getByte("isprocessed") != 0, - DbSoftwareTag.getImageVersionSoftwareList(connection, imageVersionId))); + rs.getByte("isrestricted") != 0, rs.getByte("isvalid") != 0, + rs.getByte("isprocessed") != 0, DbSoftwareTag.getImageVersionSoftwareList(connection, + imageVersionId))); } stmt.close(); return versionList; @@ -323,10 +321,8 @@ public class DbImage { throw new TNotFoundException(); // First update version table MysqlStatement stmtVersion = connection.prepareStatement("UPDATE imageversion v SET" - + " v.isenabled = :isenabled, v.isrestricted = :isrestricted" - + " WHERE v.imageversionid = :versionid"); + + " v.isrestricted = :isrestricted" + " WHERE v.imageversionid = :versionid"); stmtVersion.setString("versionid", imageVersionId); - stmtVersion.setBoolean("isenabled", image.isEnabled); stmtVersion.setBoolean("isrestricted", image.isRestricted); stmtVersion.executeUpdate(); // Then base table @@ -355,7 +351,7 @@ public class DbImage { public static void markForDeletion(String imageVersionId) throws SQLException { try (MysqlConnection connection = Database.getConnection()) { MysqlStatement stmt = connection.prepareStatement("UPDATE imageversion SET" - + " expiretime = UNIX_TIMESTAMP() - 1, isenabled = 0, isvalid = 0" + + " expiretime = UNIX_TIMESTAMP() - 1, isvalid = 0" + " WHERE imageversionid = :versionid"); stmt.setString("versionid", imageVersionId); stmt.executeUpdate(); @@ -387,10 +383,10 @@ public class DbImage { final long nowSecs = System.currentTimeMillis() / 1000; MysqlStatement stmt = connection.prepareStatement("INSERT INTO imageversion" + " (imageversionid, imagebaseid, createtime, expiretime, filesize, filepath, uploaderid," - + " isenabled, isrestricted, isvalid, isprocessed, mastersha1, virtualizerconfig)" + + " isrestricted, isvalid, isprocessed, mastersha1, virtualizerconfig)" + " VALUES " + " (:imageversionid, :imagebaseid, :createtime, :expiretime, :filesize, :filepath," - + " :uploaderid, :isenabled, :isrestricted, :isvalid, :isprocessed, :mastersha1, :virtualizerconfig)"); + + " :uploaderid, :isrestricted, :isvalid, :isprocessed, :mastersha1, :virtualizerconfig)"); stmt.setString("imageversionid", imageVersionId); stmt.setString("imagebaseid", imageBaseId); stmt.setLong("createtime", nowSecs); @@ -398,7 +394,6 @@ public class DbImage { stmt.setLong("filesize", fileSize); stmt.setString("filepath", filePath); stmt.setString("uploaderid", owner.userId); - stmt.setBoolean("isenabled", versionSettings == null ? false : versionSettings.isEnabled); stmt.setBoolean("isrestricted", versionSettings == null ? false : versionSettings.isRestricted); stmt.setBoolean("isvalid", true); // TODO stmt.setBoolean("isprocessed", false); |
