Example #1
0
        public DataResult <bool> UpdateApiAccessKey(int id, ApiAccessKeyModel apiAccessKeyModel, IEnumerable <ApiAccessPermissionEnumModel> permissions)
        {
            var apiAccessKeyEntity = new ApiAccessKeyEntity
            {
                Name = apiAccessKeyModel.Name,
            };

            var permissionEntities = m_mapper.Map <IList <ApiAccessPermissionEnum> >(permissions);

            try
            {
                m_apiAccessKeyUoW.UpdateApiAccessKey(id, apiAccessKeyEntity, permissionEntities);
                return(Success(true));
            }
            catch (NoResultException <ApiAccessKeyEntity> e)
            {
                m_logger.LogWarning(e);
                return(Error <bool>(m_translator.Translate("invalid-api-access-key-id"), DataResultErrorCode.ApiAccessKeyNotExistId));
            }
            catch (DatabaseException e)
            {
                m_logger.LogWarning(e);
                return(Error <bool>(e.Message));
            }
        }
Example #2
0
        public virtual void UpdateApiAccessKey(int id, ApiAccessKeyEntity apiAccessKey, IEnumerable <ApiAccessPermissionEnum> permissions)
        {
            var apiAccessKeyEntity = m_apiAccessKeyRepository.FindApiAccessKeyById(id);

            if (apiAccessKeyEntity == null)
            {
                throw new NoResultException <ApiAccessKeyEntity>();
            }

            apiAccessKeyEntity.Name = apiAccessKey.Name;
            //For updating hash and hash algorithm use specific method

            var permissionEntities = permissions.Select(x => new ApiAccessKeyPermissionEntity {
                Permission = x, ApiAccessKey = apiAccessKeyEntity
            });

            //Clear list and insert new permissions, do not replace list with new one, otherwise O-R mapping error is thrown
            apiAccessKeyEntity.Permissions.Clear();

            foreach (var x in permissionEntities)
            {
                apiAccessKeyEntity.Permissions.Add(x);
            }

            m_apiAccessKeyRepository.Update(apiAccessKeyEntity);
        }
Example #3
0
        public virtual int CreateApiAccessKey(ApiAccessKeyEntity apiAccessKeyEntity, IEnumerable <ApiAccessPermissionEnum> permissions)
        {
            var permissionEntities = permissions.Select(x => new ApiAccessKeyPermissionEntity {
                Permission = x, ApiAccessKey = apiAccessKeyEntity
            });

            apiAccessKeyEntity.Permissions = permissionEntities.ToList();

            var result = (int)m_apiAccessKeyRepository.Create(apiAccessKeyEntity);

            return(result);
        }
Example #4
0
        public virtual void UpdateApiAccessKeyHash(int id, ApiAccessKeyEntity apiAccessKey)
        {
            var apiAccessKeyEntity = m_apiAccessKeyRepository.FindApiAccessKeyById(id);

            if (apiAccessKeyEntity == null)
            {
                throw new NoResultException <ApiAccessKeyEntity>();
            }

            apiAccessKeyEntity.HashAlgorithm = apiAccessKey.HashAlgorithm;
            apiAccessKeyEntity.ApiKeyHash    = apiAccessKey.ApiKeyHash;

            m_apiAccessKeyRepository.Update(apiAccessKeyEntity);
        }
Example #5
0
        public DataResult <int> CreateApiAccessKey(ApiAccessKeyModel apiAccessKeyModel, IEnumerable <ApiAccessPermissionEnumModel> permissions)
        {
            var apiAccessKeyEntity = new ApiAccessKeyEntity
            {
                Name          = apiAccessKeyModel.Name,
                HashAlgorithm = apiAccessKeyModel.HashAlgorithm,
                ApiKeyHash    = apiAccessKeyModel.ApiKeyHash,
            };

            var permissionEntities = m_mapper.Map <IList <ApiAccessPermissionEnum> >(permissions);

            try
            {
                var result = m_apiAccessKeyUoW.CreateApiAccessKey(apiAccessKeyEntity, permissionEntities);
                return(Success(result));
            }
            catch (DatabaseException e)
            {
                m_logger.LogWarning(e);
                return(Error <int>(e.Message));
            }
        }
Example #6
0
        public DataResult <bool> UpdateApiAccessKeyHash(int id, string hash, string algorithm)
        {
            var apiAccessKeyEntity = new ApiAccessKeyEntity
            {
                ApiKeyHash    = hash,
                HashAlgorithm = algorithm,
            };

            try
            {
                m_apiAccessKeyUoW.UpdateApiAccessKeyHash(id, apiAccessKeyEntity);
                return(Success(true));
            }
            catch (NoResultException <ApiAccessKeyEntity> e)
            {
                m_logger.LogWarning(e);
                return(Error <bool>(m_translator.Translate("invalid-api-access-key-id"), DataResultErrorCode.ApiAccessKeyNotExistId));
            }
            catch (DatabaseException e)
            {
                m_logger.LogWarning(e);
                return(Error <bool>(e.Message));
            }
        }