Sha256: 11f87515e6b51b5d2e4bffe56ecb66c53c99c64d0584de8d8e36eed0cdd3faf2

Contents?: true

Size: 1.22 KB

Versions: 21

Compression:

Stored size: 1.22 KB

Contents

require 'fog/core/collection'
require 'fog/google/models/dns/zone'

module Fog
  module DNS
    class Google
      class Changes < Fog::Collection
        model Fog::DNS::Google::Change

        attribute :zone

        ##
        # Enumerates the list of Changes
        #
        # @return [Array<Fog::DNS::Google::Change>] List of Changes resources
        def all
          requires :zone

          data = service.list_changes(zone.identity).body['changes'] || []
          load(data)
        rescue Fog::Errors::NotFound
          []
        end

        ##
        # Fetches the representation of an existing Change
        #
        # @param [String] identity Change identity
        # @return [Fog::DNS::Google::Change] Change resource
        def get(identity)
          requires :zone

          if change = service.get_change(zone.identity, identity).body
            new(change)
          end
        rescue Fog::Errors::NotFound
          nil
        end

        ##
        # Creates a new instance of a Change
        #
        # @return [Fog::DNS::Google::Change] Change resource
        def new(attributes = {})
          requires :zone

          super({ :zone => zone }.merge!(attributes))
        end
      end
    end
  end
end

Version data entries

21 entries across 19 versions & 5 rubygems

Version Path
vagrant-packet-0.1.1 vendor/bundle/ruby/2.5.0/gems/fog-google-0.1.0/lib/fog/google/models/dns/changes.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.4.0/gems/fog-google-0.1.0/lib/fog/google/models/dns/changes.rb
vagrant-packet-0.1.1 vendor/bundle/ruby/2.3.0/gems/fog-google-0.1.0/lib/fog/google/models/dns/changes.rb
fog-google-0.1.3 lib/fog/google/models/dns/changes.rb
fog-google-0.1.2 lib/fog/google/models/dns/changes.rb
fog-google-0.1.1 lib/fog/google/models/dns/changes.rb
fog-google-0.1.0 lib/fog/google/models/dns/changes.rb
fog-google-0.0.9 lib/fog/google/models/dns/changes.rb
vagrant-cloudstack-1.2.0 vendor/bundle/gems/fog-google-0.0.7/lib/fog/google/models/dns/changes.rb
fog-google-0.0.7 lib/fog/google/models/dns/changes.rb
fog-google-0.0.6 lib/fog/google/models/dns/changes.rb
fog-google-0.0.5 lib/fog/google/models/dns/changes.rb
fog-google-0.0.4 lib/fog/google/models/dns/changes.rb
fog-google-0.0.3 lib/fog/google/models/dns/changes.rb
fog-google-0.0.2 lib/fog/google/models/dns/changes.rb
fog-1.29.0 lib/fog/google/models/dns/changes.rb
fog-1.28.0 lib/fog/google/models/dns/changes.rb
fog-1.27.0 lib/fog/google/models/dns/changes.rb
fog-1.26.0 lib/fog/google/models/dns/changes.rb
fog-1.25.0 lib/fog/google/models/dns/changes.rb