diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/api/v1/GeneralInformationChangingService.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/api/v1/GeneralInformationChangingService.java index 14df1693168a0f864a811ed54222b491edd5ac3b..072141ab48ce9ab52a958ea49b5f4a4ccf68432a 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/api/v1/GeneralInformationChangingService.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/server/api/v1/GeneralInformationChangingService.java @@ -112,7 +112,8 @@ public class GeneralInformationChangingService extends public WebAppSettings getWebAppSettings(String sessionToken, String webAppId) { final Session session = getSession(sessionToken); - return session.getPerson().getDisplaySettings().getCustomWebAppSettings(webAppId); + return new WebAppSettings(webAppId, session.getPerson().getDisplaySettings() + .getCustomWebAppSettings(webAppId)); } @Override @@ -123,7 +124,8 @@ public class GeneralInformationChangingService extends { final Session session = getSession(sessionToken); final DisplaySettings displaySettings = session.getPerson().getDisplaySettings(); - displaySettings.setCustomWebAppSettings(webAppSettings); + displaySettings.setCustomWebAppSettings(webAppSettings.getWebAppId(), + webAppSettings.getSettings()); saveDisplaySettings(session.getSessionToken(), null, -1); } diff --git a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DisplaySettings.java b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DisplaySettings.java index d2a036227b9cd8596631df07d1adde1751f4b850..36ae48269442797f727a3d0cb48c133af81ea756 100644 --- a/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DisplaySettings.java +++ b/openbis/source/java/ch/systemsx/cisd/openbis/generic/shared/basic/dto/DisplaySettings.java @@ -22,8 +22,6 @@ import java.util.HashMap; import java.util.List; import java.util.Map; -import ch.systemsx.cisd.openbis.generic.shared.api.v1.dto.WebAppSettings; - /** * Class storing personalized display settings. This class implements {@link Serializable} not only * for transferring it's content remotely but also to store it in the database. Thus, CHANGES IN @@ -313,7 +311,7 @@ public class DisplaySettings implements Serializable * @deprecated Don't use in generic web client - will be overwritten. */ @Deprecated - public synchronized WebAppSettings getCustomWebAppSettings(String webAppId) + public synchronized Map<String, String> getCustomWebAppSettings(String webAppId) { if (customWebAppDisplaySettings == null) { @@ -325,20 +323,20 @@ public class DisplaySettings implements Serializable settings = new HashMap<String, String>(); customWebAppDisplaySettings.put(webAppId, settings); } - return new WebAppSettings(webAppId, settings); + return settings; } /** * @deprecated Don't use in generic web client - will be overwritten. */ @Deprecated - public synchronized void setCustomWebAppSettings(WebAppSettings settings) + public synchronized void setCustomWebAppSettings(String webAppId, Map<String, String> settings) { if (customWebAppDisplaySettings == null) { customWebAppDisplaySettings = new HashMap<String, Map<String, String>>(); } - customWebAppDisplaySettings.put(settings.getWebAppId(), settings.getSettings()); + customWebAppDisplaySettings.put(webAppId, settings); } /**