public CloudPullTopic createPullTopic()

in src/main/java/com/aliyun/mns/client/DefaultMNSClient.java [248:280]


    public CloudPullTopic createPullTopic(TopicMeta topicMeta, Vector<String> queueNameList, boolean needCreateQueue,
        QueueMeta queueMetaTemplate) throws ClientException, ServiceException {
        if (queueNameList == null || queueNameList.size() <= 0) {
            throw new IllegalArgumentException("queueNameList should not be null or empty.");
        }
        Vector<CloudQueue> queueList = new Vector<CloudQueue>();
        if (needCreateQueue) {
            QueueMeta queueMeta = null;
            if (queueMetaTemplate != null) {
                queueMeta = queueMetaTemplate;
            } else {
                queueMeta = new QueueMeta();
                queueMeta.setPollingWaitSeconds(30);
                //add some default settings;
            }
            for (int i = 0; i < queueNameList.size(); i++) {
                String queueName = queueNameList.get(i);
                queueMeta.setQueueName(queueName);
                CloudQueue queue = new CloudQueue(queueName, this.serviceClient, this.credentials, this.endpoint);
                queue.create(queueMeta);
                queueList.add(queue);
            }
        } else {
            for (int i = 0; i < queueNameList.size(); i++) {
                String queueName = queueNameList.get(i);
                CloudQueue queue = new CloudQueue(queueName, this.serviceClient, this.credentials,
                    this.endpoint);
                queueList.add(queue);
            }
        }
        CloudTopic rawTopic = this.createTopic(topicMeta);
        return new CloudPullTopic(rawTopic, queueNameList, queueList);
    }