我假设 ListTopicsResult 只会返回您可以访问的主题的主题。
import java.util.List;
import com.amazonaws.auth.AWSCredentials;
import com.amazonaws.auth.BasicAWSCredentials;
import com.amazonaws.services.sns.AmazonSNSClient;
import com.amazonaws.services.sns.model.ListTopicsRequest;
import com.amazonaws.services.sns.model.ListTopicsResult;
import com.amazonaws.services.sns.model.Topic;
public class TestSNS {
public static void main(String[] args) {
AWSCredentials credentials = new BasicAWSCredentials(args[0], args[1]);
AmazonSNSClient snsClient = new AmazonSNSClient(credentials);
ListTopicsResult listTopicsResult = snsClient.listTopics();
String nextToken = listTopicsResult.getNextToken();
List<Topic> topics = listTopicsResult.getTopics();
// ListTopicResult contains only 100 topics hence use next token to get
// next 100 topics.
while (nextToken != null) {
listTopicsResult = snsClient.listTopics(nextToken);
nextToken = listTopicsResult.getNextToken();
topics.addAll(listTopicsResult.getTopics());
}
// Display all the Topic ARN's
for (Topic topic : topics) {
System.out.println(topic);
/*
* perform your actions here
*/
}
}
}