Sha256: 2b589b8e6297d52683425ae4f45f9495d61b96254dce6f85ecab32b6708909c0

Contents?: true

Size: 951 Bytes

Versions: 42

Compression:

Stored size: 951 Bytes

Contents

# frozen_string_literal: true

require "fmrest/token_store/base"
require "moneta"

module FmRest
  module TokenStore
    class Moneta < Base
      DEFAULT_ADAPTER = :Memory
      DEFAULT_PREFIX = "fmrest-token:".freeze

      attr_reader :moneta

      # @param options [Hash]
      #   Options to pass to `Moneta.new`
      # @option options [Symbol] :adapter (:Memory)
      #   The Moneta adapter to use
      # @option options [String] :prefix (DEFAULT_PREFIX)
      #   The prefix to use for keys
      def initialize(options = {})
        options = options.dup
        super(options)
        adapter = options.delete(:adapter) || DEFAULT_ADAPTER
        options[:prefix] ||= DEFAULT_PREFIX
        @moneta = ::Moneta.new(adapter, options)
      end

      def load(key)
        moneta[key]
      end

      def delete(key)
        moneta.delete(key)
      end

      def store(key, value)
        moneta[key] = value
      end
    end
  end
end

Version data entries

42 entries across 42 versions & 2 rubygems

Version Path
fmrest-core-0.24.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.23.1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.23.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.22.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.21.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.21.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.20.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.20.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.19.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.19.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.18.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.18.0.rc3 lib/fmrest/token_store/moneta.rb
fmrest-core-0.18.0.rc2 lib/fmrest/token_store/moneta.rb
fmrest-core-0.18.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.17.1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.17.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.17.0.rc1 lib/fmrest/token_store/moneta.rb
fmrest-core-0.16.0 lib/fmrest/token_store/moneta.rb
fmrest-core-0.15.2 lib/fmrest/token_store/moneta.rb
fmrest-core-0.15.1 lib/fmrest/token_store/moneta.rb