// File TipoLinkGiunta.java

public class TipoLinkGiunta {

    //rappr. della tupla
    private final Regione laRegione;
    private final Persona laPersona;

    //rappr. degli attributi della tupla
    private final int annoElezione;

    //costruttore
    public TipoLinkGiunta(Regione x, Persona y, int a) {
	laRegione = x; laPersona = y; annoElezione = a;
    }

    //funzione per l'accesso ai componenti della tupla
    public Regione getRegione() { return laRegione; }
    public Persona getPersona() { return laPersona; }

    //funzione per l'accesso agli attributi della tupla
    public int getAnnoElezione() { return annoElezione; }

    //overriding della funzini ereditate da Object: 
    //  - l'overriding di equals() e' necessario!
    //  - l'overriding di clone() si puo' evitare perche' gli oggetti di
    //    TipoLinkGiunta sono immutabili!
    public boolean equals(Object o) {
	if (o != null && getClass().equals(o.getClass())) {
	    TipoLinkGiunta b = (TipoLinkGiunta)o;
	    return b.laPersona != null && b.laRegione != null &&
		b.laPersona == laPersona && b.laRegione == laRegione;
	}  
	else return false;
    }  
}

