// iterate over all data and feed it into the event bus.
while (fs.moreDataInPipe()) {
//
StreamEvent se = fs.getOneFromPipes();
ETransportType transportType = se.getEventType();
// only time events are sent to the generic transport layer.
if (transportType.equals(ETransportType.TIME)) {
transportFactory.getPublisher(transportType.toString())
.send(se);
} else if (transportType.equals(ETransportType.MARKET_DATA)) {
MarketDataEvent mde = (MarketDataEvent) se;
transportFactory.getPublisher(transportType, mde.getMdiId()).send(se);
// send also to virtex exchange layer.
exchange.processStreamEvent(se);
} else if (transportType.equals(ETransportType.REF_DATA)) {
ReferenceDataEvent rde = (ReferenceDataEvent) se;
transportFactory.getPublisher(transportType,
rde.getInstrument()).send(se);
} else if (transportType.equals(ETransportType.TRAD_DATA)) {
TradingDataEvent tde = (TradingDataEvent) se;
transportFactory.getPublisher(transportType, tde.getTradInst())
.send(se);
// send everything also to virtex exchange layer.