Package org.damour.base.client.objects

Examples of org.damour.base.client.objects.Permission


        dialog.setContent(addPermissionPanel);
        dialog.setCallback(new IDialogCallback() {
          public void okPressed() {
            for (int i = 0; i < addPrincipalListBox.getItemCount(); i++) {
              if (addPrincipalListBox.isItemSelected(i)) {
                Permission newPerm = new Permission();
                newPerm.setPermissibleObject(permissibleObject);
                SecurityPrincipal principal = fetchedUsers.get(addPrincipalListBox.getItemText(i));
                if (principal == null) {
                  principal = fetchedGroups.get(addPrincipalListBox.getItemText(i));
                }
                newPerm.setSecurityPrincipal(principal);
                permissions.add(newPerm);
                dirty = true;
                populateUI();
                if (principalListBox.getItemCount() > 0) {
                  principalListBox.setSelectedIndex(principalListBox.getItemCount() - 1);
                }
                populatePermissionPanel();
              }
            }
          }

          public void cancelPressed() {
          }
        });
        dialog.center();
      }
    });

    Button removeButton = new Button("Remove...");
    removeButton.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        String principalName = principalListBox.getValue(principalListBox.getSelectedIndex());
        Permission permission = null;
        for (Permission mypermission : permissions) {
          if (showUserPerms && mypermission.getSecurityPrincipal() instanceof User) {
            User user = (User) mypermission.getSecurityPrincipal();
            if (principalName.equalsIgnoreCase(user.getUsername())) {
              permission = mypermission;
              break;
            }
          } else if (showGroupPerms && mypermission.getSecurityPrincipal() instanceof UserGroup) {
            UserGroup group = (UserGroup) mypermission.getSecurityPrincipal();
            if (principalName.equalsIgnoreCase(group.getName())) {
              permission = mypermission;
              break;
            }
          }
        }
        permissions.remove(permission);
        dirty = true;
        populateUI();
        if (principalListBox.getItemCount() > 0) {
          principalListBox.setSelectedIndex(principalListBox.getItemCount() - 1);
        }
        populatePermissionPanel();
      }
    });

    Button newButton = new Button("New...");
    newButton.setCommand(new CreateGroupCommand(AuthenticationHandler.getInstance().getUser(), new IGenericCallback<UserGroup>() {
      public void invoke(UserGroup group) {
        dirty = true;
        Permission newPerm = new Permission();
        newPerm.setPermissibleObject(permissibleObject);
        newPerm.setSecurityPrincipal(group);
        permissions.add(newPerm);
        fetchedGroups.put(group.getName(), group);
        populateUI();
        if (principalListBox.getItemCount() > 0) {
          principalListBox.setSelectedIndex(principalListBox.getItemCount() - 1);
View Full Code Here


    if (principalListBox.getSelectedIndex() < 0) {
      return;
    }

    String principalName = principalListBox.getValue(principalListBox.getSelectedIndex());
    Permission tmppermission = null;
    for (Permission mypermission : permissions) {
      if (showUserPerms && mypermission.getSecurityPrincipal() instanceof User) {
        User user = (User) mypermission.getSecurityPrincipal();
        if (principalName.equalsIgnoreCase(user.getUsername())) {
          tmppermission = mypermission;
          break;
        }
      } else if (showGroupPerms && mypermission.getSecurityPrincipal() instanceof UserGroup) {
        UserGroup group = (UserGroup) mypermission.getSecurityPrincipal();
        if (principalName.equalsIgnoreCase(group.getName())) {
          tmppermission = mypermission;
          break;
        }
      }
    }
    final Permission permission = tmppermission;

    final CheckBox readPermCheckBox = new CheckBox("Read");
    final CheckBox writePermCheckBox = new CheckBox("Write");
    final CheckBox executePermCheckBox = new CheckBox("Execute");
    final CheckBox createChildrenPermCheckBox = new CheckBox("Create Children");
    readPermCheckBox.setValue(permission.isReadPerm());
    writePermCheckBox.setValue(permission.isWritePerm());
    executePermCheckBox.setValue(permission.isExecutePerm());
    createChildrenPermCheckBox.setValue(permission.isCreateChildPerm());

    readPermCheckBox.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        permission.setReadPerm(readPermCheckBox.getValue());
        dirty = true;
      }
    });
    writePermCheckBox.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        permission.setWritePerm(writePermCheckBox.getValue());
        dirty = true;
      }
    });
    executePermCheckBox.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        permission.setExecutePerm(executePermCheckBox.getValue());
        dirty = true;
      }
    });
    createChildrenPermCheckBox.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        permission.setCreateChildPerm(createChildrenPermCheckBox.getValue());
        dirty = true;
      }
    });
    CaptionPanel captionPanel = new CaptionPanel("Permissions");
    VerticalPanel checkboxPanel = new VerticalPanel();
View Full Code Here

              childObj.setGlobalWrite(permissibleObject.isGlobalWrite());
              childObj.setGlobalExecute(permissibleObject.isGlobalExecute());
              childObj.setGlobalCreateChild(permissibleObject.isGlobalCreateChild());
              SecurityHelper.deletePermissions(session.get(), childObj);
              for (Permission permission : permissions) {
                Permission newPerm = new Permission();
                newPerm.setPermissibleObject(childObj);
                newPerm.setSecurityPrincipal(permission.getSecurityPrincipal());
                newPerm.setReadPerm(permission.isReadPerm());
                newPerm.setWritePerm(permission.isWritePerm());
                newPerm.setExecutePerm(permission.isExecutePerm());
                newPerm.setCreateChildPerm(permission.isCreateChildPerm());
                session.get().save(newPerm);
              }
            }
          }
        } catch (Exception e) {
View Full Code Here

      File file = new File();
      file.setName("HAS PERM " + j);
      file.setOwner(user);
      session.save(file);

      Permission perm = new Permission();
      perm.readPerm = true;
      perm.setSecurityPrincipal(user2);
      perm.setPermissibleObject(file);
      session.save(perm);
    }

    for (int j = 0; j < 1; j++) {
      PermissibleObject folder = new PermissibleObject();
      folder.setName("HAS PERM " + j);
      folder.setOwner(user);
      session.save(folder);

      Permission perm = new Permission();
      perm.readPerm = true;
      perm.setSecurityPrincipal(user2);
      perm.setPermissibleObject(folder);
      session.save(perm);
    }

    for (int j = 0; j < 1; j++) {
      PermissibleObject folder = new PermissibleObject();
      folder.setName("user owns, but does not have perm");
      folder.setOwner(user2);
      session.save(folder);

      Permission perm = new Permission();
      perm.setReadPerm(true);
      perm.setSecurityPrincipal(user);
      perm.setPermissibleObject(folder);
      session.save(perm);
    }   

    UserGroup group = new UserGroup();
    group.setName("blah");
    session.save(group);
    GroupMembership membership = new GroupMembership();
    membership.setUser(user2);
    membership.setUserGroup(group);
    session.save(membership);
   
    File groupPermFile = new File();
    groupPermFile.setName("not owner:  group perm file");
    groupPermFile.setOwner(user);
    session.save(groupPermFile);

    Permission perm = new Permission();
    perm.setReadPerm(true);
    perm.setSecurityPrincipal(group);
    perm.setPermissibleObject(groupPermFile);
    session.save(perm);
   
    tx.commit();
    session.close();
View Full Code Here

TOP

Related Classes of org.damour.base.client.objects.Permission

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.