import java.net.InetAddress;
import java.net.UnknownHostException;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;

/**
* <p>
* Classe representant les messages envoyés en TCP lors d'une session de clavardage
* </p>
*/
public class MessageHorodate {
	private Utilisateur destinataire ;
	private Utilisateur source ;
	private Date dateHorodatage ;
	private String Message;
	
	/**
	* <p>
	* Constructeur , le message va etre horodate 
	* @param destinataire - Destinataire du message
	* @param source - Source du message
	* @param Message - Message envoye
	* </p>
	*/
	public MessageHorodate(Utilisateur destinataire , Utilisateur source , String Message) {
		this.destinataire = destinataire ;
		this.source = source ;
		this.Message = Message ;
		this.dateHorodatage = new Date();
	}
	
	/**
	* <p>
	* permet de creer une representation string du message
	* @return Les differents attributs de la classe sous forme de string
	* </p>
	*/
	public String toString() {
		String Msg = "";
		Msg += ("Destinataire: " + this.destinataire + "\n") ;
		Msg += ("Source: " + this.source+ "\n") ;
		Msg += ("Date: " + this.dateToString() + "\n") ;
		Msg += ("Message:" + this.Message + "\n" );
		return Msg ;
	}
	
	/**
	* <p>
	* permet de creer une representation string de la date d'horodatage
	* @return La date d'horodatage du message en format yyyy/MM/dd HH:mm:ss
	* </p>
	*/
	public String dateToString() {
		DateFormat format = new SimpleDateFormat("yyyy/MM/dd HH:mm:ss");
		return format.format(this.dateHorodatage);
	}
	
	public static MessageHorodate stringToMessageHorodate(String s) {
		MessageHorodate mh ; 
		return mh ;
	}

}
