Class: Supabase::Postgrest::SingleRequestBuilder

Inherits:
Object
  • Object
show all
Defined in:
lib/supabase/postgrest/request_builder.rb

Overview

Returned by select().single() and rpc().single(); raises if PostgREST doesn’t return exactly one row.

Direct Known Subclasses

RPCFilterRequestBuilder

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(request) ⇒ SingleRequestBuilder

Returns a new instance of SingleRequestBuilder.



428
429
430
# File 'lib/supabase/postgrest/request_builder.rb', line 428

def initialize(request)
  @request = request
end

Instance Attribute Details

#requestObject (readonly)

Returns the value of attribute request.



426
427
428
# File 'lib/supabase/postgrest/request_builder.rb', line 426

def request
  @request
end

Instance Method Details

#executeObject



437
438
439
440
441
442
443
444
# File 'lib/supabase/postgrest/request_builder.rb', line 437

def execute
  response = RequestExec.send_with_retry(@request)
  if (200..299).include?(response.status)
    SingleAPIResponse.from_response(response, request_prefer: @request.headers["Prefer"])
  else
    raise RequestExec.parse_error(response)
  end
end

#retry(enabled) ⇒ Object



432
433
434
435
# File 'lib/supabase/postgrest/request_builder.rb', line 432

def retry(enabled)
  @request.retry_enabled = enabled
  self
end