
/**
 * Write a description of class Parques here.
 * 
 * @author (your name) 
 * @version (a version number or a date)
 */
public class Parques
{
    // instance variables 
    private final int MaxP = 20;
    private Parque[] Prqs;
    private int TotPrqs, MaxPrqs;

    /**
     * Constructor for objects of class Parques
     */
    public Parques()
    {
        // initialise instance variables
        this.TotPrqs = 0;
        this.MaxPrqs = MaxP;
        this.Prqs = new Parque[this.MaxPrqs];       
    }
    public Parques(int capacid)
    {
        // initialise instance variables
        this.TotPrqs = 0;
        this.MaxPrqs = capacid;
        this.Prqs = new Parque[this.MaxPrqs];       
    }
    
    /**
     * Insere 1 novo Parque no conjunto dos Parques da UM 
     * 
     * @param  cod   codigo do utente
     * @return     nada 
     */
    // Insere um novo parque
    public void insParque(String id, int cap, char d)
    {   
        if (this.TotPrqs < this.MaxPrqs)
        {
           this.Prqs[this.TotPrqs] = new Parque(id,cap,d);  
           this.TotPrqs++;
          }
        else
        {
           System.out.println("ERRO: nao e possivel inserir mais parques!");   
        }
    }
    
    /**
     * Insere 1 novo Utente Autorizado no conjunto dos Presentes no Parque 
     * 
     * @param  u   Utente
     * @return     nada 
     */
    public void Entra(String PId, Utente u)
    {   
            int i;
            
            for ( i = 0; i < this.TotPrqs; i++) {
                if (this.Prqs[i].getId().equals(PId)) {
                     //System.out.println("Parque encontrado!");
                        ((Parque)Prqs[i]).Entra(u);
                    }
            }
    }

    /**
     * Retira 1 Utente do conjunto dos Presentes no Parque 
     * 
     * @param  u   Utente
     * @return     nada 
     */
    public void Sai(String PId, Utente u)
    {
        int i;
            
            for ( i = 0; i < this.TotPrqs; i++) {
                if (this.Prqs[i].getId().equals(PId)) {
                    // System.out.println("Parque encontrado!");
                        ((Parque)Prqs[i]).Sai(u);
                    }
            }
    }
        
}