lockss-pyclient 0.1.0.dev1__py3-none-any.whl → 0.1.0.dev3__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.
- lockss/pyclient/__init__.py +8 -29
- lockss/pyclient/__main__.py +37 -0
- lockss/pyclient/_internal_common.py +395 -0
- lockss/pyclient/_internal_config.py +207 -0
- lockss/pyclient/_internal_crawler.py +251 -0
- lockss/pyclient/_internal_md.py +111 -0
- lockss/pyclient/_internal_poller.py +174 -0
- lockss/pyclient/_internal_rs.py +232 -0
- lockss/pyclient/cli.py +839 -0
- lockss/pyclient/config/__init__.py +15 -0
- lockss/pyclient/config/api/aus_api.py +14 -6
- lockss/pyclient/config/api/config_api.py +12 -12
- lockss/pyclient/config/api/utils_api.py +2 -2
- lockss/pyclient/config/configuration.py +1 -1
- lockss/pyclient/config/models/__init__.py +15 -0
- lockss/pyclient/config/models/access_type.py +90 -0
- lockss/pyclient/config/models/au_agreements.py +136 -0
- lockss/pyclient/config/models/au_config_page_info.py +140 -0
- lockss/pyclient/config/models/au_state_bean.py +942 -0
- lockss/pyclient/config/models/au_status.py +837 -8
- lockss/pyclient/config/models/au_suspect_url_versions.py +136 -0
- lockss/pyclient/config/models/check_substance_result.py +6 -22
- lockss/pyclient/config/models/dated_peer_id_set_impl.py +162 -0
- lockss/pyclient/config/models/hash_result.py +136 -0
- lockss/pyclient/config/models/page_info.py +226 -0
- lockss/pyclient/config/models/peer_agreement.py +188 -0
- lockss/pyclient/config/models/peer_agreements.py +136 -0
- lockss/pyclient/config/models/platform_configuration_ws_result.py +421 -8
- lockss/pyclient/config/models/platform_configuration_ws_result_daemon_version.py +188 -0
- lockss/pyclient/config/models/platform_configuration_ws_result_java_version.py +188 -0
- lockss/pyclient/config/models/platform_configuration_ws_result_platform.py +162 -0
- lockss/pyclient/config/models/substance_checker_state.py +91 -0
- lockss/pyclient/config/models/suspect_url_version.py +214 -0
- lockss/pyclient/config/swagger.yaml +2031 -0
- lockss/pyclient/crawler/__init__.py +1 -0
- lockss/pyclient/crawler/api/crawls_api.py +2 -2
- lockss/pyclient/crawler/configuration.py +1 -1
- lockss/pyclient/crawler/models/__init__.py +1 -0
- lockss/pyclient/crawler/models/crawl_desc.py +4 -12
- lockss/pyclient/crawler/models/crawl_kind_enum.py +90 -0
- lockss/pyclient/crawler/models/page_info.py +22 -24
- lockss/pyclient/crawler/swagger.yaml +1197 -0
- lockss/pyclient/md/configuration.py +1 -1
- lockss/pyclient/md/models/page_info.py +22 -24
- lockss/pyclient/md/swagger.yaml +583 -0
- lockss/pyclient/output.py +131 -0
- lockss/pyclient/poller/__init__.py +11 -5
- lockss/pyclient/poller/api/export_api.py +5 -5
- lockss/pyclient/poller/api/hash_api.py +3 -3
- lockss/pyclient/poller/api/poll_detail_api.py +42 -42
- lockss/pyclient/poller/api/poller_polls_api.py +18 -18
- lockss/pyclient/poller/api/service_api.py +2 -2
- lockss/pyclient/poller/api/voter_polls_api.py +18 -18
- lockss/pyclient/poller/configuration.py +1 -1
- lockss/pyclient/poller/models/__init__.py +11 -5
- lockss/pyclient/poller/models/export_file_type_enum.py +93 -0
- lockss/pyclient/poller/models/export_filename_translation_enum.py +91 -0
- lockss/pyclient/poller/models/page_info.py +226 -0
- lockss/pyclient/poller/models/poll_desc.py +3 -11
- lockss/pyclient/poller/models/poll_variant_enum.py +92 -0
- lockss/pyclient/poller/models/poller_page_info.py +140 -0
- lockss/pyclient/poller/models/repair_page_info.py +140 -0
- lockss/pyclient/poller/models/repair_type_enum.py +91 -0
- lockss/pyclient/poller/models/tally_type_enum.py +93 -0
- lockss/pyclient/poller/models/url_page_info.py +140 -0
- lockss/pyclient/poller/models/voter_page_info.py +140 -0
- lockss/pyclient/poller/models/voter_urls_enum.py +92 -0
- lockss/pyclient/poller/swagger.yaml +1658 -0
- lockss/pyclient/rs/__init__.py +6 -0
- lockss/pyclient/rs/api/artifacts_api.py +20 -20
- lockss/pyclient/rs/api/aus_api.py +5 -5
- lockss/pyclient/rs/api/repo_api.py +4 -4
- lockss/pyclient/rs/api/status_api.py +1 -1
- lockss/pyclient/rs/api/wayback_api.py +12 -12
- lockss/pyclient/rs/configuration.py +8 -1
- lockss/pyclient/rs/models/__init__.py +6 -0
- lockss/pyclient/rs/models/artifact.py +111 -81
- lockss/pyclient/rs/models/au_size.py +6 -0
- lockss/pyclient/rs/models/auid_page_info.py +2 -2
- lockss/pyclient/rs/models/bulk_au_op_enum.py +90 -0
- lockss/pyclient/rs/models/include_content_enum.py +91 -0
- lockss/pyclient/rs/models/page_info.py +26 -29
- lockss/pyclient/rs/models/pywb_match_enum.py +93 -0
- lockss/pyclient/rs/models/pywb_output_enum.py +90 -0
- lockss/pyclient/rs/models/pywb_sort_enum.py +91 -0
- lockss/pyclient/rs/models/storage_info.py +131 -80
- lockss/pyclient/rs/models/versions_enum.py +90 -0
- lockss/pyclient/rs/swagger.yaml +1306 -0
- {lockss_pyclient-0.1.0.dev1.dist-info → lockss_pyclient-0.1.0.dev3.dist-info}/METADATA +14 -7
- {lockss_pyclient-0.1.0.dev1.dist-info → lockss_pyclient-0.1.0.dev3.dist-info}/RECORD +93 -45
- {lockss_pyclient-0.1.0.dev1.dist-info → lockss_pyclient-0.1.0.dev3.dist-info}/WHEEL +1 -1
- lockss_pyclient-0.1.0.dev3.dist-info/entry_points.txt +3 -0
- {lockss_pyclient-0.1.0.dev1.dist-info → lockss_pyclient-0.1.0.dev3.dist-info/licenses}/LICENSE +0 -0
|
@@ -46,7 +46,7 @@ class Configuration(six.with_metaclass(TypeWithDefault, object)):
|
|
|
46
46
|
def __init__(self):
|
|
47
47
|
"""Constructor"""
|
|
48
48
|
# Default Base url
|
|
49
|
-
self.host = "
|
|
49
|
+
self.host = "{proto}://{hostname}:{port}/"
|
|
50
50
|
# Temp file folder for downloading files
|
|
51
51
|
self.temp_folder_path = None
|
|
52
52
|
|
|
@@ -29,7 +29,7 @@ class PageInfo(object):
|
|
|
29
29
|
"""
|
|
30
30
|
swagger_types = {
|
|
31
31
|
'total_count': 'int',
|
|
32
|
-
'
|
|
32
|
+
'items_in_page': 'int',
|
|
33
33
|
'continuation_token': 'str',
|
|
34
34
|
'cur_link': 'str',
|
|
35
35
|
'next_link': 'str'
|
|
@@ -37,23 +37,25 @@ class PageInfo(object):
|
|
|
37
37
|
|
|
38
38
|
attribute_map = {
|
|
39
39
|
'total_count': 'totalCount',
|
|
40
|
-
'
|
|
40
|
+
'items_in_page': 'itemsInPage',
|
|
41
41
|
'continuation_token': 'continuationToken',
|
|
42
42
|
'cur_link': 'curLink',
|
|
43
43
|
'next_link': 'nextLink'
|
|
44
44
|
}
|
|
45
45
|
|
|
46
|
-
def __init__(self, total_count=None,
|
|
46
|
+
def __init__(self, total_count=None, items_in_page=None, continuation_token=None, cur_link=None, next_link=None): # noqa: E501
|
|
47
47
|
"""PageInfo - a model defined in Swagger""" # noqa: E501
|
|
48
48
|
self._total_count = None
|
|
49
|
-
self.
|
|
49
|
+
self._items_in_page = None
|
|
50
50
|
self._continuation_token = None
|
|
51
51
|
self._cur_link = None
|
|
52
52
|
self._next_link = None
|
|
53
53
|
self.discriminator = None
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
self.
|
|
54
|
+
if total_count is not None:
|
|
55
|
+
self.total_count = total_count
|
|
56
|
+
self.items_in_page = items_in_page
|
|
57
|
+
if continuation_token is not None:
|
|
58
|
+
self.continuation_token = continuation_token
|
|
57
59
|
self.cur_link = cur_link
|
|
58
60
|
if next_link is not None:
|
|
59
61
|
self.next_link = next_link
|
|
@@ -78,35 +80,33 @@ class PageInfo(object):
|
|
|
78
80
|
:param total_count: The total_count of this PageInfo. # noqa: E501
|
|
79
81
|
:type: int
|
|
80
82
|
"""
|
|
81
|
-
if total_count is None:
|
|
82
|
-
raise ValueError("Invalid value for `total_count`, must not be `None`") # noqa: E501
|
|
83
83
|
|
|
84
84
|
self._total_count = total_count
|
|
85
85
|
|
|
86
86
|
@property
|
|
87
|
-
def
|
|
88
|
-
"""Gets the
|
|
87
|
+
def items_in_page(self):
|
|
88
|
+
"""Gets the items_in_page of this PageInfo. # noqa: E501
|
|
89
89
|
|
|
90
|
-
The number of
|
|
90
|
+
The number of items in page # noqa: E501
|
|
91
91
|
|
|
92
|
-
:return: The
|
|
92
|
+
:return: The items_in_page of this PageInfo. # noqa: E501
|
|
93
93
|
:rtype: int
|
|
94
94
|
"""
|
|
95
|
-
return self.
|
|
95
|
+
return self._items_in_page
|
|
96
96
|
|
|
97
|
-
@
|
|
98
|
-
def
|
|
99
|
-
"""Sets the
|
|
97
|
+
@items_in_page.setter
|
|
98
|
+
def items_in_page(self, items_in_page):
|
|
99
|
+
"""Sets the items_in_page of this PageInfo.
|
|
100
100
|
|
|
101
|
-
The number of
|
|
101
|
+
The number of items in page # noqa: E501
|
|
102
102
|
|
|
103
|
-
:param
|
|
103
|
+
:param items_in_page: The items_in_page of this PageInfo. # noqa: E501
|
|
104
104
|
:type: int
|
|
105
105
|
"""
|
|
106
|
-
if
|
|
107
|
-
raise ValueError("Invalid value for `
|
|
106
|
+
if items_in_page is None:
|
|
107
|
+
raise ValueError("Invalid value for `items_in_page`, must not be `None`") # noqa: E501
|
|
108
108
|
|
|
109
|
-
self.
|
|
109
|
+
self._items_in_page = items_in_page
|
|
110
110
|
|
|
111
111
|
@property
|
|
112
112
|
def continuation_token(self):
|
|
@@ -128,8 +128,6 @@ class PageInfo(object):
|
|
|
128
128
|
:param continuation_token: The continuation_token of this PageInfo. # noqa: E501
|
|
129
129
|
:type: str
|
|
130
130
|
"""
|
|
131
|
-
if continuation_token is None:
|
|
132
|
-
raise ValueError("Invalid value for `continuation_token`, must not be `None`") # noqa: E501
|
|
133
131
|
|
|
134
132
|
self._continuation_token = continuation_token
|
|
135
133
|
|
|
@@ -0,0 +1,583 @@
|
|
|
1
|
+
# Copyright (c) 2000-2026, Board of Trustees of Leland Stanford Jr. University
|
|
2
|
+
#
|
|
3
|
+
# Redistribution and use in source and binary forms, with or without
|
|
4
|
+
# modification, are permitted provided that the following conditions are met:
|
|
5
|
+
#
|
|
6
|
+
# 1. Redistributions of source code must retain the above copyright notice,
|
|
7
|
+
# this list of conditions and the following disclaimer.
|
|
8
|
+
#
|
|
9
|
+
# 2. Redistributions in binary form must reproduce the above copyright notice,
|
|
10
|
+
# this list of conditions and the following disclaimer in the documentation
|
|
11
|
+
# and/or other materials provided with the distribution.
|
|
12
|
+
#
|
|
13
|
+
# 3. Neither the name of the copyright holder nor the names of its contributors
|
|
14
|
+
# may be used to endorse or promote products derived from this software without
|
|
15
|
+
# specific prior written permission.
|
|
16
|
+
#
|
|
17
|
+
# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
|
|
18
|
+
# AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
|
|
19
|
+
# IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
|
|
20
|
+
# ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE
|
|
21
|
+
# LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
|
|
22
|
+
# CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
|
|
23
|
+
# SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS
|
|
24
|
+
# INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN
|
|
25
|
+
# CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE)
|
|
26
|
+
# ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE
|
|
27
|
+
# POSSIBILITY OF SUCH DAMAGE.
|
|
28
|
+
|
|
29
|
+
openapi: 3.0.3
|
|
30
|
+
info:
|
|
31
|
+
title: LOCKSS Metadata Service REST API
|
|
32
|
+
description: REST API of the LOCKSS Metadata Service
|
|
33
|
+
version: 2.0.0
|
|
34
|
+
contact:
|
|
35
|
+
name: LOCKSS Support
|
|
36
|
+
url: http://www.lockss.org/
|
|
37
|
+
email: lockss-support@lockss.org
|
|
38
|
+
license:
|
|
39
|
+
name: BSD-3-Clause
|
|
40
|
+
url: https://opensource.org/licenses/BSD-3-Clause
|
|
41
|
+
servers:
|
|
42
|
+
- url: "{proto}://{hostname}:{port}/"
|
|
43
|
+
description: LOCKSS Metadata Service
|
|
44
|
+
variables:
|
|
45
|
+
proto:
|
|
46
|
+
description: "The protocol (default: http)."
|
|
47
|
+
enum:
|
|
48
|
+
- http
|
|
49
|
+
- https
|
|
50
|
+
default: http
|
|
51
|
+
hostname:
|
|
52
|
+
description: The service host name (or IP address).
|
|
53
|
+
default: localhost
|
|
54
|
+
port:
|
|
55
|
+
description: "The service port (default: 24615)."
|
|
56
|
+
default: 24615
|
|
57
|
+
security:
|
|
58
|
+
- basicAuth: []
|
|
59
|
+
tags:
|
|
60
|
+
- name: mdupdates
|
|
61
|
+
description: Metadata update operations
|
|
62
|
+
- name: metadata
|
|
63
|
+
description: Metadata operations
|
|
64
|
+
- name: status
|
|
65
|
+
description: Status operations
|
|
66
|
+
- name: urls
|
|
67
|
+
description: URL operations
|
|
68
|
+
paths:
|
|
69
|
+
/metadata/aus/{auid}:
|
|
70
|
+
get:
|
|
71
|
+
tags:
|
|
72
|
+
- metadata
|
|
73
|
+
summary: Get the metadata stored for an AU
|
|
74
|
+
description: Get the full metadata stored for an AU given the AU identifier
|
|
75
|
+
or a pageful of the metadata defined by the continuation token and size
|
|
76
|
+
operationId: getMetadataAusAuid
|
|
77
|
+
# new roles: ROLE_CONTENT_ACCESS, ROLE_AU_ADMIN
|
|
78
|
+
parameters:
|
|
79
|
+
- name: auid
|
|
80
|
+
in: path
|
|
81
|
+
description: The identifier of the AU for which the metadata is requested
|
|
82
|
+
required: true
|
|
83
|
+
schema:
|
|
84
|
+
type: string
|
|
85
|
+
- name: limit
|
|
86
|
+
in: query
|
|
87
|
+
description: The number of items per page
|
|
88
|
+
schema:
|
|
89
|
+
type: integer
|
|
90
|
+
default: 50
|
|
91
|
+
- name: continuationToken
|
|
92
|
+
in: query
|
|
93
|
+
description: The continuation token of the next page of metadata to be returned
|
|
94
|
+
schema:
|
|
95
|
+
type: string
|
|
96
|
+
responses:
|
|
97
|
+
200:
|
|
98
|
+
description: The metadata of the specified AU
|
|
99
|
+
content:
|
|
100
|
+
application/json:
|
|
101
|
+
schema:
|
|
102
|
+
$ref: '#/components/schemas/auMetadataPageInfo'
|
|
103
|
+
default:
|
|
104
|
+
description: The resulting error payload.
|
|
105
|
+
content:
|
|
106
|
+
application/json:
|
|
107
|
+
schema:
|
|
108
|
+
$ref: '#/components/schemas/errorResult'
|
|
109
|
+
/urls/openurl:
|
|
110
|
+
get:
|
|
111
|
+
tags:
|
|
112
|
+
- urls
|
|
113
|
+
summary: Performs an OpenURL query
|
|
114
|
+
description: Provides the URL that results from performing an OpenURL query.
|
|
115
|
+
With query parameters inline
|
|
116
|
+
operationId: getUrlsOpenUrl
|
|
117
|
+
# new roles: ROLE_CONTENT_ACCESS, ROLE_AU_ADMIN
|
|
118
|
+
parameters:
|
|
119
|
+
- name: params
|
|
120
|
+
in: query
|
|
121
|
+
description: The OpenURL parameters
|
|
122
|
+
required: true
|
|
123
|
+
style: form
|
|
124
|
+
explode: false
|
|
125
|
+
schema:
|
|
126
|
+
type: array
|
|
127
|
+
items:
|
|
128
|
+
type: string
|
|
129
|
+
responses:
|
|
130
|
+
200:
|
|
131
|
+
description: The data related to the performed OpenURL query
|
|
132
|
+
content:
|
|
133
|
+
application/json:
|
|
134
|
+
schema:
|
|
135
|
+
$ref: '#/components/schemas/urlInfo'
|
|
136
|
+
default:
|
|
137
|
+
description: The resulting error payload.
|
|
138
|
+
content:
|
|
139
|
+
application/json:
|
|
140
|
+
schema:
|
|
141
|
+
$ref: '#/components/schemas/errorResult'
|
|
142
|
+
/urls/doi:
|
|
143
|
+
get:
|
|
144
|
+
tags:
|
|
145
|
+
- urls
|
|
146
|
+
summary: Gets the URL for a DOI
|
|
147
|
+
description: Provides the URL for a DOI given the DOI
|
|
148
|
+
operationId: getUrlsDoi
|
|
149
|
+
# new roles: ROLE_CONTENT_ACCESS, ROLE_AU_ADMIN
|
|
150
|
+
parameters:
|
|
151
|
+
- name: doi
|
|
152
|
+
in: query
|
|
153
|
+
description: The DOI for which the URL is requested
|
|
154
|
+
required: true
|
|
155
|
+
schema:
|
|
156
|
+
type: string
|
|
157
|
+
responses:
|
|
158
|
+
200:
|
|
159
|
+
description: The URL for the specified DOI
|
|
160
|
+
content:
|
|
161
|
+
application/json:
|
|
162
|
+
schema:
|
|
163
|
+
$ref: '#/components/schemas/urlInfo'
|
|
164
|
+
default:
|
|
165
|
+
description: The resulting error payload.
|
|
166
|
+
content:
|
|
167
|
+
application/json:
|
|
168
|
+
schema:
|
|
169
|
+
$ref: '#/components/schemas/errorResult'
|
|
170
|
+
/mdupdates:
|
|
171
|
+
get:
|
|
172
|
+
tags:
|
|
173
|
+
- mdupdates
|
|
174
|
+
summary: Get a list of currently active jobs
|
|
175
|
+
description: Get a list of all currently active jobs or a pageful of the list
|
|
176
|
+
defined by the continuation token and size
|
|
177
|
+
operationId: getMdupdates
|
|
178
|
+
# new roles: ROLE_AU_ADMIN
|
|
179
|
+
parameters:
|
|
180
|
+
- name: limit
|
|
181
|
+
in: query
|
|
182
|
+
description: The number of jobs per page
|
|
183
|
+
schema:
|
|
184
|
+
type: integer
|
|
185
|
+
default: 50
|
|
186
|
+
- name: continuationToken
|
|
187
|
+
in: query
|
|
188
|
+
description: The continuation token of the next page of jobs to be returned
|
|
189
|
+
schema:
|
|
190
|
+
type: string
|
|
191
|
+
responses:
|
|
192
|
+
200:
|
|
193
|
+
description: The requested jobs
|
|
194
|
+
content:
|
|
195
|
+
application/json:
|
|
196
|
+
schema:
|
|
197
|
+
$ref: '#/components/schemas/jobPageInfo'
|
|
198
|
+
default:
|
|
199
|
+
description: The resulting error payload.
|
|
200
|
+
content:
|
|
201
|
+
application/json:
|
|
202
|
+
schema:
|
|
203
|
+
$ref: '#/components/schemas/errorResult'
|
|
204
|
+
post:
|
|
205
|
+
tags:
|
|
206
|
+
- mdupdates
|
|
207
|
+
summary: Perform an AU metadata update operation
|
|
208
|
+
description: Perform an AU metadata update operation given the update specification
|
|
209
|
+
operationId: postMdupdates
|
|
210
|
+
# new roles: ROLE_AU_ADMIN
|
|
211
|
+
parameters:
|
|
212
|
+
- name: force
|
|
213
|
+
in: query
|
|
214
|
+
description: An indication of whether to force the operation regardless of
|
|
215
|
+
the current state of the AU
|
|
216
|
+
schema:
|
|
217
|
+
type: boolean
|
|
218
|
+
default: true
|
|
219
|
+
requestBody:
|
|
220
|
+
description: The information defining the AU metadata update operation
|
|
221
|
+
content:
|
|
222
|
+
application/json:
|
|
223
|
+
schema:
|
|
224
|
+
$ref: '#/components/schemas/metadataUpdateSpec'
|
|
225
|
+
required: true
|
|
226
|
+
responses:
|
|
227
|
+
202:
|
|
228
|
+
description: The job created to perform the AU metadata update operation
|
|
229
|
+
content:
|
|
230
|
+
application/json:
|
|
231
|
+
schema:
|
|
232
|
+
$ref: '#/components/schemas/job'
|
|
233
|
+
default:
|
|
234
|
+
description: The resulting error payload.
|
|
235
|
+
content:
|
|
236
|
+
application/json:
|
|
237
|
+
schema:
|
|
238
|
+
$ref: '#/components/schemas/errorResult'
|
|
239
|
+
x-codegen-request-body-name: metadataUpdateSpec
|
|
240
|
+
delete:
|
|
241
|
+
tags:
|
|
242
|
+
- mdupdates
|
|
243
|
+
summary: Delete all of the currently queued and active jobs
|
|
244
|
+
description: Delete all of the currently queued and active jobs
|
|
245
|
+
operationId: deleteMdupdates
|
|
246
|
+
# new roles: ROLE_AU_ADMIN
|
|
247
|
+
responses:
|
|
248
|
+
200:
|
|
249
|
+
description: Count of jobs successfully deleted
|
|
250
|
+
content:
|
|
251
|
+
application/json:
|
|
252
|
+
schema:
|
|
253
|
+
type: integer
|
|
254
|
+
format: int32
|
|
255
|
+
default:
|
|
256
|
+
description: The resulting error payload.
|
|
257
|
+
content:
|
|
258
|
+
application/json:
|
|
259
|
+
schema:
|
|
260
|
+
$ref: '#/components/schemas/errorResult'
|
|
261
|
+
/mdupdates/{jobid}:
|
|
262
|
+
get:
|
|
263
|
+
tags:
|
|
264
|
+
- mdupdates
|
|
265
|
+
summary: Get a job
|
|
266
|
+
description: Get a job given the job identifier
|
|
267
|
+
operationId: getMdupdatesJobid
|
|
268
|
+
# new roles: ROLE_AU_ADMIN
|
|
269
|
+
parameters:
|
|
270
|
+
- name: jobid
|
|
271
|
+
in: path
|
|
272
|
+
description: The identifier of the requested job
|
|
273
|
+
required: true
|
|
274
|
+
schema:
|
|
275
|
+
type: string
|
|
276
|
+
responses:
|
|
277
|
+
200:
|
|
278
|
+
description: The status of the requested job
|
|
279
|
+
content:
|
|
280
|
+
application/json:
|
|
281
|
+
schema:
|
|
282
|
+
$ref: '#/components/schemas/status'
|
|
283
|
+
default:
|
|
284
|
+
description: The resulting error payload.
|
|
285
|
+
content:
|
|
286
|
+
application/json:
|
|
287
|
+
schema:
|
|
288
|
+
$ref: '#/components/schemas/errorResult'
|
|
289
|
+
delete:
|
|
290
|
+
tags:
|
|
291
|
+
- mdupdates
|
|
292
|
+
summary: Delete a job
|
|
293
|
+
description: Delete a job given the job identifier, stopping any current processing,
|
|
294
|
+
if necessary
|
|
295
|
+
operationId: deleteMdupdatesJobid
|
|
296
|
+
# new roles: ROLE_AU_ADMIN
|
|
297
|
+
parameters:
|
|
298
|
+
- name: jobid
|
|
299
|
+
in: path
|
|
300
|
+
description: The identifier of the job to be deleted
|
|
301
|
+
required: true
|
|
302
|
+
schema:
|
|
303
|
+
type: string
|
|
304
|
+
responses:
|
|
305
|
+
200:
|
|
306
|
+
description: The deleted job
|
|
307
|
+
content:
|
|
308
|
+
application/json:
|
|
309
|
+
schema:
|
|
310
|
+
$ref: '#/components/schemas/job'
|
|
311
|
+
default:
|
|
312
|
+
description: The resulting error payload.
|
|
313
|
+
content:
|
|
314
|
+
application/json:
|
|
315
|
+
schema:
|
|
316
|
+
$ref: '#/components/schemas/errorResult'
|
|
317
|
+
/status:
|
|
318
|
+
get:
|
|
319
|
+
tags:
|
|
320
|
+
- status
|
|
321
|
+
summary: Get the status of the service
|
|
322
|
+
description: Get the status of the service
|
|
323
|
+
operationId: getStatus
|
|
324
|
+
# no credentials required
|
|
325
|
+
responses:
|
|
326
|
+
200:
|
|
327
|
+
description: The status of the service
|
|
328
|
+
content:
|
|
329
|
+
application/json:
|
|
330
|
+
schema:
|
|
331
|
+
$ref: '#/components/schemas/apiStatus'
|
|
332
|
+
default:
|
|
333
|
+
description: The resulting error payload.
|
|
334
|
+
content:
|
|
335
|
+
application/json:
|
|
336
|
+
schema:
|
|
337
|
+
$ref: '#/components/schemas/errorResult'
|
|
338
|
+
components:
|
|
339
|
+
schemas:
|
|
340
|
+
apiStatus:
|
|
341
|
+
required:
|
|
342
|
+
- apiVersion
|
|
343
|
+
- ready
|
|
344
|
+
type: object
|
|
345
|
+
properties:
|
|
346
|
+
apiVersion:
|
|
347
|
+
type: string
|
|
348
|
+
description: The version of the API
|
|
349
|
+
componentName:
|
|
350
|
+
type: string
|
|
351
|
+
description: The name of the component
|
|
352
|
+
componentVersion:
|
|
353
|
+
type: string
|
|
354
|
+
description: The version of the component software
|
|
355
|
+
lockssVersion:
|
|
356
|
+
type: string
|
|
357
|
+
description: The version of the LOCKSS system
|
|
358
|
+
ready:
|
|
359
|
+
type: boolean
|
|
360
|
+
description: The indication of whether the service is available
|
|
361
|
+
serviceName:
|
|
362
|
+
type: string
|
|
363
|
+
description: The name of the service
|
|
364
|
+
readyTime:
|
|
365
|
+
type: integer
|
|
366
|
+
description: The time the service last became ready.
|
|
367
|
+
format: int64
|
|
368
|
+
reason:
|
|
369
|
+
type: string
|
|
370
|
+
description: The reason the service isn't ready.
|
|
371
|
+
startupStatus:
|
|
372
|
+
type: string
|
|
373
|
+
description: Enum indicating progress of plugin/AU processing at startup.
|
|
374
|
+
enum:
|
|
375
|
+
- NONE
|
|
376
|
+
- PLUGINS_CRAWLING
|
|
377
|
+
- PLUGINS_COLLECTED
|
|
378
|
+
- PLUGINS_LOADING
|
|
379
|
+
- PLUGINS_LOADED
|
|
380
|
+
- AUS_STARTING
|
|
381
|
+
- AUS_STARTED
|
|
382
|
+
description: The status information of the service
|
|
383
|
+
au:
|
|
384
|
+
required:
|
|
385
|
+
- id
|
|
386
|
+
type: object
|
|
387
|
+
properties:
|
|
388
|
+
id:
|
|
389
|
+
type: string
|
|
390
|
+
description: The identifier of this AU
|
|
391
|
+
job:
|
|
392
|
+
type: string
|
|
393
|
+
description: The identifier of the job associated with this AU
|
|
394
|
+
name:
|
|
395
|
+
type: string
|
|
396
|
+
description: The name of the AU, for display purposes
|
|
397
|
+
description: An Archival Unit
|
|
398
|
+
auMetadataPageInfo:
|
|
399
|
+
required:
|
|
400
|
+
- items
|
|
401
|
+
- pageInfo
|
|
402
|
+
type: object
|
|
403
|
+
properties:
|
|
404
|
+
items:
|
|
405
|
+
type: array
|
|
406
|
+
description: The metadata for the AU items in the page
|
|
407
|
+
items:
|
|
408
|
+
$ref: '#/components/schemas/itemMetadata'
|
|
409
|
+
pageInfo:
|
|
410
|
+
$ref: '#/components/schemas/pageInfo'
|
|
411
|
+
description: The display page of AU metadata
|
|
412
|
+
errorResult:
|
|
413
|
+
type: object
|
|
414
|
+
required:
|
|
415
|
+
- message
|
|
416
|
+
- code
|
|
417
|
+
properties:
|
|
418
|
+
message:
|
|
419
|
+
type: string
|
|
420
|
+
code:
|
|
421
|
+
type: integer
|
|
422
|
+
rootCause:
|
|
423
|
+
type: string
|
|
424
|
+
itemMetadata:
|
|
425
|
+
type: object
|
|
426
|
+
properties:
|
|
427
|
+
scalarMap:
|
|
428
|
+
type: object
|
|
429
|
+
additionalProperties:
|
|
430
|
+
type: string
|
|
431
|
+
description: The scalar value of the metadata for the key
|
|
432
|
+
description: The map of scalar metadata elements for this item
|
|
433
|
+
setMap:
|
|
434
|
+
type: object
|
|
435
|
+
additionalProperties:
|
|
436
|
+
type: array
|
|
437
|
+
description: The set value of the metadata for the key
|
|
438
|
+
items:
|
|
439
|
+
type: string
|
|
440
|
+
description: The map of set-bound metadata elements for this item
|
|
441
|
+
listMap:
|
|
442
|
+
type: object
|
|
443
|
+
additionalProperties:
|
|
444
|
+
type: array
|
|
445
|
+
description: The list value of the metadata for the key
|
|
446
|
+
items:
|
|
447
|
+
type: string
|
|
448
|
+
description: The map of listed metadata elements for this item
|
|
449
|
+
mapMap:
|
|
450
|
+
type: object
|
|
451
|
+
additionalProperties:
|
|
452
|
+
type: object
|
|
453
|
+
additionalProperties:
|
|
454
|
+
type: string
|
|
455
|
+
description: The map value of the metadata for the key
|
|
456
|
+
description: The map of mapped metadata elements for this item
|
|
457
|
+
description: The metadata generated for a single item
|
|
458
|
+
job:
|
|
459
|
+
required:
|
|
460
|
+
- au
|
|
461
|
+
- creationDate
|
|
462
|
+
- id
|
|
463
|
+
- status
|
|
464
|
+
type: object
|
|
465
|
+
properties:
|
|
466
|
+
au:
|
|
467
|
+
$ref: '#/components/schemas/au'
|
|
468
|
+
id:
|
|
469
|
+
type: string
|
|
470
|
+
description: The identifier of this job
|
|
471
|
+
description:
|
|
472
|
+
type: string
|
|
473
|
+
description: A description of the task being performed by this job
|
|
474
|
+
creationDate:
|
|
475
|
+
type: string
|
|
476
|
+
description: The timestamp when this job was created
|
|
477
|
+
format: date
|
|
478
|
+
startDate:
|
|
479
|
+
type: string
|
|
480
|
+
description: The timestamp when this job processing started
|
|
481
|
+
format: date
|
|
482
|
+
endDate:
|
|
483
|
+
type: string
|
|
484
|
+
description: The timestamp when this job processing ended
|
|
485
|
+
format: date
|
|
486
|
+
status:
|
|
487
|
+
$ref: '#/components/schemas/status'
|
|
488
|
+
description: An asynchronous task to be performed
|
|
489
|
+
jobPageInfo:
|
|
490
|
+
required:
|
|
491
|
+
- jobs
|
|
492
|
+
- pageInfo
|
|
493
|
+
type: object
|
|
494
|
+
properties:
|
|
495
|
+
jobs:
|
|
496
|
+
type: array
|
|
497
|
+
description: The jobs displayed in the page
|
|
498
|
+
items:
|
|
499
|
+
$ref: '#/components/schemas/job'
|
|
500
|
+
pageInfo:
|
|
501
|
+
$ref: '#/components/schemas/pageInfo'
|
|
502
|
+
description: A display page of jobs
|
|
503
|
+
metadataUpdateSpec:
|
|
504
|
+
required:
|
|
505
|
+
- auid
|
|
506
|
+
- updateType
|
|
507
|
+
type: object
|
|
508
|
+
properties:
|
|
509
|
+
auid:
|
|
510
|
+
type: string
|
|
511
|
+
description: The identifier of the AU for which the metadata update is to
|
|
512
|
+
be performed
|
|
513
|
+
updateType:
|
|
514
|
+
type: string
|
|
515
|
+
description: The type of metadata update to be performed
|
|
516
|
+
example: full_extraction | incremental_extraction | delete
|
|
517
|
+
description: The information defining an AU metadata update operation
|
|
518
|
+
pageInfo:
|
|
519
|
+
required:
|
|
520
|
+
- continuationToken
|
|
521
|
+
- curLink
|
|
522
|
+
- itemsInPage
|
|
523
|
+
- totalCount
|
|
524
|
+
type: object
|
|
525
|
+
properties:
|
|
526
|
+
totalCount:
|
|
527
|
+
type: integer
|
|
528
|
+
description: The total number of elements to be paginated
|
|
529
|
+
format: int32
|
|
530
|
+
nullable: true
|
|
531
|
+
itemsInPage:
|
|
532
|
+
type: integer
|
|
533
|
+
description: The number of items in page
|
|
534
|
+
format: int32
|
|
535
|
+
continuationToken:
|
|
536
|
+
type: string
|
|
537
|
+
description: The continuation token
|
|
538
|
+
nullable: true
|
|
539
|
+
curLink:
|
|
540
|
+
type: string
|
|
541
|
+
description: The link to the current page
|
|
542
|
+
nextLink:
|
|
543
|
+
type: string
|
|
544
|
+
description: The link to the next page
|
|
545
|
+
nullable: true
|
|
546
|
+
description: The information related to pagination of content
|
|
547
|
+
status:
|
|
548
|
+
required:
|
|
549
|
+
- code
|
|
550
|
+
- msg
|
|
551
|
+
type: object
|
|
552
|
+
properties:
|
|
553
|
+
code:
|
|
554
|
+
type: integer
|
|
555
|
+
description: The numeric value for the current state
|
|
556
|
+
format: int32
|
|
557
|
+
msg:
|
|
558
|
+
type: string
|
|
559
|
+
description: A text message defining the current state
|
|
560
|
+
description: The existing state of a job
|
|
561
|
+
urlInfo:
|
|
562
|
+
required:
|
|
563
|
+
- params
|
|
564
|
+
- urls
|
|
565
|
+
type: object
|
|
566
|
+
properties:
|
|
567
|
+
params:
|
|
568
|
+
type: object
|
|
569
|
+
additionalProperties:
|
|
570
|
+
type: string
|
|
571
|
+
description: The value of the parameter for the parameter name
|
|
572
|
+
description: The parameters that define the resulting URLs
|
|
573
|
+
urls:
|
|
574
|
+
type: array
|
|
575
|
+
description: The URLs
|
|
576
|
+
items:
|
|
577
|
+
type: string
|
|
578
|
+
description: The information related to a resulting list of URLs
|
|
579
|
+
securitySchemes:
|
|
580
|
+
basicAuth:
|
|
581
|
+
type: http
|
|
582
|
+
description: HTTP Basic Authentication. Works over HTTP and HTTPS.
|
|
583
|
+
scheme: basic
|