package com.vogella.jersey.first.model;

import org.bson.Document;

import com.google.gson.Gson;

public class ChatMessage implements MongoDBDocument{

	public String id;
	public String time;
	public String message;
	public String gameCharacterId;
	public String gameCharacterName;

	public ChatMessage(){
		prepareValuesForJson();
	}

	public ChatMessage(String id,String time,String message,String gameCharacterId,String gameCharacterName){
		this.id = id;
		this.time = time;
		this.message = message;
		this.gameCharacterId = gameCharacterId;
		this.gameCharacterName = gameCharacterName;
		prepareValuesForJson();
	}

	@Override
	public Document getDocument(){
		return Document.parse(new Gson().toJson(this));
	}

	@Override
	public void prepareValuesForJson(){
		if(id == null) id = "";
		if(time == null || time.isEmpty()) time = "0";
		if(message == null) message = "";
		if(gameCharacterId == null) gameCharacterId = "";
		if(gameCharacterName == null) gameCharacterName = "";
	}

	@Override
	public String toString(){
		return "ChatMessage [id=" + id + ", time=" + time + ", message=" + message + ", gameCharacterId=" + gameCharacterId + ", gameCharacterName=" + gameCharacterName + "]";
	}

}