Class: PaypalAPI::Request

Inherits:
Object
  • Object
show all
Defined in:
lib/paypal-api/request.rb

Overview

Builds PaypalAPI::Request:

  • assigns query params

  • assigns body params

  • assigns Authentication header

  • assigns paypal-request-id header

  • assigns content-type header

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(client, request_type, path, body: nil, query: nil, headers: nil) ⇒ Request

Initializes Request object

Parameters:

  • client (Client)

    PaypalAPI client

  • request_type (Class)

    One of: Net::HTTP::Post, Net::HTTP::Get, Net::HTTP::Put, Net::HTTP::Patch, Net::HTTP::Delete

  • path (String)

    Request path

  • query (Hash, nil) (defaults to: nil)

    Request query

  • body (Hash, nil) (defaults to: nil)

    Request body

  • headers (Hash, nil) (defaults to: nil)

    Request headers



40
41
42
43
44
# File 'lib/paypal-api/request.rb', line 40

def initialize(client, request_type, path, body: nil, query: nil, headers: nil)
  @client = client
  @http_request = build_http_request(request_type, path, body: body, query: query, headers: headers)
  @context = nil
end

Instance Attribute Details

#clientClient (readonly)

Returns Current PaypalAPI Client.

Returns:

  • (Client)

    Current PaypalAPI Client



17
18
19
# File 'lib/paypal-api/request.rb', line 17

def client
  @client
end

#contextHash, ...

Returns Custom context that can be set/changed in callbacks.

Returns:

  • (Hash, nil, Object)

    Custom context that can be set/changed in callbacks



23
24
25
# File 'lib/paypal-api/request.rb', line 23

def context
  @context
end

#http_requestNet::HTTPRequest (readonly)

Returns Generated Net::HTTPRequest.

Returns:

  • (Net::HTTPRequest)

    Generated Net::HTTPRequest



20
21
22
# File 'lib/paypal-api/request.rb', line 20

def http_request
  @http_request
end

Instance Method Details

#bodyString

Returns HTTP request body.

Returns:

  • (String)

    HTTP request body



63
64
65
# File 'lib/paypal-api/request.rb', line 63

def body
  http_request.body
end

#headersHash

Returns HTTP request headers.

Returns:

  • (Hash)

    HTTP request headers



68
69
70
# File 'lib/paypal-api/request.rb', line 68

def headers
  http_request.each_header.to_h
end

#methodString

Returns HTTP request method name.

Returns:

  • (String)

    HTTP request method name



48
49
50
# File 'lib/paypal-api/request.rb', line 48

def method
  http_request.method
end

#pathString

Returns HTTP request method name.

Returns:

  • (String)

    HTTP request method name



53
54
55
# File 'lib/paypal-api/request.rb', line 53

def path
  http_request.path
end

#uriURI

Returns HTTP request URI.

Returns:

  • (URI)

    HTTP request URI



58
59
60
# File 'lib/paypal-api/request.rb', line 58

def uri
  http_request.uri
end