Exception: DurableHuggingfaceHub::HfHubHTTPError

Inherits:
DurableHuggingfaceHubError show all
Defined in:
lib/durable_huggingface_hub/errors.rb

Overview

Base class for HTTP-related errors from the HuggingFace Hub API.

This error captures HTTP response details including status code, response body, request ID, and parsed server messages.

Examples:

Accessing error details

begin
  # API call
rescue DurableHuggingfaceHub::HfHubHTTPError => e
  puts "Status: #{e.status_code}"
  puts "Message: #{e.server_message}"
  puts "Request ID: #{e.request_id}"
end

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(message, status_code: nil, response_body: nil, request_id: nil) ⇒ HfHubHTTPError

Creates a new HTTP error.

Parameters:

  • message (String)

    Error message

  • status_code (Integer) (defaults to: nil)

    HTTP status code

  • response_body (String, nil) (defaults to: nil)

    Response body from server

  • request_id (String, nil) (defaults to: nil)

    Request ID for tracking



52
53
54
55
56
57
58
# File 'lib/durable_huggingface_hub/errors.rb', line 52

def initialize(message, status_code: nil, response_body: nil, request_id: nil)
  super(message)
  @status_code = status_code
  @response_body = response_body
  @request_id = request_id
  @server_message = parse_server_message(response_body)
end

Instance Attribute Details

#request_idString? (readonly)

Returns Request ID for tracking purposes.

Returns:

  • (String, nil)

    Request ID for tracking purposes



41
42
43
# File 'lib/durable_huggingface_hub/errors.rb', line 41

def request_id
  @request_id
end

#response_bodyString? (readonly)

Returns Response body from the server.

Returns:

  • (String, nil)

    Response body from the server



38
39
40
# File 'lib/durable_huggingface_hub/errors.rb', line 38

def response_body
  @response_body
end

#server_messageString? (readonly)

Returns Parsed server error message.

Returns:

  • (String, nil)

    Parsed server error message



44
45
46
# File 'lib/durable_huggingface_hub/errors.rb', line 44

def server_message
  @server_message
end

#status_codeInteger (readonly)

Returns HTTP status code.

Returns:

  • (Integer)

    HTTP status code



35
36
37
# File 'lib/durable_huggingface_hub/errors.rb', line 35

def status_code
  @status_code
end