Class: AWS::S3::Service

Inherits:
Base
  • Object
show all
Defined in:
lib/aws/s3/service.rb,
lib/aws/s3/response.rb

Overview

The service lets you find out general information about your account, like what buckets you have.

Service.buckets
# => []

Defined Under Namespace

Classes: Response

Constant Summary collapse

@@response =

:nodoc:

nil

Class Method Summary collapse

Methods inherited from Base

current_bucket, #initialize, request, set_current_bucket_to

Constructor Details

This class inherits a constructor from AWS::S3::Base

Dynamic Method Handling

This class handles dynamic methods through the method_missing method in the class AWS::S3::Base

Class Method Details

.bucketsObject

List all your buckets



12
13
14
15
16
17
18
19
# File 'lib/aws/s3/service.rb', line 12

def buckets
  response = get('/')
  if response.empty?
    []
  else
    response.buckets.map {|attributes| Bucket.new(attributes)}
  end
end

.responseObject

Sometimes methods that make requests to the S3 servers return some object, like a Bucket or an S3Object. Othertimes they return just true. Other times they raise an exception that you may want to rescue. Despite all these possible outcomes, every method that makes a request stores its response object for you in Service.response. You can always get to the last request’s response via Service.response.

objects = Bucket.objects('jukebox')
Service.response.success?
# => true

This is also useful when an error exception is raised in the console which you weren’t expecting. You can root around in the response to get more details of what might have gone wrong.



33
34
35
# File 'lib/aws/s3/service.rb', line 33

def response
  @@response
end

.response=(response) ⇒ Object

:nodoc:



37
38
39
# File 'lib/aws/s3/service.rb', line 37

def response=(response) #:nodoc:
  @@response = response
end