package org.pokenet.chat.server; import java.util.ArrayList; import org.apache.mina.core.session.IoSession; /** * Represents a user/player * @author shadowkanji * */ public class User { public enum Language { NONE, ENGLISH, PORTUGESE, ITALIAN, FRENCH, FINNISH, SPANISH, GERMAN, DUTCH } private Language m_language; private String m_username; private int m_level; private String m_team; private IoSession m_session; private ArrayList<String> m_friends; /** * Constructor */ public User(Language l) { m_friends = new ArrayList<String>(); m_language = l; } /** * Returns the language of the user * @return */ public Language getLanguage() { return m_language; } /** * Returns friends list * @return */ public ArrayList<String> getFriends() { return m_friends; } /** * Adds a friend to friends list * @param s */ public void addFriend(String s) { m_friends.add(s); m_session.write("a" + s); } /** * Removes a friend * @param s */ public void removeFriend(String s) { if(m_friends.remove(s)) { m_session.write("r" + s); } } /** * Sets username * @param username */ public void setUsername(String username) { m_username = username; } /** * Sets permission level * @param l */ public void setLevel(int l) { m_level = l; } /** * Sets team (e.g. Team Rocket) * @param team */ public void setTeam(String team) { m_team = team; } /** * Sets session of user * @param s */ public void setSession(IoSession s) { m_session = s; } /** * Returns username * @return */ public String getUsername() { return m_username; } /** * Returns the session * @return */ public IoSession getSession() { return m_session; } /** * Returns permission level * @return */ public int getLevel() { return m_level; } /** * Returns player's team * @return */ public String getTeam() { return m_team; } }