Class: Aws::SNS::Resource
- Inherits:
-
Object
- Object
- Aws::SNS::Resource
- Defined in:
- lib/aws-sdk-sns/resource.rb
Overview
This class provides a resource oriented interface for SNS. To create a resource object:
resource = Aws::SNS::Resource.new(region: 'us-west-2')
You can supply a client object with custom configuration that will be used for all resource operations. If you do not pass ‘:client`, a default client will be constructed.
client = Aws::SNS::Client.new(region: 'us-west-2')
resource = Aws::SNS::Resource.new(client: client)
Actions collapse
- #create_platform_application(options = {}) ⇒ PlatformApplication
- #create_topic(options = {}) ⇒ Topic
Associations collapse
- #platform_application(arn) ⇒ PlatformApplication
- #platform_applications(options = {}) ⇒ PlatformApplication::Collection
- #platform_endpoint(arn) ⇒ PlatformEndpoint
- #subscription(arn) ⇒ Subscription
- #subscriptions(options = {}) ⇒ Subscription::Collection
- #topic(arn) ⇒ Topic
- #topics(options = {}) ⇒ Topic::Collection
Instance Method Summary collapse
- #client ⇒ Client
-
#initialize(options = {}) ⇒ Resource
constructor
A new instance of Resource.
Constructor Details
Instance Method Details
#create_platform_application(options = {}) ⇒ PlatformApplication
63 64 65 66 67 68 69 |
# File 'lib/aws-sdk-sns/resource.rb', line 63 def create_platform_application( = {}) resp = @client.create_platform_application() PlatformApplication.new( arn: resp.data.platform_application_arn, client: @client ) end |
#create_topic(options = {}) ⇒ Topic
129 130 131 132 133 134 135 |
# File 'lib/aws-sdk-sns/resource.rb', line 129 def create_topic( = {}) resp = @client.create_topic() Topic.new( arn: resp.data.topic_arn, client: @client ) end |
#platform_application(arn) ⇒ PlatformApplication
141 142 143 144 145 146 |
# File 'lib/aws-sdk-sns/resource.rb', line 141 def platform_application(arn) PlatformApplication.new( arn: arn, client: @client ) end |
#platform_applications(options = {}) ⇒ PlatformApplication::Collection
153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 |
# File 'lib/aws-sdk-sns/resource.rb', line 153 def platform_applications( = {}) batches = Enumerator.new do |y| resp = @client.list_platform_applications() resp.each_page do |page| batch = [] page.data.platform_applications.each do |p| batch << PlatformApplication.new( arn: p.platform_application_arn, client: @client ) end y.yield(batch) end end PlatformApplication::Collection.new(batches) end |
#platform_endpoint(arn) ⇒ PlatformEndpoint
172 173 174 175 176 177 |
# File 'lib/aws-sdk-sns/resource.rb', line 172 def platform_endpoint(arn) PlatformEndpoint.new( arn: arn, client: @client ) end |
#subscription(arn) ⇒ Subscription
181 182 183 184 185 186 |
# File 'lib/aws-sdk-sns/resource.rb', line 181 def subscription(arn) Subscription.new( arn: arn, client: @client ) end |
#subscriptions(options = {}) ⇒ Subscription::Collection
193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 |
# File 'lib/aws-sdk-sns/resource.rb', line 193 def subscriptions( = {}) batches = Enumerator.new do |y| resp = @client.list_subscriptions() resp.each_page do |page| batch = [] page.data.subscriptions.each do |s| batch << Subscription.new( arn: s.subscription_arn, client: @client ) end y.yield(batch) end end Subscription::Collection.new(batches) end |
#topic(arn) ⇒ Topic
212 213 214 215 216 217 |
# File 'lib/aws-sdk-sns/resource.rb', line 212 def topic(arn) Topic.new( arn: arn, client: @client ) end |
#topics(options = {}) ⇒ Topic::Collection
224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 |
# File 'lib/aws-sdk-sns/resource.rb', line 224 def topics( = {}) batches = Enumerator.new do |y| resp = @client.list_topics() resp.each_page do |page| batch = [] page.data.topics.each do |t| batch << Topic.new( arn: t.topic_arn, client: @client ) end y.yield(batch) end end Topic::Collection.new(batches) end |