Sha256: 9dd888145e1b34a0c607860cfde6168349776fc22e8e52686ec26ed1fa99a515

Contents?: true

Size: 600 Bytes

Versions: 1

Compression:

Stored size: 600 Bytes

Contents

module Pupa
  class Processor
    # An JSON document store factory.
    #
    # Heavily inspired by `ActiveSupport::Cache::Store`.
    class DocumentStore
      # Returns a configured JSON document store.
      #
      # @param [String] argument the filesystem directory or Redis address
      #   (e.g. `redis://localhost:6379/0`) in which to dump JSON documents
      # @return a configured JSON document store
      def self.new(argument)
        if argument[%r{\Aredis://}]
          RedisStore.new(argument)
        else
          FileStore.new(argument)
        end
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
pupa-0.0.8 lib/pupa/processor/document_store.rb