package jondo;

import anon.infoservice.Database;
import anon.pay.PaymentInstanceDBEntry;

public class PaymentInstance 
{
	private String m_piID;
	
	protected PaymentInstance(String a_piID)
	{
		if (a_piID == null)
		{
			throw new NullPointerException();
		}
		m_piID = a_piID;
	}
	
	public boolean isLoaded()
	{
		return Database.getInstance(PaymentInstanceDBEntry.class).getEntryById(m_piID) != null;
	}
	
	public String getName()
	{
		PaymentInstanceDBEntry pi = (PaymentInstanceDBEntry)Database.getInstance(PaymentInstanceDBEntry.class).getEntryById(m_piID);
		
		if (pi == null)
		{
			return m_piID;
		}
		String strName = pi.getName();
		if (strName != null)
		{
			strName = strName.trim();
		}
		
		return strName;
	}
	
	protected String getId()
	{
		return m_piID;
	}
	
	public boolean equals(Object a_object)
	{
		return (((PaymentInstance)a_object).getId().equals(getId()));
	}
	
	public int hashCode()
	{
		return getId().hashCode();
	}
}
