
import java.io.BufferedReader;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import java.io.PrintWriter;
import java.util.ArrayList;

import javax.swing.JOptionPane;

public class Teatro {
	
	ArrayList<Prenotazione> prenotati=new ArrayList<Prenotazione>();
	
	public void aggiungiPrenotazione(String cognome, int posto)
	{
		prenotati.add(new Prenotazione(cognome,posto));
	}
	
	public ArrayList<Prenotazione> cercaUnaPrenotazione(String cognome)
	{
		ArrayList<Prenotazione> temp=new ArrayList<Prenotazione>();
		
		for(Prenotazione p:prenotati)
		{
			if(p.getCognome().equals(cognome))
				temp.add(p);
		}
		
		return temp;
		
	}
	
	public void cancellaPrenotazione(String cognome)
	{
		ArrayList<Prenotazione> temp=cercaUnaPrenotazione(cognome);
	
		for(Prenotazione p: temp)
			prenotati.remove(p);
	}
	
	public void scriviSuFile()
	{
		try {
			//Sostituire con un percorso valido sul proprio pc
			FileWriter f = new FileWriter("/home/marco/Scrivania/prenotati/prenotati.txt");
			
			PrintWriter p = new PrintWriter(f);
			
			String cognome=JOptionPane.showInputDialog("Inserisci il nome della prenotazione. digita fine per terminare");
			
			while(!cognome.equals("fine"))
			{
				p.println(cognome);
				cognome=JOptionPane.showInputDialog("Inserisci il nome della prenotazione. digita fine per terminare");
			}
			
			p.close();
			
		} catch (IOException e) {
			System.out.println("C'� stato un errore di I/O");
		}
	}
	
	public void aggiungiDaListaFile()
	{
		 try {
			FileReader f = new FileReader("/home/marco/Scrivania/prenotati/prenotati.txt");

			BufferedReader lettore = new BufferedReader(f);
			
			String riga=lettore.readLine();
			int contatorePosti=1;
			
			while(riga!=null)
			{
				prenotati.add(new Prenotazione(riga,contatorePosti));
				riga=lettore.readLine();
			}
			
			f.close();
			
		 } catch (FileNotFoundException e) {
			System.out.println("Il file non c'e'!!!");
		} catch (IOException e) {
			System.out.println("C'e' stato un errore di I/O");
		}
	}
	public static void main(String[] args) {
		Teatro t=new Teatro();
		t.scriviSuFile();
		t.aggiungiDaListaFile();
		for(Prenotazione p:t.prenotati)
			System.out.println(p.getCognome());
	}

}
