本文整理汇总了Java中com.amazonaws.services.sns.model.ListTopicsResult.getTopics方法的典型用法代码示例。如果您正苦于以下问题:Java ListTopicsResult.getTopics方法的具体用法?Java ListTopicsResult.getTopics怎么用?Java ListTopicsResult.getTopics使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类com.amazonaws.services.sns.model.ListTopicsResult
的用法示例。
在下文中一共展示了ListTopicsResult.getTopics方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Java代码示例。
示例1: getOrCreateNotification
import com.amazonaws.services.sns.model.ListTopicsResult; //导入方法依赖的package包/类
/**
*
* @param email
* @return
*/
public String getOrCreateNotification(String email) {
String ret = null;
String topicName = getTopicName(email);
String nextToken = null;
do {
ListTopicsResult listTopics = asyncSnsClient.listTopics(nextToken);
List<Topic> topics = listTopics.getTopics();
for (Topic s : topics) {
if (s.getTopicArn().endsWith(topicName)) {
ret = s.getTopicArn();
break;
}
}
nextToken = listTopics.getNextToken();
} while (ret == null && nextToken != null);
if (ret == null) {
// create the topic and the subscription
CreateTopicResult topic = asyncSnsClient.createTopic(topicName);
SubscribeRequest req = new SubscribeRequest(topic.getTopicArn(), "email", email);
asyncSnsClient.subscribeAsync(req);
ret = topic.getTopicArn();
}
return ret;
}
示例2: getTopicARN
import com.amazonaws.services.sns.model.ListTopicsResult; //导入方法依赖的package包/类
public String getTopicARN() {
try {
if (topicANR.isEmpty()) {
ListTopicsResult topics = snsClient.listTopics();
for(Topic topic : topics.getTopics()) {
String foundArn = topic.getTopicArn();
if (foundArn.contains(TOPIC_NAME)) {
logger.info("Found notification topic for SNS, ARN is: " + foundArn);
topicANR = foundArn;
break;
}
}
}
if (topicANR.isEmpty()) {
logger.info("Did not find notification topic for SNS, to receive updates create topic: " + TOPIC_NAME);
}
return topicANR;
}
catch (AuthorizationErrorException authException) {
logger.error("Did not send SNS notification. You may need to update permissions for user via IAM. Exception was " + authException);
return "";
}
}
示例3: getTopicResourceName
import com.amazonaws.services.sns.model.ListTopicsResult; //导入方法依赖的package包/类
private String getTopicResourceName(String marker, String topicName) {
ListTopicsResult listTopicsResult = this.amazonSns.listTopics(new ListTopicsRequest(marker));
for (Topic topic : listTopicsResult.getTopics()) {
AmazonResourceName resourceName = AmazonResourceName.fromString(topic.getTopicArn());
if (resourceName.getResourceType().equals(topicName)) {
return topic.getTopicArn();
}
}
if (StringUtils.hasText(listTopicsResult.getNextToken())) {
return getTopicResourceName(listTopicsResult.getNextToken(), topicName);
} else {
throw new IllegalArgumentException("No topic found for name :'" + topicName + "'");
}
}
示例4: getTopicArn
import com.amazonaws.services.sns.model.ListTopicsResult; //导入方法依赖的package包/类
public static String getTopicArn( final AmazonSNSClient sns, final String queueName, final boolean createOnMissing )
throws Exception {
if ( logger.isTraceEnabled() ) {
logger.trace( "Looking up Topic ARN: {}", queueName );
}
ListTopicsResult listTopicsResult = sns.listTopics();
String topicArn = null;
for ( Topic topic : listTopicsResult.getTopics() ) {
String arn = topic.getTopicArn();
if ( queueName.equals( arn.substring( arn.lastIndexOf( ':' ) ) ) ) {
topicArn = arn;
if (logger.isTraceEnabled()) {
logger.trace( "Found existing topic arn=[{}] for queue=[{}]", topicArn, queueName );
}
}
}
if ( topicArn == null && createOnMissing ) {
if (logger.isTraceEnabled()) {
logger.trace("Creating topic for queue=[{}]...", queueName);
}
CreateTopicResult createTopicResult = sns.createTopic( queueName );
topicArn = createTopicResult.getTopicArn();
if (logger.isTraceEnabled()) {
logger.trace("Successfully created topic with name {} and arn {}", queueName, topicArn);
}
}
else {
logger.error( "Error looking up topic ARN for queue=[{}] and createOnMissing=[{}]", queueName,
createOnMissing );
}
if ( logger.isTraceEnabled() ) {
logger.trace( "Returning Topic ARN=[{}] for Queue=[{}]", topicArn, queueName );
}
return topicArn;
}