Sha256: 3e2fdfcfb6dfe1c4e68416aadeeda26f6ca5d3a98dfa47daaa5441260108f142

Contents?: true

Size: 711 Bytes

Versions: 7

Compression:

Stored size: 711 Bytes

Contents

# frozen_string_literal: true

module Typesense
  class Overrides
    RESOURCE_PATH = '/overrides'

    def initialize(collection_name, api_call)
      @collection_name = collection_name
      @api_call        = api_call
      @overrides       = {}
    end

    def create(params)
      @api_call.put(endpoint_path, params)
    end

    def retrieve
      @api_call.get(endpoint_path)
    end

    def [](override_id)
      @overrides[override_id] ||= Override.new(@collection_name, override_id, @api_call)
    end

    private

    def endpoint_path(operation = nil)
      "#{Collections::RESOURCE_PATH}/#{@collection_name}#{Overrides::RESOURCE_PATH}#{operation.nil? ? '' : "/#{operation}"}"
    end
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
typesense-0.9.0 lib/typesense/overrides.rb
typesense-0.8.0 lib/typesense/overrides.rb
typesense-0.8.0pre lib/typesense/overrides.rb
typesense-0.7.0 lib/typesense/overrides.rb
typesense-0.7.0.pre1 lib/typesense/overrides.rb
typesense-0.7.0.pre0 lib/typesense/overrides.rb
typesense-0.6.0 lib/typesense/overrides.rb