package com.activequant.domainmodel.streaming; import com.activequant.domainmodel.ETransportType; import com.activequant.domainmodel.TimeStamp; import com.activequant.domainmodel.annotations.Property; public class MarketDataSnapshot extends MarketDataEvent { private double[] bidPrices, askPrices, bidSizes, askSizes; private String mdiId; private String tdiId; public MarketDataSnapshot(){ super(MarketDataSnapshot.class.getCanonicalName()); } public MarketDataSnapshot(String mdiId, TimeStamp ts, double[] bidPrices, double[] askPrices, double[] bidSizes, double[] askSizes) { super(ts, MarketDataSnapshot.class.getCanonicalName(), mdiId); this.bidPrices = bidPrices; this.askPrices = askPrices; this.bidSizes = bidSizes; this.askSizes = askSizes; this.mdiId = mdiId; } /** * checks if book is complete or not ... * could be renamed. * * @return */ public boolean liquid(){ if(bidPrices.length>0 && askPrices.length>0){ return true; } return false; } public String toString(){ return "MDS:" + mdiId + " - " + getTimeStamp().getCalendar().getTime(); } public ETransportType getEventType() { return ETransportType.MARKET_DATA; } @Property public String getMdiId() { return mdiId; } @Property public double[] getBidPrices() { return bidPrices; } @Property public double[] getAskPrices() { return askPrices; } @Property public double[] getBidSizes() { return bidSizes; } @Property public double[] getAskSizes() { return askSizes; } public void setBidPrices(double[] bidPrices) { this.bidPrices = bidPrices; } public void setAskPrices(double[] askPrices) { this.askPrices = askPrices; } public void setBidSizes(double[] bidSizes) { this.bidSizes = bidSizes; } public void setAskSizes(double[] askSizes) { this.askSizes = askSizes; } public void setMdiId(String mdiId) { this.mdiId = mdiId; } @Property public String getTdiId() { return tdiId; } public void setTdiId(String tdiId) { this.tdiId = tdiId; } }