Sha256: 3252e3e53432ba0625f01057db5881c361177bf20882df624df6016897270978

Contents?: true

Size: 816 Bytes

Versions: 1

Compression:

Stored size: 816 Bytes

Contents

# frozen_string_literal: true

module AssetCloud
  class AssetNotFoundError < StandardError
    def initialize(key, version = nil)
      super(version ? "Could not find version #{version} of asset #{key}" : "Could not find asset #{key}")
    end
  end

  class Bucket
    attr_reader :name
    attr_accessor :cloud

    def initialize(cloud, name)
      @cloud = cloud
      @name = name
    end

    def ls(key = nil)
      raise NotImplementedError
    end

    def read(key)
      raise NotImplementedError
    end

    def write(key, data)
      raise NotImplementedError
    end

    def delete(key)
      raise NotImplementedError
    end

    # versioning
    #
    # implement #read_version(key, version) and #versions(key) in subclasses
    def versioned?
      respond_to?(:read_version)
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
asset_cloud-2.7.2 lib/asset_cloud/bucket.rb