private async Task <ValidationResult> CheckPermissionAsync
            (Actor oldActor, Actor newActor, Actor currentActor)
        {
            var checkModel = new CheckUpdatePermissionModel <Actor>
            {
                Actor = currentActor,
                EntityBeforeUpdate = oldActor,
                EntityAfterUpdate  = newActor
            };
            var validator       = new ActorUpdatePermissionValidator();
            var validatorResult = await validator.ValidateAsync(checkModel)
                                  .ConfigureAwait(false);

            return(validatorResult);
        }
示例#2
0
        private async Task <ValidationResult> CheckPermissionAsync
            (_TEntity oldEntity, _TEntity newEntity, Actor currentActor)
        {
            var checkModel = new CheckUpdatePermissionModel <_TEntity>
            {
                Actor = currentActor,
                EntityBeforeUpdate = oldEntity,
                EntityAfterUpdate  = newEntity
            };
            var validator       = new UpdatePermissionValidator <_TEntity>();
            var validatorResult = await validator.ValidateAsync(checkModel)
                                  .ConfigureAwait(false);

            return(validatorResult);
        }
        private async Task <ValidationResult> CheckPermissionAsync
            (GeoTask oldTask, GeoTask newTask, Actor currentActor,
            ActorRole oldProjectRole, ActorRole newProjectRole)
        {
            var checkModel = new CheckUpdatePermissionModel <GeoTask>
            {
                Actor              = currentActor,
                OldProjectRole     = oldProjectRole,
                NewProjectRole     = newProjectRole,
                EntityBeforeUpdate = oldTask,
                EntityAfterUpdate  = newTask
            };
            var validator       = new GeoTaskUpdatePermissionValidator();
            var validatorResult = await validator
                                  .ValidateAsync(checkModel)
                                  .ConfigureAwait(false);

            return(validatorResult);
        }