Example #1
0
        protected virtual RolesChange Diff(List <string> newRoles, List <string> oldRoles)
        {
            var result = new RolesChange
            {
                Added   = SubstractSets(newRoles, oldRoles),
                Removed = SubstractSets(oldRoles, newRoles)
            };

            return(result);
        }
Example #2
0
        public virtual void RolesChanged(RolesChange change)
        {
            var repository = VirtualRoleRepository;

            foreach (var role in change.Removed)
            {
                repository.Unregister(role, true);
            }

            foreach (var role in change.Added)
            {
                repository.Register(role, new MappedRole(repository));
            }
        }