public List<ChatMessage> GetMessageList(string username, string contact) { DBConnection DBcon = DBConnection.Instance(); using (MySqlConnection con = DBcon.GetConnection()) { using (MySqlCommand cmd = con.CreateCommand()) { cmd.CommandText = "SELECT * FROM messages " + "WHERE ( (recipient=@username AND sender=@contact) OR " + "(recipient=@contact AND sender=@username) )"; cmd.Parameters.AddWithValue("@username", username); cmd.Parameters.AddWithValue("@contact", contact); MySqlDataReader dataReader; try { dataReader = cmd.ExecuteReader(); Debug.WriteLine("--- Server DAO > Messages retrieved from the database"); } catch (Exception exception) { Debug.WriteLine("Error: " + exception.Message); Debug.WriteLine("Stack trace: \n\n" + exception.StackTrace); return null; } List<ChatMessage> messageList = new List<ChatMessage>(); while (dataReader.Read()) { ChatMessage message = new ChatMessage(); message.MessageID = dataReader.GetInt32("messageID"); message.Recipient = dataReader.GetString("recipient"); message.Sender = dataReader.GetString("sender"); message.Content = dataReader.GetString("content"); message.Content = message.Content.Replace(",", "%2C"); message.TimeSent = dataReader.GetDateTime("timeSent"); message.TimeSeen = dataReader.GetDateTime("timeSeen"); messageList.Add(message); } return messageList; } } }
public void SendNewMessage(ChatMessage msg, ChatRoom room) { client.SendNewMessage(msg, room); }