Sha256: 270decb62514728743983d801b5f874591a3a61f35833693617f2f42c2d97fbd

Contents?: true

Size: 874 Bytes

Versions: 2

Compression:

Stored size: 874 Bytes

Contents

module Fog
  module AWS
    class S3

      def buckets
        Fog::AWS::S3::Buckets.new(:connection => self)
      end

      class Buckets < Fog::Collection

        def all
          data = connection.get_service.body
          owner = Fog::AWS::S3::Owner.new(data.delete('Owner').merge!(:connection => connection))
          buckets = []
          data['Buckets'].each do |bucket|
            buckets << Fog::AWS::S3::Bucket.new({
              :connection     => connection,
              :owner          => owner
            }.merge!(bucket))
          end
          buckets
        end

        def create(attributes = {})
          bucket = new(attributes)
          bucket.save
          bucket
        end

        def new(attributes = {})
          Fog::AWS::S3::Bucket.new(attributes.merge!(:connection => connection))
        end

      end

    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
geemus-fog-0.0.1 lib/fog/aws/models/s3/buckets.rb
geemus-fog-0.0.3 lib/fog/aws/models/s3/buckets.rb