Class: ShafClient

Inherits:
Object
  • Object
show all
Extended by:
HypertextCacheStrategy
Includes:
MimeTypes
Defined in:
lib/shaf_client.rb,
lib/shaf_client/form.rb,
lib/shaf_client/link.rb,
lib/shaf_client/curie.rb,
lib/shaf_client/error.rb,
lib/shaf_client/field.rb,
lib/shaf_client/version.rb,
lib/shaf_client/hal_form.rb,
lib/shaf_client/resource.rb,
lib/shaf_client/alps_json.rb,
lib/shaf_client/api_error.rb,
lib/shaf_client/shaf_form.rb,
lib/shaf_client/mime_types.rb,
lib/shaf_client/problem_json.rb,
lib/shaf_client/status_codes.rb,
lib/shaf_client/base_resource.rb,
lib/shaf_client/test/stubbing.rb,
lib/shaf_client/alps/extension.rb,
lib/shaf_client/empty_resource.rb,
lib/shaf_client/alps/descriptor.rb,
lib/shaf_client/resource_mapper.rb,
lib/shaf_client/content_type_map.rb,
lib/shaf_client/unknown_resource.rb,
lib/shaf_client/resource_extension.rb,
lib/shaf_client/middleware/redirect.rb,
lib/shaf_client/resource_extension/base.rb,
lib/shaf_client/hypertext_cache_strategy.rb,
lib/shaf_client/resource_extension/alps_http_method.rb

Defined Under Namespace

Modules: Alps, HypertextCacheStrategy, Middleware, MimeTypes, ResourceExtension, ResourceMapper, StatusCodes, Test Classes: AlpsJson, AmbiguousRelError, ApiError, BaseResource, ContentTypeMap, Curie, EmptyResource, Error, Field, Form, HalForm, Link, ProblemJson, Resource, ShafForm, UnSupportedContentType, UnknownResource

Constant Summary collapse

DEFAULT_ADAPTER =
:net_http
DEFAULT_ACCEPT_HEADER =
[
  MIME_TYPE_HAL,
  MIME_TYPE_PROBLEM_JSON,
  MIME_TYPE_ALPS_JSON,
  '*/*;q=0.8',
].join(', ')
VERSION =
"1.1.0"

Constants included from HypertextCacheStrategy

HypertextCacheStrategy::AVAILABLE_CACHE_STRATEGIES

Constants included from MimeTypes

MimeTypes::MIME_TYPE_ALPS_JSON, MimeTypes::MIME_TYPE_HAL, MimeTypes::MIME_TYPE_JSON, MimeTypes::MIME_TYPE_PROBLEM_JSON

Instance Method Summary collapse

Methods included from HypertextCacheStrategy

cacheable?, default_http_status, default_hypertext_cache_strategy, default_hypertext_cache_strategy=, fetch_headers?

Constructor Details

#initialize(root_uri, **options) ⇒ ShafClient

Returns a new instance of ShafClient.



36
37
38
39
40
41
42
43
# File 'lib/shaf_client.rb', line 36

def initialize(root_uri, **options)
  @root_uri = root_uri.dup
  @options = options

  setup_default_headers
  setup_basic_auth
  setup_client
end

Instance Method Details

#get_root(**options) ⇒ Object



45
46
47
# File 'lib/shaf_client.rb', line 45

def get_root(**options)
  get(@root_uri, **options)
end