diff options
author | Simon Rettberg | 2018-12-11 10:41:49 +0100 |
---|---|---|
committer | Simon Rettberg | 2018-12-11 10:41:49 +0100 |
commit | 645f99079478eb3a5e7e041a6f5a836e61832ad2 (patch) | |
tree | 8135ff251045cf3ea7aa4763e88f0e992f42b63f /dozentenmodul/src/main/java/org/openslx | |
parent | [server] Add sharename index (diff) | |
download | tutor-module-645f99079478eb3a5e7e041a6f5a836e61832ad2.tar.gz tutor-module-645f99079478eb3a5e7e041a6f5a836e61832ad2.tar.xz tutor-module-645f99079478eb3a5e7e041a6f5a836e61832ad2.zip |
[*] Follow changes in m-s-s to load/save predef netshare/filters
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx')
3 files changed, 11 insertions, 46 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/LdapFilterConfigurator.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/LdapFilterConfigurator.java index 1f359305..6ebd180f 100755 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/LdapFilterConfigurator.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/LdapFilterConfigurator.java @@ -157,36 +157,17 @@ public class LdapFilterConfigurator extends LdapFilterConfiguratorLayout { return ret; } - public boolean setState(List<LdapFilter> data) { + public boolean setState(List<LdapFilter> data, List<Integer> predefSelected) { if (data == null) return false; ArrayList<LdapFilter> filterList = new ArrayList<>(data); + Set<LdapFilter> checked = new HashSet<LdapFilter>(); List<LdapFilter> predef = MetaDataCache.getPredefinedLdapFilters(); - Set<LdapFilter> checked = new HashSet<>(); - for (LdapFilter item : data) { - if (item.filterId == 0) - continue; - // Item has a filterId (is predefined), so validate it's in there - // before marking it checked, or just uncheck it by removing the id - // so it becomes a custom entry. - boolean ok = false; - for (LdapFilter pd : predef) { - if (pd.filterId == item.filterId) { - checked.add(pd); - ok = true; - break; - } - } - // If it wasn't preselected, add to list now... - if (!ok) { - item.filterId = 0; - } - } // Now add remaining filters for (LdapFilter pd : predef) { - if (!checked.contains(pd)) { - filterList.add(pd); - LOGGER.info("Adding " + pd.filterId); + filterList.add(pd); + if (predefSelected != null && predefSelected.contains(pd.filterId)) { + checked.add(pd); } } tblFilters.setData(filterList, checked, false); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/NetshareConfigurator.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/NetshareConfigurator.java index 0fe7052b..ec0c9009 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/NetshareConfigurator.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/configurator/NetshareConfigurator.java @@ -292,32 +292,16 @@ public class NetshareConfigurator extends NetshareConfiguratorLayout { return ret; } - public boolean setState(List<NetShare> data) { + public boolean setState(List<NetShare> data, List<Integer> predefSelected) { if (data == null) return false; List<NetShare> shareList = new ArrayList<>(data); List<NetShare> predef = MetaDataCache.getPredefinedNetshares(); Set<NetShare> checked = new HashSet<>(); - for (NetShare item : data) { - if (item.shareId == 0) - continue; - boolean ok = false; - for (NetShare share : predef) { - if (share.shareId == item.shareId) { - checked.add(share); - ok = true; - break; - } - } - if (!ok) { - item.shareId = 0; - } - } - // Now add remaining filters for (NetShare share : predef) { - if (!checked.contains(share)) { - shareList.add(share); - LOGGER.info("Adding " + share.shareId); + shareList.add(share); + if (predefSelected != null && predefSelected.contains(share.shareId)) { + checked.add(share); } } tblNetshare.setData(shareList, checked, false); diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java index 9fc5dd34..4820ccc6 100644 --- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java +++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/LectureDetailsWindow.java @@ -343,8 +343,8 @@ public class LectureDetailsWindow extends LectureDetailsWindowLayout implements // init advanced info ctlRunscriptConfigurator.setState(lecture.runscript); - ctlNetshareConfigurator.setState(lecture.networkShares); - ctlLdapFilterConfigurator.setState(lecture.ldapFilters); + ctlNetshareConfigurator.setState(lecture.networkShares, lecture.presetNetworkShares); + ctlLdapFilterConfigurator.setState(lecture.ldapFilters, lecture.presetLdapFilters); ctlNetrulesConfigurator.setState(lecture.networkExceptions); txtTitle.setText(lecture.getLectureName()); |