summaryrefslogtreecommitdiffstats
path: root/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java
diff options
context:
space:
mode:
Diffstat (limited to 'dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java')
-rw-r--r--dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java34
1 files changed, 11 insertions, 23 deletions
diff --git a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java
index 0029f250..551393ec 100644
--- a/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java
+++ b/dozentenmodul/src/main/java/org/openslx/dozmod/gui/window/ImageCustomPermissionWindow.java
@@ -8,6 +8,7 @@ import java.util.Map;
import org.apache.log4j.Logger;
import org.openslx.bwlp.thrift.iface.ImagePermissions;
import org.openslx.dozmod.gui.window.layout.ImageCustomPermissionWindowLayout;
+import org.openslx.dozmod.permissions.PermissionDefaultToCustomLink;
/**
* Window for modifying the custom permissions of an image.
@@ -17,14 +18,11 @@ public class ImageCustomPermissionWindow extends ImageCustomPermissionWindowLayo
private static final Logger LOGGER = Logger.getLogger(ImageCustomPermissionWindow.class);
- private ImagePermissions defaultPermissions;
-
private boolean okUsed = false;
protected ImageCustomPermissionWindow(final Frame modalParent, final Map<String, ImagePermissions> permissionMap, final ImagePermissions defaultPermissions) {
super(modalParent);
imagePermissionManager.initPanel(permissionMap, defaultPermissions);
- this.defaultPermissions = defaultPermissions;
btnOk.addActionListener(new ActionListener() {
@Override
@@ -50,11 +48,16 @@ public class ImageCustomPermissionWindow extends ImageCustomPermissionWindowLayo
/**
* Set a created ImageCustomPermissionWindow visible and return resulting permissions
- * @return PermissionLink with default- and customPermissions
+ * @return PermissionLink with default- and customPermissions when using OK button, null otherwise
*/
- private PermissionLink runAndReturn(){
+ private PermissionDefaultToCustomLink<ImagePermissions> runAndReturn(){
setVisible(true);
- return new PermissionLink(imagePermissionManager.getMap(), new ImagePermissions(chkCustomPermLink.isSelected(), chkCustomPermDownload.isSelected(), chkCustomPermEdit.isSelected(), chkCustomPermAdmin.isSelected()), okUsed);
+ if (okUsed){
+ return new PermissionDefaultToCustomLink<ImagePermissions>(imagePermissionManager.getMap(), new ImagePermissions(chkCustomPermLink.isSelected(), chkCustomPermDownload.isSelected(), chkCustomPermEdit.isSelected(), chkCustomPermAdmin.isSelected()));
+ } else {
+ return null;
+ }
+
}
/**
@@ -62,28 +65,13 @@ public class ImageCustomPermissionWindow extends ImageCustomPermissionWindowLayo
* @param modalParent
* @param permissionMap The current user permissions with which the permission manager to initialise, null creates empty list.
* @param defaultPermissions The current default permissions, should not be null!
- * @return PermissionLink with resulting permissions
+ * @return PermissionLink with resulting permissions or null, if abort has been used to exit the dialog
*/
- public static PermissionLink open(Frame modalParent, Map<String, ImagePermissions> permissionMap, ImagePermissions defaultPermissions) {
+ public static PermissionDefaultToCustomLink<ImagePermissions> open(Frame modalParent, Map<String, ImagePermissions> permissionMap, ImagePermissions defaultPermissions) {
return new ImageCustomPermissionWindow(modalParent, permissionMap, defaultPermissions).runAndReturn();
}
- /**
- * Helper class for returning the default- and custom permissions of an image.
- */
- public static class PermissionLink{
- public final Map<String, ImagePermissions> customPermissions;
- public final ImagePermissions defaultPermissions;
- public final boolean okUsed;
-
- public PermissionLink(Map<String, ImagePermissions> customPermissions, ImagePermissions defaultPermissions, boolean okUsed){
- this.customPermissions = customPermissions;
- this.defaultPermissions = defaultPermissions;
- this.okUsed = okUsed;
- }
- }
-
}