package net;

import java.io.Serializable;
import java.util.Vector;

/**
 * \class Message
 * Provides a message model with a header and a content.
 */
@SuppressWarnings("serial")
public class Message implements Serializable {
	public enum Header {DEBUG, LIST_TOPIC, CREATE_TOPIC, JOIN_TOPIC, JOIN, POST, QUIT, GET, JOINED, LEFT}
	public Header head;
	public Vector<String> data = new Vector<String>();
	
	public Message(Header head, String message) {
		this(head);
		this.data.add(message);
	}
	
	public Message(Header head, Vector<String> message) {
		this(head);
		this.data = message;
	}
	
	public Message(Header head) {
		this.head = head;
	}
	
	public void addPart(String str) {
		data.add(str);
	}
	
	public Vector<String> getData() {
		return data;
	}
	
	public String toString() {
		return head + " " + data.toString();
	}
}
