Eclipse で Azure SDK を使用しており、サービス バスに関連付けられているすべてのキューのリストを取得しようとしています。サービス バスに正しく接続できますが、listQueues を呼び出すと、最初の 100 個のキューしか返されません (約 130 個あります)。
ListQueuesOptions options = new ListQueuesOptions();
options.setTop(200);
options.setSkip(0);
System.out.println(options.getTop());
ListQueuesResult queuesResult = serviceBusContract.listQueues(options);
List<QueueInfo> list = queuesResult.getItems();
for (QueueInfo info : list)
{
System.out.println("Queue name: " + info.getPath());
}
ListQueuesOptions は、キューの取得方法を変更することになっているように見えますが、そうです。top を 20 に設定し、skip を 0 に設定すると、最初の 20 が得られ、top を 40 に設定し、skip を 20 に設定すると、2 番目の 20 が得られます。しかし、上記のコードを実行しても、まだ 100 個のキューしか出力されません。なんらかの理由で100で制限されていますか?
おそらく100回の繰り返しでlistQueuesを呼び出し続けて、100に達したかどうかを確認してからもう一度実行できることを認識していますが、これは本当に奇妙な問題なので、ドキュメントがこれについてはよくわかりません。
ありがとう!