private MessageConsumer getMessageConsumer0(MetaqTopic topic) throws MetaClientException {
        if (this.shareConsumer) {
            if (this.sharedConsumer == null) {
                if (this.defaultTopic == null) {
                    throw new IllegalArgumentException("Please provide default topic when sharing consumer.");
                }
                synchronized (this) {
                    if (this.sharedConsumer == null) {
                        this.sharedConsumer =
                                this.messageSessionFactory.createConsumer(this.defaultTopic.getConsumerConfig());
                        if (!StringUtils.isBlank(this.defaultTopic.getTopic())) {
                            this.sharedConsumer.subscribe(this.defaultTopic.getTopic(),
                                this.defaultTopic.getMaxBufferSize(), this.defaultMessageListener);
                        }
                        this.consumers.add(this.sharedConsumer);
                    }
                }
            }
            return this.sharedConsumer;
        }
        else {
            if (this.defaultMessageListener != null || this.defaultTopic != null) {
                throw new IllegalStateException(
                        "You can't provide default topic or message listener when not sharing consumer.");
            }
            MessageConsumer consumer = this.messageSessionFactory.createConsumer(topic.getConsumerConfig());
            this.consumers.add(consumer);
            return consumer;
        }
    }
Set default message listener when sharing consumer.

@param defaultMessageListener
metamorphosis-client/src/main/java/com/taobao/metamorphosis/client/extension/spring/MessageListenerContainer.java