/**
*Programme cree par The Clusters
*Classe de recuperation des objets
*Classe de test, non utilise dans la version finale
*Presente uniquement pour l'explication
*@see Serveur.java
*@author The Clusters
*@version 1.0
**/

package chkoba;

import chkoba.*;
import java.net.MalformedURLException;
import java.util.ArrayList;
import java.util.Properties;
import java.rmi.RemoteException;
import java.rmi.Naming;
import javax.swing.JOptionPane;

/**
*	Classe Client
*/

public class Client
{
	private static Properties pro;
	private static PropertiesPerso propers;
	private static String host;
	
	/**
	* Constructeur du Client
	* Ne fut utilise que pour comprendre le RMI et pour tester la mise en reseau
	*/
	public Client( String nom) throws RemoteException
	{
		try
		{
			propers=new PropertiesPerso();
			pro=propers.loadProperties();
			host=pro.getProperty("rmi.host");
			
			int total=Integer.parseInt(pro.getProperty("total"));
			
			// On ne recupere que le plateau
			// Car on sait que le plateau connait tous les autres objets
			IPlateau plateau = ( IPlateau ) Naming.lookup("rmi://"+host+":1099/plateau");
			
			if ( plateau.getJoueurs().size() != total )
			{
				JOptionPane conf = new JOptionPane();
				conf.showMessageDialog(null,"Attente des autres joueurs","Alerte", conf.INFORMATION_MESSAGE);
			}
			
			while ( plateau.getJoueurs().size() != total )
			{
				Thread.sleep(10000);
				plateau = ( IPlateau ) Naming.lookup("rmi://"+host+":1099/plateau");
			}
		}
		catch( Exception e )
		{
			e.printStackTrace();
		}
	}
}