Sha256: b4389195cac151e81683183a3b8f038de36394665c6412043152c72bdea2c26d

Contents?: true

Size: 1.43 KB

Versions: 17

Compression:

Stored size: 1.43 KB

Contents

require 'fog/core/model'

module Fog
  module AWS
    class RDS

      class Snapshot < Fog::Model

        identity  :id, :aliases => ['DBSnapshotIdentifier', :name]
        attribute  :instance_id, :aliases => 'DBInstanceIdentifier'
        attribute  :created_at, :aliases => 'SnapshotCreateTime', :type => :time
        attribute  :instance_created_at, :aliases => 'InstanceCreateTime', :type => :time
        attribute  :engine, :aliases => 'Engine'
        attribute  :engine_version, :aliases => 'EngineVersion'
        attribute  :master_username, :aliases => 'MasterUsername'
        attribute  :state, :aliases => 'Status'
        attribute  :port, :aliases => 'Port', :type => :integer
        attribute  :allocated_storage, :aliases => 'AllocatedStorage', :type => :integer
        attribute  :availability_zone, :aliases => 'AvailabilityZone'
        attribute  :type, :aliases => 'SnapshotType'

        def ready?
          state == 'available'
        end

        def destroy
          requires :id

          service.delete_db_snapshot(id)
          true
        end

        def save
          requires :instance_id
          requires :id

          data = service.create_db_snapshot(instance_id, id).body['CreateDBSnapshotResult']['DBSnapshot']
          merge_attributes(data)
          true
        end

        def server
          requires :instance_id
          service.servers.get(instance_id)
        end

      end
    end
  end
end

Version data entries

17 entries across 17 versions & 6 rubygems

Version Path
gapinc-fog-1.12.1.1 lib/fog/aws/models/rds/snapshot.rb
gapinc-fog-1.12.1a lib/fog/aws/models/rds/snapshot.rb
gapinc-fog-1.12.1 lib/fog/aws/models/rds/snapshot.rb
fog-1.12.1 lib/fog/aws/models/rds/snapshot.rb
fog-1.12.0 lib/fog/aws/models/rds/snapshot.rb
hpfog-0.0.20 lib/fog/aws/models/rds/snapshot.rb
vagrant-shell-0.2.6 vendor/bundle/gems/fog-1.10.1/lib/fog/aws/models/rds/snapshot.rb
vagrant-shell-0.2.5 vendor/bundle/gems/fog-1.10.1/lib/fog/aws/models/rds/snapshot.rb
fog-1.11.1 lib/fog/aws/models/rds/snapshot.rb
fog-1.11.0 lib/fog/aws/models/rds/snapshot.rb
fog-1.10.1 lib/fog/aws/models/rds/snapshot.rb
fog-test-me-1.10.0 lib/fog/aws/models/rds/snapshot.rb
fog-1.10.0 lib/fog/aws/models/rds/snapshot.rb
fog-1.9.0 lib/fog/aws/models/rds/snapshot.rb
fog-maestrodev-1.8.0.20130114204828 lib/fog/aws/models/rds/snapshot.rb
fog-maestrodev-1.8.0.20130111070250 lib/fog/aws/models/rds/snapshot.rb
fog-maestrodev-1.8.0.20130109172219 lib/fog/aws/models/rds/snapshot.rb