From d74ef999b8e3941a5405910f36af5cb5bf09d16e Mon Sep 17 00:00:00 2001 From: tekay <tom.kaesler@mni.thm.de> Date: Tue, 17 May 2016 14:48:19 +0200 Subject: [PATCH] refac publicpoolsettings --- .../transport/ImportExportSession.java | 46 +++++++++++-------- .../thm/arsnova/services/SessionService.java | 2 +- 2 files changed, 27 insertions(+), 21 deletions(-) diff --git a/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java b/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java index cbe769bd..b6c22898 100644 --- a/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java +++ b/src/main/java/de/thm/arsnova/entities/transport/ImportExportSession.java @@ -129,27 +129,22 @@ public class ImportExportSession { final Session s = new Session(); // import fields s.setActive(session.isActive()); - s.setName(session.getName()); - s.setShortName(session.getShortName()); + // overwrite name and shortname + s.setName(session.getPublicPool().getName()); + s.setShortName(session.getPublicPool().getShortName()); + // mark as public pool session + s.setSessionType(session.getSessionType()); s.setFeatures(session.getSessionFeature()); - // public pool - if (session.getPublicPool() != null) { - // overwrite name and shortname - s.setName(session.getPublicPool().getName()); - s.setShortName(session.getPublicPool().getShortName()); - // set pool fields - s.setPpAuthorMail(session.getPublicPool().getPpAuthorMail()); - s.setPpAuthorName(session.getPublicPool().getPpAuthorName()); - s.setPpDescription(session.getPublicPool().getPpDescription()); - s.setPpFaculty(session.getPublicPool().getPpFaculty()); - s.setPpLevel(session.getPublicPool().getPpLevel()); - s.setPpLicense(session.getPublicPool().getPpLicense()); - s.setPpLogo(session.getPublicPool().getPpLogo()); - s.setPpSubject(session.getPublicPool().getPpSubject()); - s.setPpUniversity(session.getPublicPool().getPpUniversity()); - // mark as public pool session - s.setSessionType("public_pool"); - } + // set pool fields (which are also used as a session info) + s.setPpAuthorMail(session.getPublicPool().getPpAuthorMail()); + s.setPpAuthorName(session.getPublicPool().getPpAuthorName()); + s.setPpDescription(session.getPublicPool().getPpDescription()); + s.setPpFaculty(session.getPublicPool().getPpFaculty()); + s.setPpLevel(session.getPublicPool().getPpLevel()); + s.setPpLicense(session.getPublicPool().getPpLicense()); + s.setPpLogo(session.getPublicPool().getPpLogo()); + s.setPpSubject(session.getPublicPool().getPpSubject()); + s.setPpUniversity(session.getPublicPool().getPpUniversity()); // other fields s.setType("session"); s.setCreator(user.getUsername()); @@ -232,6 +227,8 @@ public class ImportExportSession { private String shortName; + private String sessionType; + private boolean active; private PublicPool publicPool; @@ -247,6 +244,15 @@ public class ImportExportSession { this.name = name; } + @ApiModelProperty(required = false, value = "used to identify public pool sessions") + public String getSessionType() { + return sessionType; + } + + public void setSessionType(String sessionType) { + this.sessionType = sessionType; + } + @ApiModelProperty(required = true, value = "used to display short name") public String getShortName() { return shortName; diff --git a/src/main/java/de/thm/arsnova/services/SessionService.java b/src/main/java/de/thm/arsnova/services/SessionService.java index 4e31e995..5c6a4026 100644 --- a/src/main/java/de/thm/arsnova/services/SessionService.java +++ b/src/main/java/de/thm/arsnova/services/SessionService.java @@ -414,7 +414,7 @@ public class SessionService implements ISessionService, ApplicationEventPublishe @PreAuthorize("isAuthenticated() and hasPermission(#sessionkey, 'session', 'owner')") public SessionInfo copySessionToPublicPool(String sessionkey, de.thm.arsnova.entities.transport.ImportExportSession.PublicPool pp) { ImportExportSession temp = databaseDao.exportSession(sessionkey, false, false); - temp.getSession().setPublicPool(pp); + temp.getSession().setSessionType("public_pool"); final User user = userService.getCurrentUser(); return databaseDao.importSession(user, temp); } -- GitLab