package name.abuchen.portfolio.snapshot.filter;
import java.util.List;
import java.util.Objects;
import name.abuchen.portfolio.model.Client;
import name.abuchen.portfolio.model.Portfolio;
import name.abuchen.portfolio.model.PortfolioTransaction;
public class ReadOnlyPortfolio extends Portfolio
{
private final Portfolio source;
ReadOnlyPortfolio(Portfolio source)
{
this.source = Objects.requireNonNull(source);
}
public Portfolio getSource()
{
return source;
}
@Override
public void addTransaction(PortfolioTransaction transaction)
{
throw new UnsupportedOperationException();
}
void internalAddTransaction(PortfolioTransaction transaction)
{
super.addTransaction(transaction);
}
@Override
public void shallowDeleteTransaction(PortfolioTransaction transaction, Client client)
{
throw new UnsupportedOperationException();
}
@Override
public void addAllTransaction(List<PortfolioTransaction> transactions)
{
throw new UnsupportedOperationException();
}
void internalAddAllTransaction(List<PortfolioTransaction> transactions)
{
super.addAllTransaction(transactions);
}
}