Sha256: 8397fbb1e99310b0bae86a8fc95db1657982ecd59b07cfd9a11a65d8baa6d61a

Contents?: true

Size: 806 Bytes

Versions: 1

Compression:

Stored size: 806 Bytes

Contents

# frozen_string_literal: true

require 'proxes/request'
require 'proxes/policies/request/index_policy'

module ProxES
  class Request
    class Index < Request
      attr_reader :index, :type, :id

      def index=(idx)
        @index = idx
        self.path_info = '/' + [index, type, id].compact
                                                .map { |v| v.is_a?(Array) ? v.join(',') : v }
                                                .select { |v| !v.nil? && v != '' }.join('/')
      end

      def endpoint
        nil
      end

      def parse
        @index ||= check_part(path_parts[0])
        @type ||= check_part(path_parts[1])
        @id ||= check_part(path_parts[2])
      end

      def indices?
        true
      end

      def indices
        @index || []
      end
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
proxes-0.10.1 lib/proxes/request/index.rb