private List listTopostoreNodeWithAutoPage()

in src/main/java/com/aliyun/openservices/log/Client.java [4774:4822]


	private List<TopostoreNode> listTopostoreNodeWithAutoPage(String topostoreName, List<String> reqNodeIds,
		List<String> nodeTypes, Map<String, String> nodeProperties, Map<String, String> params) throws LogException{
		List<TopostoreNode> finalNodes = new ArrayList<TopostoreNode>();

		if(reqNodeIds.size()==0){
			int offset = 0;
			int total = 100000;

			while( offset < total ){
				ListTopostoreNodeRequest listNodeReq = new ListTopostoreNodeRequest();
				listNodeReq.setTopostoreName(topostoreName);
				listNodeReq.setProperties(nodeProperties);
				listNodeReq.setNodeTypes(nodeTypes);
				for(Map.Entry<String, String> kv: params.entrySet()){
					listNodeReq.SetParam(kv.getKey(), kv.getValue());
				}
				ListTopostoreNodeResponse listNodeResp = this.listTopostoreNode(listNodeReq);
				total = listNodeResp.getTotal();
				for (TopostoreNode n: listNodeResp.getTopostoreNodes()){
					offset++;
					finalNodes.add(n);
				}
			}
		} else {
			List<List<String>> reqNodeIdLists = new ArrayList<List<String>>();
			for(int i=0; i<reqNodeIds.size();i++) {
				if(i % 200 == 0){
					reqNodeIdLists.add(new ArrayList<String>());
				}
				reqNodeIdLists.get(i/200).add(reqNodeIds.get(i));
			}
			for(int i=0; i<reqNodeIdLists.size(); i++){
				ListTopostoreNodeRequest listNodeReq = new ListTopostoreNodeRequest();
				listNodeReq.setTopostoreName(topostoreName);
				listNodeReq.setNodeIds(reqNodeIdLists.get(i));
				listNodeReq.setProperties(nodeProperties);
				listNodeReq.setNodeTypes(nodeTypes);
				for(Map.Entry<String, String> kv: params.entrySet()){
					listNodeReq.SetParam(kv.getKey(), kv.getValue());
				}
				ListTopostoreNodeResponse listNodeResp = this.listTopostoreNode(listNodeReq);
				for (TopostoreNode n: listNodeResp.getTopostoreNodes()){
					finalNodes.add(n);
				}
			}
		}

		return finalNodes;
	}