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
148 149 150 151 152 153 154 |
# File 'lib/aws-sdk-sns/resource.rb', line 148 def create_topic( = {}) resp = @client.create_topic() Topic.new( arn: resp.data.topic_arn, client: @client ) end |
#platform_application(arn) ⇒ PlatformApplication
160 161 162 163 164 165 |
# File 'lib/aws-sdk-sns/resource.rb', line 160 def platform_application(arn) PlatformApplication.new( arn: arn, client: @client ) end |
#platform_applications(options = {}) ⇒ PlatformApplication::Collection
172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 |
# File 'lib/aws-sdk-sns/resource.rb', line 172 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
191 192 193 194 195 196 |
# File 'lib/aws-sdk-sns/resource.rb', line 191 def platform_endpoint(arn) PlatformEndpoint.new( arn: arn, client: @client ) end |
#subscription(arn) ⇒ Subscription
200 201 202 203 204 205 |
# File 'lib/aws-sdk-sns/resource.rb', line 200 def subscription(arn) Subscription.new( arn: arn, client: @client ) end |
#subscriptions(options = {}) ⇒ Subscription::Collection
212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 |
# File 'lib/aws-sdk-sns/resource.rb', line 212 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
231 232 233 234 235 236 |
# File 'lib/aws-sdk-sns/resource.rb', line 231 def topic(arn) Topic.new( arn: arn, client: @client ) end |
#topics(options = {}) ⇒ Topic::Collection
243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 |
# File 'lib/aws-sdk-sns/resource.rb', line 243 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 |