code: public void updatePermissions() {
      final String[] accessViewerList =
          this.accessViewer.trim().split(ACCESS_LIST_SPLIT_REGEX);
      final String[] accessExecutorList =
          this.accessExecutor.trim().split(ACCESS_LIST_SPLIT_REGEX);
      final String[] accessOwnerList =
          this.accessOwner.trim().split(ACCESS_LIST_SPLIT_REGEX);
      // Prepare permission types
      final Permission admin = new Permission();
      admin.addPermission(Type.READ);
      admin.addPermission(Type.EXECUTE);
      admin.addPermission(Type.ADMIN);
      final Permission executor = new Permission();
      executor.addPermission(Type.READ);
      executor.addPermission(Type.EXECUTE);
      final Permission viewer = new Permission();
      viewer.addPermission(Type.READ);
      // Sets the permissions
      this.project.clearUserPermission();
      for (String user : accessViewerList) {
        user = user.trim();
        if (!user.isEmpty()) {
          this.project.setUserPermission(user, viewer);
        }
      }
      for (String user : accessExecutorList) {
        user = user.trim();
        if (!user.isEmpty()) {
          this.project.setUserPermission(user, executor);
        }
      }
      for (String user : accessOwnerList) {
        user = user.trim();
        if (!user.isEmpty()) {
          this.project.setUserPermission(user, admin);
        }
      }
      this.project.setUserPermission(this.reportalUser, admin);
    }
docs: Updates the project permissions in MEMORY, but does NOT update the project
  in the database.