public ServiceResponse <List <T> > List(int page, int pageSize)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <List <T> >();
            var result = _repository.List(page, pageSize);

            return(serviceResponseBuilder.Ok(result));
        }
Esempio n. 2
0
        /// <summary>
        /// Used to build an HttpResponseMessage, given a generic IEnumberable and Request.
        /// </summary>
        /// <param name="enumerable">A generic IEnumerable</param>
        /// <param name="httpRequestMessage">A controller's HttpRequestMessage</param>
        /// <typeparam name="T"></typeparam>
        /// <returns></returns>
        public HttpResponseMessage GetResponse <T>(IEnumerable <T> enumerable, HttpRequestMessage httpRequestMessage)
        {
            ServiceResponseListModel <T> result;

            try
            {
                result = new ServiceResponseBuilder <ServiceResponseListModel <T> >().
                         WithApiVersion(1.0).
                         WithStatus(RestStatusFactory.Create(HttpStatusCode.OK, "OK")).
                         WithPages(null).
                         Build();

                result.Data = enumerable;
            }
            catch (Exception ex)
            {
                result = new ServiceResponseBuilder <ServiceResponseListModel <T> >().
                         WithApiVersion(1.0).
                         WithStatus(RestStatusFactory.Create(HttpStatusCode.OK, ex.Message)).
                         WithPages(null).
                         Build();

                return(httpRequestMessage.CreateResponse(HttpStatusCode.InternalServerError, result));
            }

            return(httpRequestMessage.CreateResponse(HttpStatusCode.OK, result));
        }
        public void NotOkShouldReturnNotSucceedAndSingleErrorWhenHasValidationError()
        {
            // Given
            var builder = new ServiceResponseBuilder <int>();

            // When
            var response = builder.NotOk(new ValidationFailure("", ""));

            // Then
            Assert.False(response.IsSuccessed);
            Assert.AreEqual(1, response.Errors.Count);
        }
        public void OkShouldReturnSucceedAndData()
        {
            // Given
            var builder = new ServiceResponseBuilder <int>();

            // When
            var response = builder.Ok(3);

            // Then
            Assert.True(response.IsSuccessed);
            Assert.AreEqual(3, response.Data);
        }
Esempio n. 5
0
        public ServiceResponse <UserEntity> GetByUserName(string username)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <UserEntity>();
            var obj = _repository.GetByUserName(username);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "100002", Message = "Username is not valid.", InnerMessage = "Username is not valid."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
Esempio n. 6
0
        public ServiceResponse <UserEntity> GetValidUser(string username, string password)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <UserEntity>();
            var obj = _repository.GetValidUser(username, password);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "100001", Message = "User credential is not valid.", InnerMessage = "User credential is not valid."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
Esempio n. 7
0
        public ServiceResponse <List <MailEntity> > ListUnreadMails(int toUserId)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <List <MailEntity> >();
            var obj = _repository.ListUnreadMails(toUserId);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "200002", Message = "Unread mails can not list.", InnerMessage = "Unread mails can not list."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
Esempio n. 8
0
        public ServiceResponse <List <MailEntity> > ListForUser(int page, int pageSize, int toUserId)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <List <MailEntity> >();
            var obj = _repository.ListForUser(page, pageSize, toUserId);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "200001", Message = "Received mails can not list.", InnerMessage = "Received mails can not list."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
Esempio n. 9
0
        public ServiceResponse <List <TransactionEntity> > ListForUser(int userId)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <List <TransactionEntity> >();
            var obj = _repository.ListForUser(userId);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "200001", Message = "Credit cards can not be listed.", InnerMessage = "Credit cards can not be listed. Database connection problem has occured."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
Esempio n. 10
0
        public ServiceResponse <CreditCardEntity> GetByToken(string token)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <CreditCardEntity>();
            var obj = _repository.GetByToken(token);

            if (obj == null)
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "200001", Message = "Credit cards can not be listed.", InnerMessage = "Credit cards can not be listed. Database connection problem has occured."
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
        public ServiceResponse <bool> Delete(int id)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <bool>();
            var result = _repository.Delete(id);

            if (!result)
            {
                _logger.Error("{source} {template} {logtype} {ExceptionMessage}", "service", typeof(T).Name, "serviceerror", $"{typeof(T)} with id {id} not deleted.");
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "", Message = "", InnerMessage = ""
                }));
            }
            return(serviceResponseBuilder.Ok(true));
        }
        public ServiceResponse <T> Read(Guid guid)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <T>();
            var obj = _repository.Read(guid);

            if (obj == null)
            {
                _logger.Error("{source} {template} {logtype} {ExceptionMessage}", "service", typeof(T).Name, "serviceerror", $"{typeof(T)} with guid {guid} not found.");
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "", Message = "", InnerMessage = ""
                }));
            }
            return(serviceResponseBuilder.Ok(obj));
        }
        public void NotOkShouldReturnNotSucceedAndMultipleErrorsWhenHasMultipleValidationErrors()
        {
            // Given
            var builder = new ServiceResponseBuilder <int>();

            // When
            var errors = new List <ValidationFailure>();

            errors.Add(new ValidationFailure("", ""));
            errors.Add(new ValidationFailure("", ""));
            var response = builder.NotOk(errors);

            // Then
            Assert.False(response.IsSuccessed);
            Assert.AreEqual(2, response.Errors.Count);
        }
        public ServiceResponse <T> Create(T obj)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <T>();
            var returnId = _repository.Create(obj);

            if (returnId > 0)
            {
                return(this.Read(returnId));
            }
            else
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "", Message = "", InnerMessage = ""
                }));
            }
        }
        public ServiceResponse <T> Update(T obj)
        {
            var serviceResponseBuilder = new ServiceResponseBuilder <T>();
            var result = _repository.Update(obj);

            if (result)
            {
                ServiceResponse <T> readObj = this.Read(obj.ID);
                if (obj.ID == 0)
                {
                    readObj = this.Read(new Guid(obj.Guid));
                }
                return(readObj);
            }
            else
            {
                return(serviceResponseBuilder.NotOk(new ServiceError()
                {
                    Code = "", Message = "", InnerMessage = ""
                }));
            }
        }