Esempio n. 1
0
        public HttpResponseMessage Post([FromBody] Message value,
                                        [ValueProvider(typeof(HeaderValueProviderFactory <String>))] String sessionKey)
        {
            var user = usersRepository.GetBySessionKey(sessionKey);

            if (user == null)
            {
                return(Request.CreateResponse(HttpStatusCode.BadRequest, "Invalid session key"));
            }

            value.Conversation.Messages = new Collection <Message>();
            messagesRepository.Add(value);

            var receiver = (value.Conversation.FirstUser.Username == user.Username)
                               ? value.Conversation.SecondUser
                               : value.Conversation.FirstUser;

            usersRepository.AddMissedConversation(receiver, value.Conversation);
            return(Request.CreateResponse(HttpStatusCode.OK));
        }