net.commerce.zocalo.market
Class ReserveVerifier

java.lang.Object
  extended by net.commerce.zocalo.market.ReserveVerifier
Direct Known Subclasses:
BinaryMarketReserveVerifier, UnaryMarketReserveVerifier

public abstract class ReserveVerifier
extends java.lang.Object

In Experiments in which holders of short shares must pay dividends, this callback interface allows Markets to defer to Sessions for enforcement of the proper balance of reserves.


Constructor Summary
protected ReserveVerifier(Session session)
           
 
Method Summary
 void addMarket(Market market)
           
abstract  Quantity costToSell(Price price, Quantity quantity, Quantity remainingDividend)
           
 void enforce(User user, Quantity quantityPurchased, Position pos)
           
 Market getMarket()
           
 Session getSession()
           
 Quantity requiredReserves(User user)
           
 boolean verify(User user, Position pos, Price price, Quantity quantity)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ReserveVerifier

protected ReserveVerifier(Session session)
Method Detail

getSession

public Session getSession()

getMarket

public Market getMarket()

costToSell

public abstract Quantity costToSell(Price price,
                                    Quantity quantity,
                                    Quantity remainingDividend)

addMarket

public void addMarket(Market market)

verify

public boolean verify(User user,
                      Position pos,
                      Price price,
                      Quantity quantity)

enforce

public void enforce(User user,
                    Quantity quantityPurchased,
                    Position pos)

requiredReserves

public Quantity requiredReserves(User user)
                          throws ScoreException
Throws:
ScoreException