public MessageData ConvertToClass(byte[] bReceived) { MessageData dataResult = new MessageData(); byte[] bSender_id = new byte[4]; byte[] bReceiver_id = new byte[4]; byte[] bTime = new byte[4]; byte[] bMessage = new byte[1440]; int i = 0; for (i = 0; i < 4; i++) bSender_id[i] = bReceived[i + 2]; for (i = 0; i < 4; i++) bReceiver_id[i] = bReceived[i + 6]; for (i = 0; i < 4; i++) bTime[i] = bReceived[i + 10]; for (i = 0; i < 1438; i++) bMessage[i] = bReceived[i + 14]; dataResult.User_id = BitConverter.ToInt32(bSender_id, 0); dataResult.Receiver_id = BitConverter.ToInt32(bReceiver_id, 0); long timeTick = BitConverter.ToInt64(bTime, 0); dataResult.Time = new DateTime(timeTick); dataResult.Message = Encoding.Default.GetString(bMessage); return dataResult; }
public byte[] ConvertToBytes(MessageData data) { byte[] bResult = new byte[1452]; short type = 1; byte[] bMessageType = BitConverter.GetBytes(type); byte[] bSender_id = BitConverter.GetBytes(data.User_id); byte[] bReceiver_id = BitConverter.GetBytes(data.Receiver_id); byte[] bTime = BitConverter.GetBytes(data.Time.Ticks); byte[] bMessage = Encoding.Default.GetBytes(data.Message); int i = 0; for (i = 0; i < bMessageType.Length; i++) bResult[i + 0] = bSender_id[i]; for (i = 0; i < bSender_id.Length; i++) bResult[i + 2] = bSender_id[i]; for (i = 0; i < bReceiver_id.Length; i++) bResult[i + 6] = bReceiver_id[i]; for (i = 0; i < bTime.Length; i++) bResult[i + 10] = bTime[i]; for (i = 0; i < 1438 && i < bMessage.Length; i++) bResult[i + 14] = bMessage[i]; return bResult; }
public Message(byte[] data) { msgData = convert.ConvertToClass(data); bData = data; }
public ArrayList SelOverMessages(int user_id) { try { con.Open(); DataSet ds = new DataSet(); sql = "SELECT * FROM over_messages where receiver_id=" + user_id; MySQLCommand com = new MySQLCommand(sql, con); MySQLDataAdapter adp = new MySQLDataAdapter(com); adp.Fill(ds); ArrayList messages = new ArrayList(); foreach (DataRow dr in ds.Tables[0].Rows) { MessageData msg = new MessageData(); msg.User_id = (int)dr["sender_id"]; msg.Receiver_id = (int)dr["receiver_id"]; msg.Time = (DateTime)dr["time"]; msg.Message = dr["message"].ToString(); messages.Add(msg); } sql = "DELETE user_message where receiver_id=" + user_id; com = new MySQLCommand(sql, con); com.ExecuteNonQuery(); return messages; } catch(Exception ex) { throw ex; } finally { con.Close(); } }
public bool InsertIntoOverMessages(MessageData msg) { try { con.Open(); sql = "INSERT INTO over_messages(sender_id,receiver_id,time,message) VALUES(" + msg.User_id + "," + msg.Receiver_id + "," + msg.Time + "," + msg.Message + ")"; MySQLCommand com = new MySQLCommand(sql, con); com.ExecuteNonQuery(); return true; } catch { return false; } finally { con.Close(); } }
public Message(byte[] data) { msgData = convert.ConvertReceiveData(data); bData = data; }