import org.springframework.security.core.GrantedAuthority;
import eu.etaxonomy.cdm.model.common.CdmBase;
-import eu.etaxonomy.cdm.model.common.Group;
-import eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider;
-import eu.etaxonomy.taxeditor.store.StoreUtil;
import eu.etaxonomy.cdm.model.common.GrantedAuthorityImpl;
+import eu.etaxonomy.cdm.model.common.Group;
import eu.etaxonomy.cdm.persistence.hibernate.permission.CRUD;
import eu.etaxonomy.cdm.persistence.hibernate.permission.CdmAuthority;
+import eu.etaxonomy.taxeditor.model.IDirtyMarkableSelectionProvider;
+import eu.etaxonomy.taxeditor.store.StoreUtil;
* @param grantedAuthorityI to update.
* @param cdmAuthority to use in updating the granted authority object.
*/
- public void updateGrantedAuthority(GrantedAuthorityImpl grantedAuthorityI, CdmAuthority cdmAuthority) {
+ public GrantedAuthorityImpl updateGrantedAuthority(GrantedAuthorityImpl grantedAuthorityI, CdmAuthority cdmAuthority) {
if(grantedAuthorityI.getAuthority().equals(cdmAuthority.getAuthority())) {
} else {
// we can't really 'update' the granted authority.
// so we first add the new authority (hope no exception) is thrown
// and then remove the old one.
- group.addGrantedAuthority(cdmAuthority.asNewGrantedAuthority());
+ GrantedAuthorityImpl gai = cdmAuthority.asNewGrantedAuthority();
+ group.addGrantedAuthority(gai);
group.removeGrantedAuthority(grantedAuthorityI);
- dirtyMarkerEditor.changed(grantedAuthorityI);
+ dirtyMarkerEditor.changed(grantedAuthorityI);
+ return gai;
} catch(Exception e) {
// Not a CDM Authority
//e.printStackTrace();
}
- }
+ }
+ return grantedAuthorityI;
}
/**