diff options
Diffstat (limited to 'dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java')
-rw-r--r-- | dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java | 21 |
1 files changed, 14 insertions, 7 deletions
diff --git a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java index fd2b8c19..faa708ba 100644 --- a/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java +++ b/dozentenmodulserver/src/main/java/org/openslx/bwlp/sat/database/mappers/DbLecture.java @@ -20,6 +20,7 @@ import org.openslx.bwlp.sat.thrift.cache.OperatingSystemList; import org.openslx.bwlp.sat.web.VmChooserEntryXml; import org.openslx.bwlp.sat.web.VmChooserListXml; import org.openslx.bwlp.sat.web.XmlFilterEntry; +import org.openslx.bwlp.thrift.iface.LdapFilter; import org.openslx.bwlp.thrift.iface.LectureRead; import org.openslx.bwlp.thrift.iface.LectureSummary; import org.openslx.bwlp.thrift.iface.LectureWrite; @@ -120,10 +121,10 @@ public class DbLecture { stmt.executeUpdate(); writeLocations(connection, lectureId, lecture.locationIds); if (lecture.isSetNetworkShares()) { - DbLectureNetshare.writeNetworkShares(connection, lectureId, lecture.networkShares); + DbLectureNetshare.writeForLecture(connection, lectureId, lecture.networkShares); } if (lecture.isSetLdapFilters()) { - DbLectureFilter.writeLdapFilters(connection, lectureId, lecture.ldapFilters); + DbLectureFilter.writeForLectureLdap(connection, lectureId, lecture.ldapFilters); } connection.commit(); return lectureId; @@ -147,10 +148,10 @@ public class DbLecture { setWriteFields(stmt, lectureId, lecture, user); writeLocations(connection, lectureId, lecture.locationIds); if (lecture.isSetNetworkShares()) { - DbLectureNetshare.writeNetworkShares(connection, lectureId, lecture.networkShares); + DbLectureNetshare.writeForLecture(connection, lectureId, lecture.networkShares); } if (lecture.isSetLdapFilters()) { - DbLectureFilter.writeLdapFilters(connection, lectureId, lecture.ldapFilters); + DbLectureFilter.writeForLectureLdap(connection, lectureId, lecture.ldapFilters); } if (lecture.isSetPresetScriptIds()) { DbRunScript.writeLectureRunScripts(connection, lectureId, lecture.presetScriptIds); @@ -344,8 +345,14 @@ public class DbLecture { lecture.setUserPermissions(DbLecturePermissions.fromResultSetUser(rs)); User.setCombinedUserPermissions(lecture, user); lecture.setLocationIds(DbLocation.getLectureLocations(connection, lectureId)); - lecture.setNetworkShares(DbLectureNetshare.getLectureNetshares(connection, lectureId)); - lecture.setLdapFilters(DbLectureFilter.getLectureLdapFilters(connection, lectureId)); + lecture.setNetworkShares(new ArrayList<NetShare>()); + lecture.setPresetNetworkShares(new ArrayList<Integer>()); + DbLectureNetshare.getSplitForLecture(connection, lectureId, + lecture.networkShares, lecture.presetNetworkShares); + lecture.setLdapFilters(new ArrayList<LdapFilter>()); + lecture.setPresetLdapFilters(new ArrayList<Integer>()); + DbLectureFilter.getSplitForLectureLdap(connection, lectureId, + lecture.ldapFilters, lecture.presetLdapFilters); return lecture; } catch (SQLException e) { LOGGER.error("Query failed in DbLecture.getLectureDetails()", e); @@ -577,7 +584,7 @@ public class DbLecture { usbAccess = rs.getBoolean("hasusbaccess"); retval.vmx = meta; retval.legacyRunScript = rs.getString("runscript"); - retval.netShares = DbLectureNetshare.getLectureNetshares(connection, lectureId); + retval.netShares = DbLectureNetshare.getCombinedForLecture(connection, lectureId); retval.runScript = DbRunScript.getRunScriptsForLaunch(connection, lectureId, rs.getInt("osid")); // Everything worked so far, update statistics counters MysqlStatement upStmt = connection.prepareStatement("UPDATE" |