public void Delete(Invitation invitation)
        {
            Log("Begin deleting Invitation User to Meeting in database.", invitation);

            DatabaseConnector.PushCommandToDatabase
                (sqlConnection, CommandList.Build_DeleteInvitationUserToMeetingCommand(invitation));

            Log("End deleting Invitation User to Meeting in database.", invitation);
        }
        public bool IsExist(Invitation invitation)
        {
            Log("Begin receiving Invitation User to Meeting in database.", invitation);

            Invitation resultInvitation =  DatabaseConnector.GetDataFromDatabase<Invitation>
                (sqlConnection, CommandList.Build_GetInvitationUserToMeetingCommand(invitation), new InvitationBuilder());

            Log("End receiving Invitation User to Meeting in database.", invitation);

            return resultInvitation != null;
        }
 void Log(String logMessage, Invitation invitation)
 {
     if (invitation != null)
     {
         _logger.Debug("{0} MeetingID = {1}, UserID = {2}.",
             logMessage, invitation.MeetingID, invitation.UserID);
     }
     else
     {
         _logger.Debug("{0} Invitation is null.", logMessage);
     }
 }
        public IHttpActionResult Create(Invitation invitation)
        {
            Guid requestId = Guid.NewGuid();

            Log("Received create invitation user to meeting POST HTTP-request. Meeting ID = " +
                invitation.MeetingID + ". User ID = " + invitation.UserID, requestId);

            User user = _userRepository.GetUser(invitation.UserID);
            Meeting meeting = _meetRepository.GetMeeting(invitation.MeetingID);

            if (user == null)
            {
                Log("Send NotFoundWithMessageResult(404) response to create invitation user to meeting POST HTTP-request." +
                    "Message: User not found.", requestId);
                return new NotFoundWithMessageResult("User not found.");
            }

            if (meeting == null)
            {
                Log("Send NotFoundWithMessageResult(404) response to create invitation user to meeting POST HTTP-request." +
                    "Message: Meeting not found.", requestId);
                return new NotFoundWithMessageResult("Meeting not found.");
            }

            if (meeting.InvitedPeople.ContainsKey(invitation.UserID))
            {
                Log("Send ErrorMessageResult(400) response to create invitation user to meeting POST HTTP-request. " +
                    "Message: User already invited.", requestId);
                return BadRequest("User already invited.");
            }

            _invitationRepository.Create(invitation);

            Log("Send OkResult(200) response to create invitation user to meeting POST HTTP-request.", requestId);

            return Ok();
        }
        public IHttpActionResult Delete(Guid MeetingID, Guid UserID)
        {
            Guid requestId = Guid.NewGuid();
            Invitation invitation = new Invitation();
            invitation.MeetingID = MeetingID;
            invitation.UserID = UserID;

            Log("Received delete invitation DELETE HTTP-request. Meeting ID = " +
                invitation.MeetingID + ". User ID = " + invitation.UserID, requestId);

            if (_invitationRepository.IsExist(invitation))
            {
                _invitationRepository.Delete(invitation);
                Log("Send OkREsult(200) response to delete invitation DELETE HTTP-request.", requestId);
                return Ok();
            }

            Log("Send NotFoundWithMessageResult(404) response to delete invitation DELETE HTTP-request." +
                "Message: Invitation not found.", requestId);
            return new NotFoundWithMessageResult("Invitation not found.");
        }
 void Log(String logMessage, Invitation invitation, Guid requestId)
 {
     if (invitation != null)
     {
         _logger.Info("{3} {0} Attached invitation object: " +
             "MeetingID = {1}, UserID = {2}.",
             logMessage, invitation.MeetingID, invitation.UserID, requestId);
     }
     else
     {
         _logger.Info("{1} Received {0} request. Attached invitation object is null.",
             logMessage, requestId);
     }
 }
        public IHttpActionResult Get(Guid MeetingID, Guid UserID)
        {
            Guid requestId = Guid.NewGuid();
            Invitation invitation = new Invitation();
            invitation.MeetingID = MeetingID;
            invitation.UserID = UserID;

            Log("Received get invitation GET HTTP-request. Meeting ID = " +
                invitation.MeetingID + ". User ID = " + invitation.UserID, requestId);

            if (_invitationRepository.IsExist(invitation))
            {
                Log("Send OkREsult(200) response to get invitation GET HTTP-request.", requestId);
                return Ok();
            }

            Log("Send NotFound(200) response to get invitation user to meeting GET HTTP-request.", requestId);
            return new NotFoundWithMessageResult("Invitation not found.");
        }
 public Task<HttpResponseMessage> CreateInvitation(Invitation invitation)
 {
     return _crudHandler.Create("Invitation", invitation);
 }
 public Task<HttpResponseMessage> CheckInvitation(Invitation invitation)
 {
     return _crudHandler.Get("Invitation", invitation.MeetingID.ToString(), invitation.UserID.ToString());
 }
 public Task<HttpResponseMessage> CancelInvitation(Invitation invitation)
 {
     return _crudHandler.Delete("Invitation", invitation.MeetingID.ToString(), invitation.UserID.ToString());
 }
Example #11
0
        public static SqlCommand Build_DeleteInvitationUserToMeetingCommand(Invitation invitation)
        {
            SqlCommand command = new SqlCommand();

            Log("delete invitation user to meeting");

            command.CommandText = "delete from [dbo].[Invitations] where MeetingID = @MeetingID and UserID = @UserID";
            command.Parameters.AddWithValue("@MeetingID", invitation.MeetingID);
            command.Parameters.AddWithValue("@UserID", invitation.UserID);

            Log("delete invitation user to meeting", command);

            return command;
        }
Example #12
0
        public static SqlCommand Build_InviteUserToMeetingCommand(Invitation invitation)
        {
            SqlCommand command = new SqlCommand();

            Log("invite user to meeting");

            command.CommandText = "insert into [dbo].[Invitations] (MeetingID, UserID) values (@MeetingID, @UserID)";
            command.Parameters.AddWithValue("@MeetingID", invitation.MeetingID);
            command.Parameters.AddWithValue("@UserID", invitation.UserID);

            Log("invite user to meeting", command);

            return command;
        }