Module: Dis

Defined in:
lib/dis.rb,
lib/dis/layer.rb,
lib/dis/model.rb,
lib/dis/engine.rb,
lib/dis/errors.rb,
lib/dis/layers.rb,
lib/dis/logging.rb,
lib/dis/storage.rb,
lib/dis/version.rb,
lib/dis/controller.rb,
lib/dis/jobs/evict.rb,
lib/dis/jobs/store.rb,
lib/dis/model/data.rb,
lib/dis/jobs/delete.rb,
lib/dis/response_body.rb,
lib/dis/jobs/change_type.rb,
lib/dis/model/class_methods.rb,
lib/dis/validations/data_presence.rb,
lib/rails/generators/dis/model/model_generator.rb,
lib/rails/generators/dis/install/install_generator.rb

Overview

Dis is a content-addressable store for file uploads in Rails.

Files are stored as binary blobs keyed by the SHA1 digest of their contents, enabling automatic deduplication. Storage is organized in layers (see Layer) that can target local disk or any cloud provider supported by Fog.

Include Model in an ActiveRecord model to get started, and configure layers via Storage.layers.

Defined Under Namespace

Modules: Controller, Errors, Generators, Jobs, Logging, Model, Validations Classes: Engine, Layer, Layers, ResponseBody, Storage

Constant Summary collapse

VERSION =
"2.3.0"

Instance Method Summary collapse

Instance Method Details

#queueString, ...

The ActiveJob queue used by delayed and cache layers. Defaults to nil, which means jobs run on the ActiveJob default queue. Set it to run them on a dedicated queue instead, either directly or with config.dis.queue.

Note that your job backend must be configured to process the queue you choose. Sidekiq, Resque and Que only process a single named queue unless told otherwise.

Examples:

Dis.queue = :dis

Returns:

  • (String, Symbol, nil)

    the queue name



50
# File 'lib/dis.rb', line 50

mattr_accessor :queue