public Quote processL1EntryNew()

in orderbook-core/src/main/java/com/epam/deltix/orderbook/core/impl/L1SingleExchangeQuoteProcessor.java [80:104]


    public Quote processL1EntryNew(final PackageHeaderInfo pck, final L1EntryInfo msg) {
        @Alphanumeric final long exchangeId = msg.getExchangeId();
        final Option<MutableExchange<Quote, L1Processor<Quote>>> exchange = getOrCreateExchange(exchangeId);
        if (!exchange.hasValue()) {
            // TODO add null check
            return null;
        }

        if (exchange.get().getProcessor().isWaitingForSnapshot()) {
            return null;
        }

        final QuoteSide side = msg.getSide();
        final L1MarketSide<Quote> marketSide = exchange.get().getProcessor().getMarketSide(side);

        final Quote quote;
        if (marketSide.isEmpty()) {
            quote = pool.borrow();
            marketSide.insert(quote);
        } else {
            quote = marketSide.getBestQuote();
        }
        quote.copyFrom(pck, msg);
        return quote;
    }