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 ) ; }
Updates the project permissions in MEMORY but does NOT update the project in the database .