in orderbook-core/src/main/java/com/epam/deltix/orderbook/core/impl/L3ConsolidatedQuoteProcessor.java [292:316]
public boolean processL3EntryUpdate(final PackageHeaderInfo pck,
final L3EntryUpdateInfo msg) {
@Alphanumeric final long exchangeId = msg.getExchangeId();
final Option<MutableExchange<Quote, L3Processor<Quote>>> holder = getExchanges().getById(exchangeId);
if (!holder.hasValue() || holder.get().getProcessor().isWaitingForSnapshot()) {
return false;
}
final L3Processor<Quote> exchange = holder.get().getProcessor();
final QuoteUpdateAction action = msg.getAction();
if (action == QuoteUpdateAction.CANCEL) {
return handleCancel(exchange, pck, msg);
}
if (action == QuoteUpdateAction.REPLACE) {
return handleReplace(exchange, pck, msg);
}
if (action == QuoteUpdateAction.MODIFY) {
return handleModify(exchange, pck, msg);
}
if (validationOptions.isQuoteUpdate()) {
subtractExchange(exchange);
}
return exchange.processL3EntryUpdate(pck, msg);
}