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/rummager.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/test_helpers/mapit.rb,
lib/gds_api/test_helpers/router.rb,
lib/gds_api/test_helpers/search.rb,
lib/gds_api/test_helpers/support.rb,
lib/gds_api/test_helpers/rummager.rb,
lib/gds_api/test_helpers/calendars.rb,
lib/gds_api/test_helpers/imminence.rb,
lib/gds_api/test_helpers/worldwide.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/organisations.rb,
lib/gds_api/test_helpers/intent_helpers.rb,
lib/gds_api/test_helpers/publishing_api.rb,
lib/gds_api/performance_platform/data_in.rb,
lib/gds_api/test_helpers/email_alert_api.rb,
lib/gds_api/performance_platform/data_out.rb,
lib/gds_api/test_helpers/common_responses.rb,
lib/gds_api/test_helpers/link_checker_api.rb,
lib/gds_api/test_helpers/publishing_api_v2.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/whitehall_admin_api.rb,
lib/gds_api/test_helpers/content_item_helpers.rb,
lib/gds_api/publishing_api/special_route_publisher.rb,
lib/gds_api/test_helpers/performance_platform/data_in.rb,
lib/gds_api/test_helpers/performance_platform/data_out.rb

Defined Under Namespace

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

Constant Summary collapse

VERSION =
'59.5.1'.freeze

Class Method Summary collapse

Class Method Details

.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



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

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:



40
41
42
# File 'lib/gds_api.rb', line 40

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



50
51
52
53
54
55
# File 'lib/gds_api.rb', line 50

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



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

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

.imminence(options = {}) ⇒ GdsApi::Imminence

Creates a GdsApi::Imminence adapter

Returns:



73
74
75
# File 'lib/gds_api.rb', line 73

def self.imminence(options = {})
  GdsApi::Imminence.new(Plek.find('imminence'), options)
end

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

Creates a GdsApi::LicenceApplication



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

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



90
91
92
93
94
95
# File 'lib/gds_api.rb', line 90

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



100
101
102
# File 'lib/gds_api.rb', line 100

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

.mapit(options = {}) ⇒ GdsApi::Mapit

Creates a GdsApi::Mapit adapter

Returns:



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

def self.mapit(options = {})
  GdsApi::Mapit.new(Plek.find('mapit'), 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:



117
118
119
# File 'lib/gds_api.rb', line 117

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 on a whitehall-admin host



125
126
127
# File 'lib/gds_api.rb', line 125

def self.organisations(options = {})
  GdsApi::Organisations.new(Plek.new.website_root, 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



135
136
137
138
139
140
# File 'lib/gds_api.rb', line 135

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

.publishing_api_v2(options = {}) ⇒ GdsApi::PublishingApiV2

Creates a GdsApi::PublishingApiV2 adapter

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



148
149
150
151
152
153
# File 'lib/gds_api.rb', line 148

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

.router(options = {}) ⇒ GdsApi::Router

Creates a GdsApi::Router adapter for communicating with Router API

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

Returns:



161
162
163
164
165
166
# File 'lib/gds_api.rb', line 161

def self.router(options = {})
  GdsApi::Router.new(
    Plek.find('router-api'),
    { bearer_token: ENV['ROUTER_API_BEARER_TOKEN'] }.merge(options),
  )
end

.rummager(options = {}) ⇒ GdsApi::Rummager

Creates a GdsApi::Rummager adapter to access via a rummager.* hostname

Returns:



171
172
173
# File 'lib/gds_api.rb', line 171

def self.rummager(options = {})
  GdsApi::Rummager.new(Plek.find('search'), options)
end

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

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

Returns:



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

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

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

Creates a GdsApi::Support adapter

Returns:



185
186
187
# File 'lib/gds_api.rb', line 185

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:



195
196
197
198
199
200
# File 'lib/gds_api.rb', line 195

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-admin host

Returns:



206
207
208
# File 'lib/gds_api.rb', line 206

def self.worldwide(options = {})
  GdsApi::Worldwide.new(Plek.find('whitehall-admin'), options)
end