package de.tu_dresden.diplom.richter_mirko_mat2628335.witness.account;

import de.tu_dresden.diplom.richter_mirko_mat2628335.common.account.IFAmount;

/**
 * 
 */
public interface IFAccount {

   public String getIdentification();

   public IFAmount getAmount();
   public IFAmount getCredit();

   public boolean addVirtualDebit(IFVirtualDebit virtualDebit);
   public void removeVirtualDebit(IFVirtualDebit vd);
   public void performVirtualDebit(IFVirtualDebit vd);
   public IFAmount getVirtualDebitSum();

   public void addVirtualCredit(IFVirtualCredit virtualCredit);
   public void removeVirtualCredit(IFVirtualCredit vc);
   public void performVirtualCredit(IFVirtualCredit vc);
   public IFAmount getVirtualCreditSum();

}
