Sha256: 500b3a8150c15e7652dd11aef12df65488e68f7bacbd894328c5a4da522bc93b

Contents?: true

Size: 703 Bytes

Versions: 12

Compression:

Stored size: 703 Bytes

Contents

module Fog
  module AWS
    class Storage
      class Real
        # Sync clock against S3 to avoid skew errors
        #
        def sync_clock
          response = begin
            Excon.get(sync_clock_url)
          rescue Excon::Errors::HTTPStatusError => error
            error.response
          end
          Fog::Time.now = Time.parse(response.headers['Date'])
        end

        private

        def sync_clock_url
          host = @acceleration ? region_to_host(@region) : @host

          "#{@scheme}://#{host}:#{@port}"
        end
      end # Real

      class Mock # :nodoc:all
        def sync_clock
          true
        end
      end # Mock
    end # Storage
  end # AWS
end # Fog

Version data entries

12 entries across 12 versions & 1 rubygems

Version Path
fog-aws-3.30.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.29.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.28.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.27.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.26.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.25.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.24.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.23.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.22.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.21.1 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.21.0 lib/fog/aws/requests/storage/sync_clock.rb
fog-aws-3.20.0 lib/fog/aws/requests/storage/sync_clock.rb