예제 #1
0
        public ICollection <UserMessageReceipt> Get(HttpRequestMessage request)
        {
            long accountId;

            if (!_authenticationManager.TryAuthenticateForWriteOperation(request.GetToken(), out accountId))
            {
                throw new HttpResponseException(new HttpResponseMessage(HttpStatusCode.Forbidden));
            }

            IList <UserMessage> messages = _userMessageRepository.GetAllPendingMessagesForAccount(accountId);

            foreach (var message in messages)
            {
                message.HasBeenReceived = true;
                _userMessageRepository.Add(message);
            }

            return(messages.Select(message => message.Convert()).ToArray());
        }