public MdpChannel build()

in mbp-only/src/main/java/com/epam/cme/mdp3/core/channel/MdpChannelBuilder.java [129:154]


    public MdpChannel build() {
        try {
            final Configuration cfg = new Configuration(this.cfgURI);
            final MdpMessageTypes mdpMessageTypes = new MdpMessageTypes(this.schemaURI);

            MdpChannelImpl mdpChannel;

            if (!noScheduler && scheduler != null) {
                scheduler = DefaultScheduledServiceHolder.getScheduler();
            }
            mdpChannel = new MdpChannelImpl(scheduler, cfg.getChannel(this.channelId), mdpMessageTypes, queueSlotInitBufferSize, incrQueueSize, gapThreshold);

            mdpChannel.setIncrementalFeedAni(this.incrementalFeedAni);
            mdpChannel.setIncrementalFeedBni(this.incrementalFeedBni);
            mdpChannel.setSnapshotFeedAni(this.snapshotFeedAni);
            mdpChannel.setSnapshotFeedBni(this.snapshotFeedBni);
            mdpChannel.setInstrumentFeedAni(this.instrumentFeedAni);
            mdpChannel.setInstrumentFeedBni(this.instrumentFeedBni);
            mdpChannel.setRcvBufSize(this.rcvBufSize);

            if (this.channelListener != null) mdpChannel.registerListener(this.channelListener);
            return mdpChannel;
        } catch (Exception e) {
            throw new IllegalStateException("Failed to build MDP Channel", e);
        }
    }