package totale.p240130;

import java.util.Objects;

public class Articolo implements Comparable<Articolo>{

	// Variabili
	private String id;
	private String nome;
	private Double prezzo;
	
	// Costruttore
	public Articolo(
			String id,
			String nome,
			Double prezzo) {
		this.id = id;
		this.nome = nome;
		this.prezzo = prezzo;
	}
	
	// Metodi getter
	public String id() {
		return id;
	}
	
	public String nome() {
		return nome;
	}
	
	public Double prezzo() {
		return prezzo;
	}
	
	// Equals
	@Override
	public boolean equals(Object object) {
		if (object == null) return false;
		if (object == this) return true;
		if (!(object instanceof Articolo)) return false;
		
		Articolo articolo = (Articolo) object;
		
		return this.id.equals(articolo.id);
	}
	
	// HashCode
	@Override
	public int hashCode() {
		return Objects.hash(id);
	}
	
	// CompareTo
	@Override
	public int compareTo(Articolo art) {
		return this.id.compareTo(art.id);
	}
}
