lockss-pyclient 0.1.0.dev1__py3-none-any.whl

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.
Files changed (148) hide show
  1. lockss/pyclient/__init__.py +67 -0
  2. lockss/pyclient/config/__init__.py +42 -0
  3. lockss/pyclient/config/api/__init__.py +12 -0
  4. lockss/pyclient/config/api/aus_api.py +2195 -0
  5. lockss/pyclient/config/api/config_api.py +718 -0
  6. lockss/pyclient/config/api/plugins_api.py +128 -0
  7. lockss/pyclient/config/api/status_api.py +120 -0
  8. lockss/pyclient/config/api/tdb_api.py +318 -0
  9. lockss/pyclient/config/api/users_api.py +516 -0
  10. lockss/pyclient/config/api/utils_api.py +128 -0
  11. lockss/pyclient/config/api_client.py +632 -0
  12. lockss/pyclient/config/configuration.py +254 -0
  13. lockss/pyclient/config/models/__init__.py +30 -0
  14. lockss/pyclient/config/models/api_status.py +344 -0
  15. lockss/pyclient/config/models/au_configuration.py +142 -0
  16. lockss/pyclient/config/models/au_status.py +113 -0
  17. lockss/pyclient/config/models/au_ws_result.py +113 -0
  18. lockss/pyclient/config/models/auids_body.py +168 -0
  19. lockss/pyclient/config/models/check_substance_result.py +212 -0
  20. lockss/pyclient/config/models/content_configuration_result.py +200 -0
  21. lockss/pyclient/config/models/file_section_name_body.py +113 -0
  22. lockss/pyclient/config/models/platform_configuration_ws_result.py +113 -0
  23. lockss/pyclient/config/models/plugin_ws_result.py +345 -0
  24. lockss/pyclient/config/models/request_au_control_result.py +171 -0
  25. lockss/pyclient/config/models/tdb_au_ws_result.py +360 -0
  26. lockss/pyclient/config/models/tdb_publisher_ws_result.py +113 -0
  27. lockss/pyclient/config/models/tdb_title_ws_result.py +390 -0
  28. lockss/pyclient/config/rest.py +317 -0
  29. lockss/pyclient/crawler/__init__.py +45 -0
  30. lockss/pyclient/crawler/api/__init__.py +10 -0
  31. lockss/pyclient/crawler/api/crawlers_api.py +215 -0
  32. lockss/pyclient/crawler/api/crawls_api.py +952 -0
  33. lockss/pyclient/crawler/api/jobs_api.py +504 -0
  34. lockss/pyclient/crawler/api/status_api.py +120 -0
  35. lockss/pyclient/crawler/api/ws_api.py +128 -0
  36. lockss/pyclient/crawler/api_client.py +632 -0
  37. lockss/pyclient/crawler/configuration.py +254 -0
  38. lockss/pyclient/crawler/models/__init__.py +35 -0
  39. lockss/pyclient/crawler/models/api_status.py +344 -0
  40. lockss/pyclient/crawler/models/counter.py +142 -0
  41. lockss/pyclient/crawler/models/crawl_desc.py +344 -0
  42. lockss/pyclient/crawler/models/crawl_job.py +280 -0
  43. lockss/pyclient/crawler/models/crawl_pager.py +140 -0
  44. lockss/pyclient/crawler/models/crawl_status.py +780 -0
  45. lockss/pyclient/crawler/models/crawl_ws_result.py +814 -0
  46. lockss/pyclient/crawler/models/crawl_ws_result_pages_with_errors.py +162 -0
  47. lockss/pyclient/crawler/models/crawler_config.py +142 -0
  48. lockss/pyclient/crawler/models/crawler_status.py +279 -0
  49. lockss/pyclient/crawler/models/crawler_statuses.py +112 -0
  50. lockss/pyclient/crawler/models/error_result.py +164 -0
  51. lockss/pyclient/crawler/models/job_pager.py +140 -0
  52. lockss/pyclient/crawler/models/job_status.py +147 -0
  53. lockss/pyclient/crawler/models/mime_counter.py +169 -0
  54. lockss/pyclient/crawler/models/page_info.py +228 -0
  55. lockss/pyclient/crawler/models/url_error.py +148 -0
  56. lockss/pyclient/crawler/models/url_info.py +167 -0
  57. lockss/pyclient/crawler/models/url_pager.py +140 -0
  58. lockss/pyclient/crawler/rest.py +317 -0
  59. lockss/pyclient/md/__init__.py +36 -0
  60. lockss/pyclient/md/api/__init__.py +9 -0
  61. lockss/pyclient/md/api/mdupdates_api.py +508 -0
  62. lockss/pyclient/md/api/metadata_api.py +136 -0
  63. lockss/pyclient/md/api/status_api.py +120 -0
  64. lockss/pyclient/md/api/urls_api.py +224 -0
  65. lockss/pyclient/md/api_client.py +632 -0
  66. lockss/pyclient/md/configuration.py +254 -0
  67. lockss/pyclient/md/models/__init__.py +27 -0
  68. lockss/pyclient/md/models/api_status.py +344 -0
  69. lockss/pyclient/md/models/au.py +169 -0
  70. lockss/pyclient/md/models/au_metadata_page_info.py +140 -0
  71. lockss/pyclient/md/models/error_result.py +164 -0
  72. lockss/pyclient/md/models/item_metadata.py +196 -0
  73. lockss/pyclient/md/models/job.py +280 -0
  74. lockss/pyclient/md/models/job_page_info.py +140 -0
  75. lockss/pyclient/md/models/metadata_update_spec.py +142 -0
  76. lockss/pyclient/md/models/page_info.py +228 -0
  77. lockss/pyclient/md/models/status.py +142 -0
  78. lockss/pyclient/md/models/url_info.py +142 -0
  79. lockss/pyclient/md/rest.py +317 -0
  80. lockss/pyclient/poller/__init__.py +54 -0
  81. lockss/pyclient/poller/api/__init__.py +13 -0
  82. lockss/pyclient/poller/api/export_api.py +156 -0
  83. lockss/pyclient/poller/api/hash_api.py +413 -0
  84. lockss/pyclient/poller/api/import_api.py +157 -0
  85. lockss/pyclient/poller/api/poll_detail_api.py +374 -0
  86. lockss/pyclient/poller/api/poller_polls_api.py +223 -0
  87. lockss/pyclient/poller/api/repo_api.py +223 -0
  88. lockss/pyclient/poller/api/service_api.py +694 -0
  89. lockss/pyclient/poller/api/voter_polls_api.py +223 -0
  90. lockss/pyclient/poller/api_client.py +632 -0
  91. lockss/pyclient/poller/configuration.py +254 -0
  92. lockss/pyclient/poller/models/__init__.py +41 -0
  93. lockss/pyclient/poller/models/api_status.py +344 -0
  94. lockss/pyclient/poller/models/aus_import_body.py +199 -0
  95. lockss/pyclient/poller/models/cached_uri_set_spec.py +169 -0
  96. lockss/pyclient/poller/models/error_result.py +164 -0
  97. lockss/pyclient/poller/models/hasher_ws_params.py +432 -0
  98. lockss/pyclient/poller/models/link_desc.py +141 -0
  99. lockss/pyclient/poller/models/page_desc.py +227 -0
  100. lockss/pyclient/poller/models/peer_data.py +638 -0
  101. lockss/pyclient/poller/models/peer_ws_result.py +113 -0
  102. lockss/pyclient/poller/models/poll_desc.py +285 -0
  103. lockss/pyclient/poller/models/poll_ws_result.py +142 -0
  104. lockss/pyclient/poller/models/poller_detail.py +613 -0
  105. lockss/pyclient/poller/models/poller_pager.py +139 -0
  106. lockss/pyclient/poller/models/poller_summary.py +452 -0
  107. lockss/pyclient/poller/models/repair_data.py +176 -0
  108. lockss/pyclient/poller/models/repair_pager.py +139 -0
  109. lockss/pyclient/poller/models/repair_queue.py +249 -0
  110. lockss/pyclient/poller/models/repository_space_ws_result.py +113 -0
  111. lockss/pyclient/poller/models/repository_ws_result.py +113 -0
  112. lockss/pyclient/poller/models/tally_data.py +471 -0
  113. lockss/pyclient/poller/models/url_pager.py +139 -0
  114. lockss/pyclient/poller/models/vote_ws_result.py +142 -0
  115. lockss/pyclient/poller/models/voter_detail.py +701 -0
  116. lockss/pyclient/poller/models/voter_pager.py +139 -0
  117. lockss/pyclient/poller/models/voter_summary.py +284 -0
  118. lockss/pyclient/poller/rest.py +317 -0
  119. lockss/pyclient/rs/__init__.py +41 -0
  120. lockss/pyclient/rs/api/__init__.py +10 -0
  121. lockss/pyclient/rs/api/artifacts_api.py +988 -0
  122. lockss/pyclient/rs/api/aus_api.py +334 -0
  123. lockss/pyclient/rs/api/repo_api.py +379 -0
  124. lockss/pyclient/rs/api/status_api.py +120 -0
  125. lockss/pyclient/rs/api/wayback_api.py +386 -0
  126. lockss/pyclient/rs/api_client.py +632 -0
  127. lockss/pyclient/rs/configuration.py +247 -0
  128. lockss/pyclient/rs/models/__init__.py +31 -0
  129. lockss/pyclient/rs/models/api_status.py +344 -0
  130. lockss/pyclient/rs/models/archives_body.py +142 -0
  131. lockss/pyclient/rs/models/artifact.py +344 -0
  132. lockss/pyclient/rs/models/artifact_page_info.py +140 -0
  133. lockss/pyclient/rs/models/artifact_properties.py +344 -0
  134. lockss/pyclient/rs/models/artifacts_body.py +170 -0
  135. lockss/pyclient/rs/models/au_size.py +162 -0
  136. lockss/pyclient/rs/models/auid_page_info.py +140 -0
  137. lockss/pyclient/rs/models/error_result.py +164 -0
  138. lockss/pyclient/rs/models/import_status.py +298 -0
  139. lockss/pyclient/rs/models/page_info.py +229 -0
  140. lockss/pyclient/rs/models/repository_info.py +164 -0
  141. lockss/pyclient/rs/models/repository_statistics.py +112 -0
  142. lockss/pyclient/rs/models/storage_info.py +287 -0
  143. lockss/pyclient/rs/models/streaming_response_body.py +84 -0
  144. lockss/pyclient/rs/rest.py +317 -0
  145. lockss_pyclient-0.1.0.dev1.dist-info/LICENSE +27 -0
  146. lockss_pyclient-0.1.0.dev1.dist-info/METADATA +29 -0
  147. lockss_pyclient-0.1.0.dev1.dist-info/RECORD +148 -0
  148. lockss_pyclient-0.1.0.dev1.dist-info/WHEEL +4 -0
@@ -0,0 +1,386 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ LOCKSS Repository Service REST API
5
+
6
+ REST API of the LOCKSS Repository Service # noqa: E501
7
+
8
+ OpenAPI spec version: 2.0.0
9
+ Contact: lockss-support@lockss.org
10
+ Generated by: https://github.com/swagger-api/swagger-codegen.git
11
+ """
12
+
13
+ from __future__ import absolute_import
14
+
15
+ import re # noqa: F401
16
+
17
+ # python 2 and python 3 compatibility library
18
+ import six
19
+
20
+ from lockss.pyclient.rs.api_client import ApiClient
21
+
22
+
23
+ class WaybackApi(object):
24
+ """NOTE: This class is auto generated by the swagger code generator program.
25
+
26
+ Do not edit the class manually.
27
+ Ref: https://github.com/swagger-api/swagger-codegen
28
+ """
29
+
30
+ def __init__(self, api_client=None):
31
+ if api_client is None:
32
+ api_client = ApiClient()
33
+ self.api_client = api_client
34
+
35
+ def get_cdx_owb(self, namespace, **kwargs): # noqa: E501
36
+ """Get OpenWayback CDX records # noqa: E501
37
+
38
+ Get the OpenWayback CDX records of a URL in a namespace # noqa: E501
39
+ This method makes a synchronous HTTP request by default. To make an
40
+ asynchronous HTTP request, please pass async_req=True
41
+ >>> thread = api.get_cdx_owb(namespace, async_req=True)
42
+ >>> result = thread.get()
43
+
44
+ :param async_req bool
45
+ :param str namespace: Namespace of the artifacts (required)
46
+ :param str q: Query string. Supported fields are url, type (urlqueryprefixquery), offset and limit.
47
+ :param int count: .
48
+ :param int start_page: .
49
+ :param str accept: The Accept header
50
+ :param str accept_encoding: The Accept-Encoding header
51
+ :return: str
52
+ If the method is called asynchronously,
53
+ returns the request thread.
54
+ """
55
+ kwargs['_return_http_data_only'] = True
56
+ if kwargs.get('async_req'):
57
+ return self.get_cdx_owb_with_http_info(namespace, **kwargs) # noqa: E501
58
+ else:
59
+ (data) = self.get_cdx_owb_with_http_info(namespace, **kwargs) # noqa: E501
60
+ return data
61
+
62
+ def get_cdx_owb_with_http_info(self, namespace, **kwargs): # noqa: E501
63
+ """Get OpenWayback CDX records # noqa: E501
64
+
65
+ Get the OpenWayback CDX records of a URL in a namespace # noqa: E501
66
+ This method makes a synchronous HTTP request by default. To make an
67
+ asynchronous HTTP request, please pass async_req=True
68
+ >>> thread = api.get_cdx_owb_with_http_info(namespace, async_req=True)
69
+ >>> result = thread.get()
70
+
71
+ :param async_req bool
72
+ :param str namespace: Namespace of the artifacts (required)
73
+ :param str q: Query string. Supported fields are url, type (urlqueryprefixquery), offset and limit.
74
+ :param int count: .
75
+ :param int start_page: .
76
+ :param str accept: The Accept header
77
+ :param str accept_encoding: The Accept-Encoding header
78
+ :return: str
79
+ If the method is called asynchronously,
80
+ returns the request thread.
81
+ """
82
+
83
+ all_params = ['namespace', 'q', 'count', 'start_page', 'accept', 'accept_encoding'] # noqa: E501
84
+ all_params.append('async_req')
85
+ all_params.append('_return_http_data_only')
86
+ all_params.append('_preload_content')
87
+ all_params.append('_request_timeout')
88
+
89
+ params = locals()
90
+ for key, val in six.iteritems(params['kwargs']):
91
+ if key not in all_params:
92
+ raise TypeError(
93
+ "Got an unexpected keyword argument '%s'"
94
+ " to method get_cdx_owb" % key
95
+ )
96
+ params[key] = val
97
+ del params['kwargs']
98
+ # verify the required parameter 'namespace' is set
99
+ if ('namespace' not in params or
100
+ params['namespace'] is None):
101
+ raise ValueError("Missing the required parameter `namespace` when calling `get_cdx_owb`") # noqa: E501
102
+
103
+ collection_formats = {}
104
+
105
+ path_params = {}
106
+ if 'namespace' in params:
107
+ path_params['namespace'] = params['namespace'] # noqa: E501
108
+
109
+ query_params = []
110
+ if 'q' in params:
111
+ query_params.append(('q', params['q'])) # noqa: E501
112
+ if 'count' in params:
113
+ query_params.append(('count', params['count'])) # noqa: E501
114
+ if 'start_page' in params:
115
+ query_params.append(('start_page', params['start_page'])) # noqa: E501
116
+
117
+ header_params = {}
118
+ if 'accept' in params:
119
+ header_params['Accept'] = params['accept'] # noqa: E501
120
+ if 'accept_encoding' in params:
121
+ header_params['Accept-Encoding'] = params['accept_encoding'] # noqa: E501
122
+
123
+ form_params = []
124
+ local_var_files = {}
125
+
126
+ body_params = None
127
+ # HTTP header `Accept`
128
+ header_params['Accept'] = self.api_client.select_header_accept(
129
+ ['application/xml', 'application/json']) # noqa: E501
130
+
131
+ # Authentication setting
132
+ auth_settings = [] # noqa: E501
133
+
134
+ return self.api_client.call_api(
135
+ '/wayback/cdx/owb/{namespace}', 'GET',
136
+ path_params,
137
+ query_params,
138
+ header_params,
139
+ body=body_params,
140
+ post_params=form_params,
141
+ files=local_var_files,
142
+ response_type='str', # noqa: E501
143
+ auth_settings=auth_settings,
144
+ async_req=params.get('async_req'),
145
+ _return_http_data_only=params.get('_return_http_data_only'),
146
+ _preload_content=params.get('_preload_content', True),
147
+ _request_timeout=params.get('_request_timeout'),
148
+ collection_formats=collection_formats)
149
+
150
+ def get_cdx_pywb(self, namespace, **kwargs): # noqa: E501
151
+ """Get PyWayback CDX records # noqa: E501
152
+
153
+ Get the PyWayback CDX records of a URL in a namespace # noqa: E501
154
+ This method makes a synchronous HTTP request by default. To make an
155
+ asynchronous HTTP request, please pass async_req=True
156
+ >>> thread = api.get_cdx_pywb(namespace, async_req=True)
157
+ >>> result = thread.get()
158
+
159
+ :param async_req bool
160
+ :param str namespace: Namespace of the artifacts (required)
161
+ :param str url: The URL for which the CDX records are requested
162
+ :param int limit: .
163
+ :param str match_type:
164
+ :param str sort:
165
+ :param str closest: Timestamp for sort=closest mode
166
+ :param str output: Output format
167
+ :param str fl: Comma-separated list of fields to include in output
168
+ :param str accept: The Accept header
169
+ :param str accept_encoding: The Accept-Encoding header
170
+ :return: str
171
+ If the method is called asynchronously,
172
+ returns the request thread.
173
+ """
174
+ kwargs['_return_http_data_only'] = True
175
+ if kwargs.get('async_req'):
176
+ return self.get_cdx_pywb_with_http_info(namespace, **kwargs) # noqa: E501
177
+ else:
178
+ (data) = self.get_cdx_pywb_with_http_info(namespace, **kwargs) # noqa: E501
179
+ return data
180
+
181
+ def get_cdx_pywb_with_http_info(self, namespace, **kwargs): # noqa: E501
182
+ """Get PyWayback CDX records # noqa: E501
183
+
184
+ Get the PyWayback CDX records of a URL in a namespace # noqa: E501
185
+ This method makes a synchronous HTTP request by default. To make an
186
+ asynchronous HTTP request, please pass async_req=True
187
+ >>> thread = api.get_cdx_pywb_with_http_info(namespace, async_req=True)
188
+ >>> result = thread.get()
189
+
190
+ :param async_req bool
191
+ :param str namespace: Namespace of the artifacts (required)
192
+ :param str url: The URL for which the CDX records are requested
193
+ :param int limit: .
194
+ :param str match_type:
195
+ :param str sort:
196
+ :param str closest: Timestamp for sort=closest mode
197
+ :param str output: Output format
198
+ :param str fl: Comma-separated list of fields to include in output
199
+ :param str accept: The Accept header
200
+ :param str accept_encoding: The Accept-Encoding header
201
+ :return: str
202
+ If the method is called asynchronously,
203
+ returns the request thread.
204
+ """
205
+
206
+ all_params = ['namespace', 'url', 'limit', 'match_type', 'sort', 'closest', 'output', 'fl', 'accept', 'accept_encoding'] # noqa: E501
207
+ all_params.append('async_req')
208
+ all_params.append('_return_http_data_only')
209
+ all_params.append('_preload_content')
210
+ all_params.append('_request_timeout')
211
+
212
+ params = locals()
213
+ for key, val in six.iteritems(params['kwargs']):
214
+ if key not in all_params:
215
+ raise TypeError(
216
+ "Got an unexpected keyword argument '%s'"
217
+ " to method get_cdx_pywb" % key
218
+ )
219
+ params[key] = val
220
+ del params['kwargs']
221
+ # verify the required parameter 'namespace' is set
222
+ if ('namespace' not in params or
223
+ params['namespace'] is None):
224
+ raise ValueError("Missing the required parameter `namespace` when calling `get_cdx_pywb`") # noqa: E501
225
+
226
+ collection_formats = {}
227
+
228
+ path_params = {}
229
+ if 'namespace' in params:
230
+ path_params['namespace'] = params['namespace'] # noqa: E501
231
+
232
+ query_params = []
233
+ if 'url' in params:
234
+ query_params.append(('url', params['url'])) # noqa: E501
235
+ if 'limit' in params:
236
+ query_params.append(('limit', params['limit'])) # noqa: E501
237
+ if 'match_type' in params:
238
+ query_params.append(('matchType', params['match_type'])) # noqa: E501
239
+ if 'sort' in params:
240
+ query_params.append(('sort', params['sort'])) # noqa: E501
241
+ if 'closest' in params:
242
+ query_params.append(('closest', params['closest'])) # noqa: E501
243
+ if 'output' in params:
244
+ query_params.append(('output', params['output'])) # noqa: E501
245
+ if 'fl' in params:
246
+ query_params.append(('fl', params['fl'])) # noqa: E501
247
+
248
+ header_params = {}
249
+ if 'accept' in params:
250
+ header_params['Accept'] = params['accept'] # noqa: E501
251
+ if 'accept_encoding' in params:
252
+ header_params['Accept-Encoding'] = params['accept_encoding'] # noqa: E501
253
+
254
+ form_params = []
255
+ local_var_files = {}
256
+
257
+ body_params = None
258
+ # HTTP header `Accept`
259
+ header_params['Accept'] = self.api_client.select_header_accept(
260
+ ['text/plain', 'application/json']) # noqa: E501
261
+
262
+ # Authentication setting
263
+ auth_settings = [] # noqa: E501
264
+
265
+ return self.api_client.call_api(
266
+ '/wayback/cdx/pywb/{namespace}', 'GET',
267
+ path_params,
268
+ query_params,
269
+ header_params,
270
+ body=body_params,
271
+ post_params=form_params,
272
+ files=local_var_files,
273
+ response_type='str', # noqa: E501
274
+ auth_settings=auth_settings,
275
+ async_req=params.get('async_req'),
276
+ _return_http_data_only=params.get('_return_http_data_only'),
277
+ _preload_content=params.get('_preload_content', True),
278
+ _request_timeout=params.get('_request_timeout'),
279
+ collection_formats=collection_formats)
280
+
281
+ def get_warc_archive(self, file_name, **kwargs): # noqa: E501
282
+ """Get a WARC archive # noqa: E501
283
+
284
+ Get the contents of a single WARC record as a WARC archive # noqa: E501
285
+ This method makes a synchronous HTTP request by default. To make an
286
+ asynchronous HTTP request, please pass async_req=True
287
+ >>> thread = api.get_warc_archive(file_name, async_req=True)
288
+ >>> result = thread.get()
289
+
290
+ :param async_req bool
291
+ :param str file_name: Name of the WARC archive (required)
292
+ :param str accept: The Accept header
293
+ :param str accept_encoding: The Accept-Encoding header
294
+ :param str range: The Range header
295
+ :return: str
296
+ If the method is called asynchronously,
297
+ returns the request thread.
298
+ """
299
+ kwargs['_return_http_data_only'] = True
300
+ if kwargs.get('async_req'):
301
+ return self.get_warc_archive_with_http_info(file_name, **kwargs) # noqa: E501
302
+ else:
303
+ (data) = self.get_warc_archive_with_http_info(file_name, **kwargs) # noqa: E501
304
+ return data
305
+
306
+ def get_warc_archive_with_http_info(self, file_name, **kwargs): # noqa: E501
307
+ """Get a WARC archive # noqa: E501
308
+
309
+ Get the contents of a single WARC record as a WARC archive # noqa: E501
310
+ This method makes a synchronous HTTP request by default. To make an
311
+ asynchronous HTTP request, please pass async_req=True
312
+ >>> thread = api.get_warc_archive_with_http_info(file_name, async_req=True)
313
+ >>> result = thread.get()
314
+
315
+ :param async_req bool
316
+ :param str file_name: Name of the WARC archive (required)
317
+ :param str accept: The Accept header
318
+ :param str accept_encoding: The Accept-Encoding header
319
+ :param str range: The Range header
320
+ :return: str
321
+ If the method is called asynchronously,
322
+ returns the request thread.
323
+ """
324
+
325
+ all_params = ['file_name', 'accept', 'accept_encoding', 'range'] # noqa: E501
326
+ all_params.append('async_req')
327
+ all_params.append('_return_http_data_only')
328
+ all_params.append('_preload_content')
329
+ all_params.append('_request_timeout')
330
+
331
+ params = locals()
332
+ for key, val in six.iteritems(params['kwargs']):
333
+ if key not in all_params:
334
+ raise TypeError(
335
+ "Got an unexpected keyword argument '%s'"
336
+ " to method get_warc_archive" % key
337
+ )
338
+ params[key] = val
339
+ del params['kwargs']
340
+ # verify the required parameter 'file_name' is set
341
+ if ('file_name' not in params or
342
+ params['file_name'] is None):
343
+ raise ValueError("Missing the required parameter `file_name` when calling `get_warc_archive`") # noqa: E501
344
+
345
+ collection_formats = {}
346
+
347
+ path_params = {}
348
+ if 'file_name' in params:
349
+ path_params['fileName'] = params['file_name'] # noqa: E501
350
+
351
+ query_params = []
352
+
353
+ header_params = {}
354
+ if 'accept' in params:
355
+ header_params['Accept'] = params['accept'] # noqa: E501
356
+ if 'accept_encoding' in params:
357
+ header_params['Accept-Encoding'] = params['accept_encoding'] # noqa: E501
358
+ if 'range' in params:
359
+ header_params['Range'] = params['range'] # noqa: E501
360
+
361
+ form_params = []
362
+ local_var_files = {}
363
+
364
+ body_params = None
365
+ # HTTP header `Accept`
366
+ header_params['Accept'] = self.api_client.select_header_accept(
367
+ ['application/warc', 'application/json']) # noqa: E501
368
+
369
+ # Authentication setting
370
+ auth_settings = [] # noqa: E501
371
+
372
+ return self.api_client.call_api(
373
+ '/wayback/warcs/{fileName}', 'GET',
374
+ path_params,
375
+ query_params,
376
+ header_params,
377
+ body=body_params,
378
+ post_params=form_params,
379
+ files=local_var_files,
380
+ response_type='str', # noqa: E501
381
+ auth_settings=auth_settings,
382
+ async_req=params.get('async_req'),
383
+ _return_http_data_only=params.get('_return_http_data_only'),
384
+ _preload_content=params.get('_preload_content', True),
385
+ _request_timeout=params.get('_request_timeout'),
386
+ collection_formats=collection_formats)