gds-api-adapters 57.3.1 → 57.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: f426ff2a98cd1a1a089d806d4d6d36ecf14d3bc5c85f774a87e77926a1fb56c1
4
- data.tar.gz: 0cf2f63553df7e640b20f7848e284fbb0042d48b08a955d005be6b58c4a47b72
3
+ metadata.gz: 98f6d50e09a673f3d635d13d13da68c1c862813aec0370aae6fc1ed7560b1d13
4
+ data.tar.gz: ab20464e5ae9434f97a7368ff6d66e69240077daf7ac572634a9a34d6c458787
5
5
  SHA512:
6
- metadata.gz: 9758e78184a4a7449b7d14ee00471715efc302168b850cbe066dde1d70e5456bdec73aca816844822f5a6bb6bd134cf3861093571113d62e799008a7bb68c946
7
- data.tar.gz: 37565fb17434110bab643b8f9f4fe494b3ffb877a1cef9b3afa5d0ec88ccbfb498f4e83af9dfeab009adb58d3476985a850c25b033795772b6fc26e30ba04304
6
+ metadata.gz: '09253066aef155ced752a0c50305caa1ade28432c7675adecf827b63b2b715e7ad085a48df8561157aafcfb8e16f3dd0c0ecb8b15bbc0a5be90cebde581e2789'
7
+ data.tar.gz: 77deeb7ae44f867c919656093a3c4fe27eb31f26398df38be67df639a4cbe23b27c58692dee605cab2a5c4403f8a2b206fe7fbf8e579cbc7651afae40e97d9ef
@@ -106,6 +106,24 @@ class GdsApi::PublishingApiV2 < GdsApi::Base
106
106
  post_json(publish_url(content_id), params)
107
107
  end
108
108
 
109
+ # Republish a content item
110
+ #
111
+ # The publishing-api will "republish" a live edition. This can be used to remove an unpublishing or to
112
+ # re-send a published edition downstream
113
+ #
114
+ # @param content_id [UUID]
115
+ # @param options [Hash]
116
+ # @option options [String] locale The language, defaults to 'en' in publishing-api.
117
+ #
118
+ # @see ...
119
+ def republish(content_id, options = {})
120
+ optional_keys = %i[locale previous_version]
121
+
122
+ params = merge_optional_keys({}, options, optional_keys)
123
+
124
+ post_json(republish_url(content_id), params)
125
+ end
126
+
109
127
  # Import content into the publishing API
110
128
  #
111
129
  # The publishing-api will delete any content which has the content
@@ -447,6 +465,11 @@ private
447
465
  "#{endpoint}/v2/content/#{content_id}/publish"
448
466
  end
449
467
 
468
+ def republish_url(content_id)
469
+ validate_content_id(content_id)
470
+ "#{endpoint}/v2/content/#{content_id}/republish"
471
+ end
472
+
450
473
  def unpublish_url(content_id)
451
474
  validate_content_id(content_id)
452
475
  "#{endpoint}/v2/content/#{content_id}/unpublish"
@@ -84,6 +84,21 @@ module GdsApi
84
84
  stub_request(:post, url).with(body: body).to_return(response)
85
85
  end
86
86
 
87
+ # Stub a POST /v2/content/:content_id/republish request
88
+ #
89
+ # @param content_id [UUID]
90
+ # @param body [String]
91
+ # @param response_hash [Hash]
92
+ def stub_publishing_api_republish(content_id, body = {}, response_hash = {})
93
+ url = PUBLISHING_API_V2_ENDPOINT + "/content/#{content_id}/republish"
94
+ response = {
95
+ status: 200,
96
+ body: '{}',
97
+ headers: { "Content-Type" => "application/json; charset=utf-8" }
98
+ }.merge(response_hash)
99
+ stub_request(:post, url).with(body: body).to_return(response)
100
+ end
101
+
87
102
  # Stub a POST /v2/content/:content_id/unpublish request
88
103
  #
89
104
  # @param content_id [UUID]
@@ -143,6 +158,11 @@ module GdsApi
143
158
  stub_request(:post, %r{\A#{PUBLISHING_API_V2_ENDPOINT}/content/.*/publish})
144
159
  end
145
160
 
161
+ # Stub any POST /v2/content/*/publish request
162
+ def stub_any_publishing_api_republish
163
+ stub_request(:post, %r{\A#{PUBLISHING_API_V2_ENDPOINT}/content/.*/republish})
164
+ end
165
+
146
166
  # Stub any POST /v2/content/*/unpublish request
147
167
  def stub_any_publishing_api_unpublish
148
168
  stub_request(:post, %r{\A#{PUBLISHING_API_V2_ENDPOINT}/content/.*/unpublish})
@@ -1,3 +1,3 @@
1
1
  module GdsApi
2
- VERSION = '57.3.1'.freeze
2
+ VERSION = '57.4.0'.freeze
3
3
  end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: gds-api-adapters
3
3
  version: !ruby/object:Gem::Version
4
- version: 57.3.1
4
+ version: 57.4.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - GOV.UK Dev
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2019-01-30 00:00:00.000000000 Z
11
+ date: 2019-02-07 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: addressable