@param [String] topic_arn An AWS SNS Topic ARN. It should be
formatted something like: arn:aws:sns:us-east-1:123456789012:TopicName
@return [Topic] Returns a topic with the given Topic ARN.
# File lib/aws/sns/topic_collection.rb, line 36 def [] topic_arn unless topic_arn =~ %r^arn:aws:sns:/ raise ArgumentError, "invalid topic arn `#{topic_arn}`" end Topic.new(topic_arn, :config => config) end
Yields once for each topic. @yieldparam [Topic] topic @return [nil]
# File lib/aws/sns/topic_collection.rb, line 46 def each &block next_token = nil begin list_options = next_token ? { :next_token => next_token } : {} response = client.list_topics(list_options) response.topics.each do |t| topic = Topic.new(t.topic_arn, :config => config) yield(topic) end end while(next_token = response.next_token) nil end