Class: Hoodoo::Client::Endpoint::HTTPBased::DescriptionOfRequest

Inherits:
Object
  • Object
show all
Defined in:
lib/hoodoo/client/endpoint/endpoints/http_based.rb

Overview

Describe a request for HTTP-like endpoints.

Instance Attribute Summary collapse

Instance Attribute Details

#actionObject

The action to perform - a Symbol from Hoodoo::Services::Middleware::ALLOWED_ACTIONS.



38
39
40
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 38

def action
  @action
end

#body_hashObject

Optional Hash of body data for actions :create and :update.



111
112
113
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 111

def body_hash
  @body_hash
end

#ca_fileObject

An optional String indicating a relative or absolute file path to the location of a .pem format Certificate Authority file (trust store), which may include multliple certificates. The certificates in the file will be used by Net::HTTP to validate the SSL Ceritificate Chain presented by remote servers, when calling endpoints over HTTPS with Hoodoo::Client.

Default nil value should be used in nearly all cases and uses Ruby OpenSSL defaults which are generally Operating System provided.



71
72
73
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 71

def ca_file
  @ca_file
end

#discovery_resultObject

A Hoodoo::Services::Discovery “For…” family member instance giving information required to ‘find’ the target resource. The required class instance depends upon the endpoint in use.



44
45
46
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 44

def discovery_result
  @discovery_result
end

#endpoint_uriObject

The full HTTP URI (or equivalent HTTP URI for HTTP-like, but non-HTTP systems like AMQP) at which the endpoint is found. Excludes any query string or resource identifier portion (it is the “list” action URI without query data, in essence)



51
52
53
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 51

def endpoint_uri
  @endpoint_uri
end

#http_open_timeoutObject

Optional Float indicating the Net::HTTP open timeout value.

This is a value in seconds (default 60) for which the client will wait while attempting to connect to a server.

If the connection attempt is still running after the timeout, the request is aborted and a platform.timeout error returned.

See also #http_timeout.

This operates at the HTTP transport level and is independent of any higher level timeouts that might be set up.



103
104
105
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 103

def http_open_timeout
  @http_open_timeout
end

#http_timeoutObject

Optional Float indicating the Net::HTTP read timeout value.

This is a value in seconds (default 60) for which the client will wait while attempting to read data from a server in any individual TCP read operation. The timeout becomes active immediately after a server connection is established.

If a read attempt is still running after the timeout, the request is aborted and a platform.timeout error returned.

See also #http_open_timeout.

This operates at the HTTP transport level and is independent of any higher level timeouts that might be set up.



88
89
90
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 88

def http_timeout
  @http_timeout
end

#identObject

Optional resource identifier for actions :show, :update and :delete:



116
117
118
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 116

def ident
  @ident
end

#proxy_uriObject

Full URI (as a URI object) of an HTTP proxy to use as an override to ENV['HTTP_PROXY'] which Ruby itself will otherwise read. Will be nil for no proxy override.



57
58
59
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 57

def proxy_uri
  @proxy_uri
end

#query_hashObject

Optional Hash of query data.



107
108
109
# File 'lib/hoodoo/client/endpoint/endpoints/http_based.rb', line 107

def query_hash
  @query_hash
end