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;
         }
     }
 }
Exemple #2
0
 public void SendNewMessage(ChatMessage msg, ChatRoom room)
 {
     client.SendNewMessage(msg, room);
 }