Sha256: a5851330e310749b32a89d00a04c32c847a7cfc1db351f359bbdc49c30af69c9

Contents?: true

Size: 1.45 KB

Versions: 15

Compression:

Stored size: 1.45 KB

Contents

require 'fog/ninefold'
require 'fog/atmos'

module Fog
  module Storage
    class Ninefold < Fog::Storage::Atmos
      STORAGE_HOST = "onlinestorage.ninefold.com" #"api.ninefold.com"
      STORAGE_PATH = "" #"/storage/v1.0"
      STORAGE_PORT = "80" # "443"
      STORAGE_SCHEME = "http" # "https"

      requires :ninefold_storage_token, :ninefold_storage_secret
      recognizes :persistent

      model_path 'fog/atmos/models/storage'
      model       :directory
      collection  :directories
      model       :file
      collection  :files

      module Utils
      end

      class Mock < Fog::Storage::Atmos::Mock
        include Utils

        def initialize(options={})
          @ninefold_storage_token = options[:ninefold_storage_token]
          @ninefold_storage_secret = options[:ninefold_storage_secret]
        end

        def request(options)
          raise "Ninefold Storage mocks not implemented"
        end
      end

      class Real < Fog::Storage::Atmos::Real
        include Utils

        def initialize(options={})
          endpoint = "#{STORAGE_SCHEME}://"\
                     "#{STORAGE_HOST}:"\
                     "#{STORAGE_PORT}"\
                     "#{STORAGE_PATH}"
          options[:atmos_storage_endpoint] = endpoint
          options[:atmos_storage_token] = options[:ninefold_storage_token]
          options[:atmos_storage_secret] = options[:ninefold_storage_secret]
          super(options)
        end
      end
    end
  end
end

Version data entries

15 entries across 15 versions & 4 rubygems

Version Path
vagrant-cloudstack-1.1.0 vendor/bundle/gems/fog-1.22.1/lib/fog/ninefold/storage.rb
fog-1.25.0 lib/fog/ninefold/storage.rb
nsidc-fog-1.24.1 lib/fog/ninefold/storage.rb
fog-1.24.0 lib/fog/ninefold/storage.rb
ns-fog-1.22.11 lib/fog/ninefold/storage.rb
ns-fog-1.22.10 lib/fog/ninefold/storage.rb
ns-fog-1.22.9 lib/fog/ninefold/storage.rb
ns-fog-1.22.8 lib/fog/ninefold/storage.rb
ns-fog-1.22.7 lib/fog/ninefold/storage.rb
ns-fog-1.22.6 lib/fog/ninefold/storage.rb
fog-1.23.0 lib/fog/ninefold/storage.rb
ns-fog-1.22.4 lib/fog/ninefold/storage.rb
ns-fog-1.22.3 lib/fog/ninefold/storage.rb
ns-fog-1.22.2 lib/fog/ninefold/storage.rb
fog-1.22.1 lib/fog/ninefold/storage.rb