Module: GdsApi

Defined in:
lib/gds_api.rb,
lib/gds_api/search.rb,
lib/gds_api/railtie.rb,
lib/gds_api/version.rb,
lib/gds_api/response.rb,
lib/gds_api/exceptions.rb,
lib/gds_api/json_client.rb,
lib/gds_api/govuk_headers.rb,
lib/gds_api/list_response.rb,
lib/gds_api/search_api_v2.rb,
lib/gds_api/test_helpers/search.rb,
lib/gds_api/test_helpers/calendars.rb,
lib/gds_api/test_helpers/worldwide.rb,
lib/gds_api/test_helpers/account_api.rb,
lib/gds_api/test_helpers/support_api.rb,
lib/gds_api/test_helpers/asset_manager.rb,
lib/gds_api/test_helpers/content_store.rb,
lib/gds_api/test_helpers/locations_api.rb,
lib/gds_api/test_helpers/organisations.rb,
lib/gds_api/test_helpers/places_manager.rb,
lib/gds_api/test_helpers/publishing_api.rb,
lib/gds_api/test_helpers/email_alert_api.rb,
lib/gds_api/test_helpers/common_responses.rb,
lib/gds_api/test_helpers/link_checker_api.rb,
lib/gds_api/middleware/govuk_header_sniffer.rb,
lib/gds_api/test_helpers/licence_application.rb,
lib/gds_api/test_helpers/local_links_manager.rb,
lib/gds_api/test_helpers/content_item_helpers.rb,
lib/gds_api/publishing_api/special_route_publisher.rb

Defined Under Namespace

Modules: ExceptionHandling, TestHelpers Classes: AccountApi, AssetManager, Base, BaseError, Calendars, ContentStore, EmailAlertApi, EndpointNotFound, GovukHeaderSniffer, GovukHeaders, HTTPBadGateway, HTTPBadRequest, HTTPClientError, HTTPConflict, HTTPErrorResponse, HTTPForbidden, HTTPGatewayTimeout, HTTPGone, HTTPIntermittentClientError, HTTPIntermittentServerError, HTTPInternalServerError, HTTPNotFound, HTTPPayloadTooLarge, HTTPServerError, HTTPTooManyRequests, HTTPUnauthorized, HTTPUnavailable, HTTPUnprocessableEntity, InvalidUrl, JsonClient, LicenceApplication, LinkCheckerApi, ListResponse, LocalLinksManager, LocationsApi, Maslow, Organisations, PlacesManager, PublishingApi, Railtie, Response, Search, SearchApiV2, SocketErrorException, Support, SupportApi, TimedOutException, Worldwide

Constant Summary collapse

VERSION =
"98.1.0".freeze

Class Method Summary collapse

Class Method Details

.account_api(options = {}) ⇒ GdsApi::AccountApi

Creates a GdsApi::AccountApi adapter

This will set a bearer token if a ACCOUNT_API_BEARER_TOKEN environment variable is set

Returns:



31
32
33
34
35
36
# File 'lib/gds_api.rb', line 31

def self.(options = {})
  GdsApi::AccountApi.new(
    Plek.find("account-api"),
    { bearer_token: ENV["ACCOUNT_API_BEARER_TOKEN"] }.merge(options),
  )
end

.asset_manager(options = {}) ⇒ GdsApi::AssetManager

Creates a GdsApi::AssetManager adapter

This will set a bearer token if a ASSET_MANAGER_BEARER_TOKEN environment variable is set



44
45
46
47
48
49
# File 'lib/gds_api.rb', line 44

def self.asset_manager(options = {})
  GdsApi::AssetManager.new(
    Plek.find("asset-manager"),
    { bearer_token: ENV["ASSET_MANAGER_BEARER_TOKEN"] }.merge(options),
  )
end

.calendars(options = {}) ⇒ GdsApi::Calendars

Creates a GdsApi::Calendars adapter

Returns:



54
55
56
# File 'lib/gds_api.rb', line 54

def self.calendars(options = {})
  GdsApi::Calendars.new(Plek.new.website_root, options)
end

.content_store(options = {}) ⇒ GdsApi::ContentStore

Creates a GdsApi::ContentStore adapter

This will set a bearer token if a CONTENT_STORE_BEARER_TOKEN environment variable is set



64
65
66
67
68
69
# File 'lib/gds_api.rb', line 64

def self.content_store(options = {})
  GdsApi::ContentStore.new(
    Plek.find("content-store"),
    { bearer_token: ENV["CONTENT_STORE_BEARER_TOKEN"] }.merge(options),
  )
end

.email_alert_api(options = {}) ⇒ GdsApi::EmailAlertApi

Creates a GdsApi::EmailAlertApi adapter

This will set a bearer token if a EMAIL_ALERT_API_BEARER_TOKEN environment variable is set



77
78
79
80
81
82
# File 'lib/gds_api.rb', line 77

def self.email_alert_api(options = {})
  GdsApi::EmailAlertApi.new(
    Plek.find("email-alert-api"),
    { bearer_token: ENV["EMAIL_ALERT_API_BEARER_TOKEN"] }.merge(options),
  )
end

.licence_application(options = {}) ⇒ GdsApi::LicenceApplication

Creates a GdsApi::LicenceApplication



94
95
96
# File 'lib/gds_api.rb', line 94

def self.licence_application(options = {})
  GdsApi::LicenceApplication.new(Plek.find("licensify"), options)
end

Creates a GdsApi::LinkCheckerApi adapter

This will set a bearer token if a LINK_CHECKER_API_BEARER_TOKEN environment variable is set



104
105
106
107
108
109
# File 'lib/gds_api.rb', line 104

def self.link_checker_api(options = {})
  GdsApi::LinkCheckerApi.new(
    Plek.find("link-checker-api"),
    { bearer_token: ENV["LINK_CHECKER_API_BEARER_TOKEN"] }.merge(options),
  )
end

Creates a GdsApi::LocalLinksManager adapter



114
115
116
# File 'lib/gds_api.rb', line 114

def self.local_links_manager(options = {})
  GdsApi::LocalLinksManager.new(Plek.find("local-links-manager"), options)
end

.locations_api(options = {}) ⇒ GdsApi::LocationsApi

Creates a GdsApi::LocationsApi adapter



121
122
123
# File 'lib/gds_api.rb', line 121

def self.locations_api(options = {})
  GdsApi::LocationsApi.new(Plek.find("locations-api"), options)
end

.maslow(options = {}) ⇒ GdsApi::Maslow

Creates a GdsApi::Maslow adapter

It’s set to use an external url as an endpoint as the Maslow adapter is used to generate external links

Returns:



131
132
133
# File 'lib/gds_api.rb', line 131

def self.maslow(options = {})
  GdsApi::Maslow.new(Plek.new.external_url_for("maslow"), options)
end

.organisations(options = {}) ⇒ GdsApi::Organisations

Creates a GdsApi::Organisations adapter for accessing Whitehall APIs through the origin, where the requests will be handled by Collections frontend.



140
141
142
# File 'lib/gds_api.rb', line 140

def self.organisations(options = {})
  GdsApi::Organisations.new(Plek.new.website_root, options)
end

.places_manager(options = {}) ⇒ GdsApi::PlacesManager

Creates a GdsApi::PlacesManager adapter



87
88
89
# File 'lib/gds_api.rb', line 87

def self.places_manager(options = {})
  GdsApi::PlacesManager.new(Plek.find("places-manager"), options)
end

.publishing_api(options = {}) ⇒ GdsApi::PublishingApi

Creates a GdsApi::PublishingApi adapter

This will set a bearer token if a PUBLISHING_API_BEARER_TOKEN environment variable is set



150
151
152
153
154
155
# File 'lib/gds_api.rb', line 150

def self.publishing_api(options = {})
  GdsApi::PublishingApi.new(
    Plek.find("publishing-api"),
    { bearer_token: ENV["PUBLISHING_API_BEARER_TOKEN"] }.merge(options),
  )
end

.search(options = {}) ⇒ GdsApi::Search

Creates a GdsApi::Search adapter to access via a search.* hostname

Returns:



160
161
162
# File 'lib/gds_api.rb', line 160

def self.search(options = {})
  GdsApi::Search.new(Plek.find("search-api"), options)
end

.support(options = {}) ⇒ GdsApi::Support

Creates a GdsApi::Support adapter

Returns:



167
168
169
# File 'lib/gds_api.rb', line 167

def self.support(options = {})
  GdsApi::Support.new(Plek.find("support"), options)
end

.support_api(options = {}) ⇒ GdsApi::SupportApi

Creates a GdsApi::SupportApi adapter

This will set a bearer token if a SUPPORT_API_BEARER_TOKEN environment variable is set

Returns:



177
178
179
180
181
182
# File 'lib/gds_api.rb', line 177

def self.support_api(options = {})
  GdsApi::SupportApi.new(
    Plek.find("support-api"),
    { bearer_token: ENV["SUPPORT_API_BEARER_TOKEN"] }.merge(options),
  )
end

.worldwide(options = {}) ⇒ GdsApi::Worldwide

Creates a GdsApi::Worldwide adapter for accessing Whitehall APIs on a whitehall-frontend host

Returns:



188
189
190
# File 'lib/gds_api.rb', line 188

def self.worldwide(options = {})
  GdsApi::Worldwide.new(Plek.new.website_root, options)
end