gamsapi 52.5.0__cp312-cp312-win_amd64.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 (257) hide show
  1. gams/__init__.py +27 -0
  2. gams/_version.py +1 -0
  3. gams/connect/__init__.py +28 -0
  4. gams/connect/agents/__init__.py +24 -0
  5. gams/connect/agents/_excel/__init__.py +32 -0
  6. gams/connect/agents/_excel/excelagent.py +312 -0
  7. gams/connect/agents/_excel/workbook.py +155 -0
  8. gams/connect/agents/_sqlconnectors/__init__.py +42 -0
  9. gams/connect/agents/_sqlconnectors/_accesshandler.py +211 -0
  10. gams/connect/agents/_sqlconnectors/_databasehandler.py +250 -0
  11. gams/connect/agents/_sqlconnectors/_mysqlhandler.py +168 -0
  12. gams/connect/agents/_sqlconnectors/_postgreshandler.py +131 -0
  13. gams/connect/agents/_sqlconnectors/_pyodbchandler.py +112 -0
  14. gams/connect/agents/_sqlconnectors/_sqlalchemyhandler.py +74 -0
  15. gams/connect/agents/_sqlconnectors/_sqlitehandler.py +262 -0
  16. gams/connect/agents/_sqlconnectors/_sqlserverhandler.py +179 -0
  17. gams/connect/agents/concatenate.py +440 -0
  18. gams/connect/agents/connectagent.py +743 -0
  19. gams/connect/agents/csvreader.py +675 -0
  20. gams/connect/agents/csvwriter.py +151 -0
  21. gams/connect/agents/domainwriter.py +143 -0
  22. gams/connect/agents/excelreader.py +756 -0
  23. gams/connect/agents/excelwriter.py +467 -0
  24. gams/connect/agents/filter.py +223 -0
  25. gams/connect/agents/gamsreader.py +112 -0
  26. gams/connect/agents/gamswriter.py +239 -0
  27. gams/connect/agents/gdxreader.py +109 -0
  28. gams/connect/agents/gdxwriter.py +146 -0
  29. gams/connect/agents/labelmanipulator.py +303 -0
  30. gams/connect/agents/projection.py +539 -0
  31. gams/connect/agents/pythoncode.py +71 -0
  32. gams/connect/agents/rawcsvreader.py +248 -0
  33. gams/connect/agents/rawexcelreader.py +312 -0
  34. gams/connect/agents/schema/CSVReader.yaml +92 -0
  35. gams/connect/agents/schema/CSVWriter.yaml +44 -0
  36. gams/connect/agents/schema/Concatenate.yaml +52 -0
  37. gams/connect/agents/schema/DomainWriter.yaml +25 -0
  38. gams/connect/agents/schema/ExcelReader.yaml +121 -0
  39. gams/connect/agents/schema/ExcelWriter.yaml +78 -0
  40. gams/connect/agents/schema/Filter.yaml +74 -0
  41. gams/connect/agents/schema/GAMSReader.yaml +20 -0
  42. gams/connect/agents/schema/GAMSWriter.yaml +47 -0
  43. gams/connect/agents/schema/GDXReader.yaml +23 -0
  44. gams/connect/agents/schema/GDXWriter.yaml +32 -0
  45. gams/connect/agents/schema/LabelManipulator.yaml +99 -0
  46. gams/connect/agents/schema/Projection.yaml +24 -0
  47. gams/connect/agents/schema/PythonCode.yaml +6 -0
  48. gams/connect/agents/schema/RawCSVReader.yaml +34 -0
  49. gams/connect/agents/schema/RawExcelReader.yaml +42 -0
  50. gams/connect/agents/schema/SQLReader.yaml +75 -0
  51. gams/connect/agents/schema/SQLWriter.yaml +103 -0
  52. gams/connect/agents/sqlreader.py +301 -0
  53. gams/connect/agents/sqlwriter.py +276 -0
  54. gams/connect/connectdatabase.py +275 -0
  55. gams/connect/connectvalidator.py +93 -0
  56. gams/connect/errors.py +34 -0
  57. gams/control/__init__.py +136 -0
  58. gams/control/database.py +2231 -0
  59. gams/control/execution.py +1900 -0
  60. gams/control/options.py +2792 -0
  61. gams/control/workspace.py +1198 -0
  62. gams/core/__init__.py +24 -0
  63. gams/core/cfg/__init__.py +26 -0
  64. gams/core/cfg/_cfgmcc.cp312-win_amd64.pyd +0 -0
  65. gams/core/cfg/cfgmcc.py +519 -0
  66. gams/core/dct/__init__.py +26 -0
  67. gams/core/dct/_dctmcc.cp312-win_amd64.pyd +0 -0
  68. gams/core/dct/dctmcc.py +574 -0
  69. gams/core/embedded/__init__.py +26 -0
  70. gams/core/embedded/gamsemb.py +1024 -0
  71. gams/core/emp/__init__.py +24 -0
  72. gams/core/emp/emplexer.py +89 -0
  73. gams/core/emp/empyacc.py +281 -0
  74. gams/core/gdx/__init__.py +26 -0
  75. gams/core/gdx/_gdxcc.cp312-win_amd64.pyd +0 -0
  76. gams/core/gdx/gdxcc.py +866 -0
  77. gams/core/gev/__init__.py +26 -0
  78. gams/core/gev/_gevmcc.cp312-win_amd64.pyd +0 -0
  79. gams/core/gev/gevmcc.py +855 -0
  80. gams/core/gmd/__init__.py +26 -0
  81. gams/core/gmd/_gmdcc.cp312-win_amd64.pyd +0 -0
  82. gams/core/gmd/gmdcc.py +917 -0
  83. gams/core/gmo/__init__.py +26 -0
  84. gams/core/gmo/_gmomcc.cp312-win_amd64.pyd +0 -0
  85. gams/core/gmo/gmomcc.py +2046 -0
  86. gams/core/idx/__init__.py +26 -0
  87. gams/core/idx/_idxcc.cp312-win_amd64.pyd +0 -0
  88. gams/core/idx/idxcc.py +510 -0
  89. gams/core/numpy/__init__.py +29 -0
  90. gams/core/numpy/_gams2numpy.cp312-win_amd64.pyd +0 -0
  91. gams/core/numpy/gams2numpy.py +1048 -0
  92. gams/core/opt/__init__.py +26 -0
  93. gams/core/opt/_optcc.cp312-win_amd64.pyd +0 -0
  94. gams/core/opt/optcc.py +840 -0
  95. gams/engine/__init__.py +204 -0
  96. gams/engine/api/__init__.py +13 -0
  97. gams/engine/api/auth_api.py +7653 -0
  98. gams/engine/api/cleanup_api.py +751 -0
  99. gams/engine/api/default_api.py +887 -0
  100. gams/engine/api/hypercube_api.py +2629 -0
  101. gams/engine/api/jobs_api.py +5229 -0
  102. gams/engine/api/licenses_api.py +2220 -0
  103. gams/engine/api/namespaces_api.py +7783 -0
  104. gams/engine/api/usage_api.py +5627 -0
  105. gams/engine/api/users_api.py +5931 -0
  106. gams/engine/api_client.py +804 -0
  107. gams/engine/api_response.py +21 -0
  108. gams/engine/configuration.py +601 -0
  109. gams/engine/exceptions.py +216 -0
  110. gams/engine/models/__init__.py +86 -0
  111. gams/engine/models/bad_input.py +89 -0
  112. gams/engine/models/cleanable_job_result.py +104 -0
  113. gams/engine/models/cleanable_job_result_page.py +113 -0
  114. gams/engine/models/engine_license.py +107 -0
  115. gams/engine/models/files_not_found.py +93 -0
  116. gams/engine/models/forwarded_token_response.py +112 -0
  117. gams/engine/models/generic_key_value_pair.py +89 -0
  118. gams/engine/models/hypercube.py +160 -0
  119. gams/engine/models/hypercube_page.py +111 -0
  120. gams/engine/models/hypercube_summary.py +91 -0
  121. gams/engine/models/hypercube_token.py +97 -0
  122. gams/engine/models/identity_provider.py +107 -0
  123. gams/engine/models/identity_provider_ldap.py +121 -0
  124. gams/engine/models/identity_provider_oauth2.py +146 -0
  125. gams/engine/models/identity_provider_oauth2_scope.py +89 -0
  126. gams/engine/models/identity_provider_oauth2_with_secret.py +152 -0
  127. gams/engine/models/identity_provider_oidc.py +133 -0
  128. gams/engine/models/identity_provider_oidc_with_secret.py +143 -0
  129. gams/engine/models/inex.py +91 -0
  130. gams/engine/models/invitation.py +136 -0
  131. gams/engine/models/invitation_quota.py +106 -0
  132. gams/engine/models/invitation_token.py +87 -0
  133. gams/engine/models/job.py +165 -0
  134. gams/engine/models/job_no_text_entry.py +138 -0
  135. gams/engine/models/job_no_text_entry_page.py +111 -0
  136. gams/engine/models/license.py +91 -0
  137. gams/engine/models/log_piece.py +96 -0
  138. gams/engine/models/message.py +87 -0
  139. gams/engine/models/message_and_token.py +99 -0
  140. gams/engine/models/message_with_webhook_id.py +89 -0
  141. gams/engine/models/model_auth_token.py +87 -0
  142. gams/engine/models/model_configuration.py +125 -0
  143. gams/engine/models/model_default_instance.py +99 -0
  144. gams/engine/models/model_default_user_instance.py +98 -0
  145. gams/engine/models/model_hypercube_job.py +106 -0
  146. gams/engine/models/model_hypercube_usage.py +130 -0
  147. gams/engine/models/model_instance_info.py +116 -0
  148. gams/engine/models/model_instance_info_full.py +123 -0
  149. gams/engine/models/model_instance_pool_info.py +112 -0
  150. gams/engine/models/model_job_labels.py +179 -0
  151. gams/engine/models/model_job_usage.py +133 -0
  152. gams/engine/models/model_pool_usage.py +124 -0
  153. gams/engine/models/model_usage.py +115 -0
  154. gams/engine/models/model_user.py +96 -0
  155. gams/engine/models/model_userinstance_info.py +119 -0
  156. gams/engine/models/model_userinstancepool_info.py +95 -0
  157. gams/engine/models/model_version.py +91 -0
  158. gams/engine/models/models.py +120 -0
  159. gams/engine/models/namespace.py +104 -0
  160. gams/engine/models/namespace_quota.py +96 -0
  161. gams/engine/models/namespace_with_permission.py +96 -0
  162. gams/engine/models/not_found.py +91 -0
  163. gams/engine/models/password_policy.py +97 -0
  164. gams/engine/models/perm_and_username.py +89 -0
  165. gams/engine/models/quota.py +117 -0
  166. gams/engine/models/quota_exceeded.py +97 -0
  167. gams/engine/models/status_code_meaning.py +89 -0
  168. gams/engine/models/stream_entry.py +89 -0
  169. gams/engine/models/system_wide_license.py +92 -0
  170. gams/engine/models/text_entries.py +87 -0
  171. gams/engine/models/text_entry.py +101 -0
  172. gams/engine/models/time_span.py +95 -0
  173. gams/engine/models/time_span_pool_worker.py +99 -0
  174. gams/engine/models/token_forward_error.py +87 -0
  175. gams/engine/models/user.py +127 -0
  176. gams/engine/models/user_group_member.py +96 -0
  177. gams/engine/models/user_groups.py +108 -0
  178. gams/engine/models/vapid_info.py +87 -0
  179. gams/engine/models/webhook.py +138 -0
  180. gams/engine/models/webhook_parameterized_event.py +99 -0
  181. gams/engine/py.typed +0 -0
  182. gams/engine/rest.py +258 -0
  183. gams/magic/__init__.py +32 -0
  184. gams/magic/gams_magic.py +142 -0
  185. gams/magic/interactive.py +402 -0
  186. gams/tools/__init__.py +30 -0
  187. gams/tools/errors.py +34 -0
  188. gams/tools/toolcollection/__init__.py +24 -0
  189. gams/tools/toolcollection/alg/__init__.py +24 -0
  190. gams/tools/toolcollection/alg/rank.py +51 -0
  191. gams/tools/toolcollection/data/__init__.py +24 -0
  192. gams/tools/toolcollection/data/csvread.py +444 -0
  193. gams/tools/toolcollection/data/csvwrite.py +311 -0
  194. gams/tools/toolcollection/data/exceldump.py +47 -0
  195. gams/tools/toolcollection/data/sqlitewrite.py +276 -0
  196. gams/tools/toolcollection/gdxservice/__init__.py +24 -0
  197. gams/tools/toolcollection/gdxservice/gdxencoding.py +104 -0
  198. gams/tools/toolcollection/gdxservice/gdxrename.py +94 -0
  199. gams/tools/toolcollection/linalg/__init__.py +24 -0
  200. gams/tools/toolcollection/linalg/cholesky.py +57 -0
  201. gams/tools/toolcollection/linalg/eigenvalue.py +56 -0
  202. gams/tools/toolcollection/linalg/eigenvector.py +58 -0
  203. gams/tools/toolcollection/linalg/invert.py +55 -0
  204. gams/tools/toolcollection/linalg/ols.py +138 -0
  205. gams/tools/toolcollection/tooltemplate.py +321 -0
  206. gams/tools/toolcollection/win32/__init__.py +24 -0
  207. gams/tools/toolcollection/win32/excelmerge.py +93 -0
  208. gams/tools/toolcollection/win32/exceltalk.py +76 -0
  209. gams/tools/toolcollection/win32/msappavail.py +49 -0
  210. gams/tools/toolcollection/win32/shellexecute.py +54 -0
  211. gams/tools/tools.py +116 -0
  212. gams/transfer/__init__.py +35 -0
  213. gams/transfer/_abcs/__init__.py +37 -0
  214. gams/transfer/_abcs/container_abcs.py +433 -0
  215. gams/transfer/_internals/__init__.py +63 -0
  216. gams/transfer/_internals/algorithms.py +436 -0
  217. gams/transfer/_internals/casepreservingdict.py +124 -0
  218. gams/transfer/_internals/constants.py +270 -0
  219. gams/transfer/_internals/domainviolation.py +103 -0
  220. gams/transfer/_internals/specialvalues.py +172 -0
  221. gams/transfer/containers/__init__.py +26 -0
  222. gams/transfer/containers/_container.py +1794 -0
  223. gams/transfer/containers/_io/__init__.py +28 -0
  224. gams/transfer/containers/_io/containers.py +164 -0
  225. gams/transfer/containers/_io/gdx.py +1029 -0
  226. gams/transfer/containers/_io/gmd.py +872 -0
  227. gams/transfer/containers/_mixins/__init__.py +26 -0
  228. gams/transfer/containers/_mixins/ccc.py +1274 -0
  229. gams/transfer/syms/__init__.py +33 -0
  230. gams/transfer/syms/_methods/__init__.py +24 -0
  231. gams/transfer/syms/_methods/tables.py +120 -0
  232. gams/transfer/syms/_methods/toDict.py +115 -0
  233. gams/transfer/syms/_methods/toList.py +83 -0
  234. gams/transfer/syms/_methods/toValue.py +60 -0
  235. gams/transfer/syms/_mixins/__init__.py +32 -0
  236. gams/transfer/syms/_mixins/equals.py +626 -0
  237. gams/transfer/syms/_mixins/generateRecords.py +499 -0
  238. gams/transfer/syms/_mixins/pivot.py +313 -0
  239. gams/transfer/syms/_mixins/pve.py +627 -0
  240. gams/transfer/syms/_mixins/sa.py +27 -0
  241. gams/transfer/syms/_mixins/sapve.py +27 -0
  242. gams/transfer/syms/_mixins/saua.py +27 -0
  243. gams/transfer/syms/_mixins/sauapve.py +199 -0
  244. gams/transfer/syms/_mixins/spve.py +1528 -0
  245. gams/transfer/syms/_mixins/ve.py +936 -0
  246. gams/transfer/syms/container_syms/__init__.py +31 -0
  247. gams/transfer/syms/container_syms/_alias.py +984 -0
  248. gams/transfer/syms/container_syms/_equation.py +333 -0
  249. gams/transfer/syms/container_syms/_parameter.py +973 -0
  250. gams/transfer/syms/container_syms/_set.py +604 -0
  251. gams/transfer/syms/container_syms/_universe_alias.py +461 -0
  252. gams/transfer/syms/container_syms/_variable.py +321 -0
  253. gamsapi-52.5.0.dist-info/METADATA +150 -0
  254. gamsapi-52.5.0.dist-info/RECORD +257 -0
  255. gamsapi-52.5.0.dist-info/WHEEL +5 -0
  256. gamsapi-52.5.0.dist-info/licenses/LICENSE +22 -0
  257. gamsapi-52.5.0.dist-info/top_level.txt +1 -0
@@ -0,0 +1,751 @@
1
+ # coding: utf-8
2
+
3
+ """
4
+ GAMS Engine
5
+
6
+ With GAMS Engine you can register and solve GAMS models. It has a namespace management system, so you can restrict your users to certain models.
7
+
8
+ The version of the OpenAPI document: latest
9
+ Generated by OpenAPI Generator (https://openapi-generator.tech)
10
+
11
+ Do not edit the class manually.
12
+ """ # noqa: E501
13
+
14
+ import warnings
15
+ from pydantic import validate_call, Field, StrictFloat, StrictStr, StrictInt
16
+ from typing import Any, Dict, List, Optional, Tuple, Union
17
+ from typing_extensions import Annotated
18
+
19
+ from datetime import datetime
20
+ from pydantic import Field, StrictBool, StrictStr, field_validator
21
+ from typing import List, Optional
22
+ from typing_extensions import Annotated
23
+ from gams.engine.models.cleanable_job_result_page import CleanableJobResultPage
24
+ from gams.engine.models.message import Message
25
+
26
+ from gams.engine.api_client import ApiClient, RequestSerialized
27
+ from gams.engine.api_response import ApiResponse
28
+ from gams.engine.rest import RESTResponseType
29
+
30
+
31
+ class CleanupApi:
32
+ """NOTE: This class is auto generated by OpenAPI Generator
33
+ Ref: https://openapi-generator.tech
34
+
35
+ Do not edit the class manually.
36
+ """
37
+
38
+ def __init__(self, api_client=None) -> None:
39
+ if api_client is None:
40
+ api_client = ApiClient.get_default()
41
+ self.api_client = api_client
42
+
43
+
44
+ @validate_call
45
+ def list_results(
46
+ self,
47
+ page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
48
+ per_page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]] = None,
49
+ order_by: Optional[StrictStr] = None,
50
+ order_asc: Optional[StrictBool] = None,
51
+ from_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded before.")] = None,
52
+ to_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded after.")] = None,
53
+ namespace: Annotated[Optional[StrictStr], Field(description="Filter results by namespace.")] = None,
54
+ _request_timeout: Union[
55
+ None,
56
+ Annotated[StrictFloat, Field(gt=0)],
57
+ Tuple[
58
+ Annotated[StrictFloat, Field(gt=0)],
59
+ Annotated[StrictFloat, Field(gt=0)]
60
+ ]
61
+ ] = None,
62
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
63
+ _content_type: Optional[StrictStr] = None,
64
+ _headers: Optional[Dict[StrictStr, Any]] = None,
65
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
66
+ ) -> CleanableJobResultPage:
67
+ """Lists all job and Hypercube results
68
+
69
+ Admins can see everyone's results. Inviters can see results of their own jobs as well as jobs of their invitees. Users can only see results of their own jobs. Note that jobs that are shared with the logged in user via access groups are not listed here. If the page is not one and there are no elements on this page, throws 404.
70
+
71
+ :param page:
72
+ :type page: int
73
+ :param per_page:
74
+ :type per_page: int
75
+ :param order_by:
76
+ :type order_by: str
77
+ :param order_asc:
78
+ :type order_asc: bool
79
+ :param from_datetime: iso8601 Datetime to select the results if they are uploaded before.
80
+ :type from_datetime: datetime
81
+ :param to_datetime: iso8601 Datetime to select the results if they are uploaded after.
82
+ :type to_datetime: datetime
83
+ :param namespace: Filter results by namespace.
84
+ :type namespace: str
85
+ :param _request_timeout: timeout setting for this request. If one
86
+ number provided, it will be total request
87
+ timeout. It can also be a pair (tuple) of
88
+ (connection, read) timeouts.
89
+ :type _request_timeout: int, tuple(int, int), optional
90
+ :param _request_auth: set to override the auth_settings for an a single
91
+ request; this effectively ignores the
92
+ authentication in the spec for a single request.
93
+ :type _request_auth: dict, optional
94
+ :param _content_type: force content-type for the request.
95
+ :type _content_type: str, Optional
96
+ :param _headers: set to override the headers for a single
97
+ request; this effectively ignores the headers
98
+ in the spec for a single request.
99
+ :type _headers: dict, optional
100
+ :param _host_index: set to override the host_index for a single
101
+ request; this effectively ignores the host_index
102
+ in the spec for a single request.
103
+ :type _host_index: int, optional
104
+ :return: Returns the result object.
105
+ """ # noqa: E501
106
+
107
+ _param = self._list_results_serialize(
108
+ page=page,
109
+ per_page=per_page,
110
+ order_by=order_by,
111
+ order_asc=order_asc,
112
+ from_datetime=from_datetime,
113
+ to_datetime=to_datetime,
114
+ namespace=namespace,
115
+ _request_auth=_request_auth,
116
+ _content_type=_content_type,
117
+ _headers=_headers,
118
+ _host_index=_host_index
119
+ )
120
+
121
+ _response_types_map: Dict[str, Optional[str]] = {
122
+ '200': "CleanableJobResultPage",
123
+ '400': "Message",
124
+ '403': "Message",
125
+ '404': None,
126
+ '500': "Message",
127
+ }
128
+ response_data = self.api_client.call_api(
129
+ *_param,
130
+ _request_timeout=_request_timeout
131
+ )
132
+ response_data.read()
133
+ return self.api_client.response_deserialize(
134
+ response_data=response_data,
135
+ response_types_map=_response_types_map,
136
+ ).data
137
+
138
+
139
+ @validate_call
140
+ def list_results_with_http_info(
141
+ self,
142
+ page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
143
+ per_page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]] = None,
144
+ order_by: Optional[StrictStr] = None,
145
+ order_asc: Optional[StrictBool] = None,
146
+ from_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded before.")] = None,
147
+ to_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded after.")] = None,
148
+ namespace: Annotated[Optional[StrictStr], Field(description="Filter results by namespace.")] = None,
149
+ _request_timeout: Union[
150
+ None,
151
+ Annotated[StrictFloat, Field(gt=0)],
152
+ Tuple[
153
+ Annotated[StrictFloat, Field(gt=0)],
154
+ Annotated[StrictFloat, Field(gt=0)]
155
+ ]
156
+ ] = None,
157
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
158
+ _content_type: Optional[StrictStr] = None,
159
+ _headers: Optional[Dict[StrictStr, Any]] = None,
160
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
161
+ ) -> ApiResponse[CleanableJobResultPage]:
162
+ """Lists all job and Hypercube results
163
+
164
+ Admins can see everyone's results. Inviters can see results of their own jobs as well as jobs of their invitees. Users can only see results of their own jobs. Note that jobs that are shared with the logged in user via access groups are not listed here. If the page is not one and there are no elements on this page, throws 404.
165
+
166
+ :param page:
167
+ :type page: int
168
+ :param per_page:
169
+ :type per_page: int
170
+ :param order_by:
171
+ :type order_by: str
172
+ :param order_asc:
173
+ :type order_asc: bool
174
+ :param from_datetime: iso8601 Datetime to select the results if they are uploaded before.
175
+ :type from_datetime: datetime
176
+ :param to_datetime: iso8601 Datetime to select the results if they are uploaded after.
177
+ :type to_datetime: datetime
178
+ :param namespace: Filter results by namespace.
179
+ :type namespace: str
180
+ :param _request_timeout: timeout setting for this request. If one
181
+ number provided, it will be total request
182
+ timeout. It can also be a pair (tuple) of
183
+ (connection, read) timeouts.
184
+ :type _request_timeout: int, tuple(int, int), optional
185
+ :param _request_auth: set to override the auth_settings for an a single
186
+ request; this effectively ignores the
187
+ authentication in the spec for a single request.
188
+ :type _request_auth: dict, optional
189
+ :param _content_type: force content-type for the request.
190
+ :type _content_type: str, Optional
191
+ :param _headers: set to override the headers for a single
192
+ request; this effectively ignores the headers
193
+ in the spec for a single request.
194
+ :type _headers: dict, optional
195
+ :param _host_index: set to override the host_index for a single
196
+ request; this effectively ignores the host_index
197
+ in the spec for a single request.
198
+ :type _host_index: int, optional
199
+ :return: Returns the result object.
200
+ """ # noqa: E501
201
+
202
+ _param = self._list_results_serialize(
203
+ page=page,
204
+ per_page=per_page,
205
+ order_by=order_by,
206
+ order_asc=order_asc,
207
+ from_datetime=from_datetime,
208
+ to_datetime=to_datetime,
209
+ namespace=namespace,
210
+ _request_auth=_request_auth,
211
+ _content_type=_content_type,
212
+ _headers=_headers,
213
+ _host_index=_host_index
214
+ )
215
+
216
+ _response_types_map: Dict[str, Optional[str]] = {
217
+ '200': "CleanableJobResultPage",
218
+ '400': "Message",
219
+ '403': "Message",
220
+ '404': None,
221
+ '500': "Message",
222
+ }
223
+ response_data = self.api_client.call_api(
224
+ *_param,
225
+ _request_timeout=_request_timeout
226
+ )
227
+ response_data.read()
228
+ return self.api_client.response_deserialize(
229
+ response_data=response_data,
230
+ response_types_map=_response_types_map,
231
+ )
232
+
233
+
234
+ @validate_call
235
+ def list_results_without_preload_content(
236
+ self,
237
+ page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=1)]] = None,
238
+ per_page: Optional[Annotated[int, Field(le=2147483647, strict=True, ge=0)]] = None,
239
+ order_by: Optional[StrictStr] = None,
240
+ order_asc: Optional[StrictBool] = None,
241
+ from_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded before.")] = None,
242
+ to_datetime: Annotated[Optional[datetime], Field(description="iso8601 Datetime to select the results if they are uploaded after.")] = None,
243
+ namespace: Annotated[Optional[StrictStr], Field(description="Filter results by namespace.")] = None,
244
+ _request_timeout: Union[
245
+ None,
246
+ Annotated[StrictFloat, Field(gt=0)],
247
+ Tuple[
248
+ Annotated[StrictFloat, Field(gt=0)],
249
+ Annotated[StrictFloat, Field(gt=0)]
250
+ ]
251
+ ] = None,
252
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
253
+ _content_type: Optional[StrictStr] = None,
254
+ _headers: Optional[Dict[StrictStr, Any]] = None,
255
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
256
+ ) -> RESTResponseType:
257
+ """Lists all job and Hypercube results
258
+
259
+ Admins can see everyone's results. Inviters can see results of their own jobs as well as jobs of their invitees. Users can only see results of their own jobs. Note that jobs that are shared with the logged in user via access groups are not listed here. If the page is not one and there are no elements on this page, throws 404.
260
+
261
+ :param page:
262
+ :type page: int
263
+ :param per_page:
264
+ :type per_page: int
265
+ :param order_by:
266
+ :type order_by: str
267
+ :param order_asc:
268
+ :type order_asc: bool
269
+ :param from_datetime: iso8601 Datetime to select the results if they are uploaded before.
270
+ :type from_datetime: datetime
271
+ :param to_datetime: iso8601 Datetime to select the results if they are uploaded after.
272
+ :type to_datetime: datetime
273
+ :param namespace: Filter results by namespace.
274
+ :type namespace: str
275
+ :param _request_timeout: timeout setting for this request. If one
276
+ number provided, it will be total request
277
+ timeout. It can also be a pair (tuple) of
278
+ (connection, read) timeouts.
279
+ :type _request_timeout: int, tuple(int, int), optional
280
+ :param _request_auth: set to override the auth_settings for an a single
281
+ request; this effectively ignores the
282
+ authentication in the spec for a single request.
283
+ :type _request_auth: dict, optional
284
+ :param _content_type: force content-type for the request.
285
+ :type _content_type: str, Optional
286
+ :param _headers: set to override the headers for a single
287
+ request; this effectively ignores the headers
288
+ in the spec for a single request.
289
+ :type _headers: dict, optional
290
+ :param _host_index: set to override the host_index for a single
291
+ request; this effectively ignores the host_index
292
+ in the spec for a single request.
293
+ :type _host_index: int, optional
294
+ :return: Returns the result object.
295
+ """ # noqa: E501
296
+
297
+ _param = self._list_results_serialize(
298
+ page=page,
299
+ per_page=per_page,
300
+ order_by=order_by,
301
+ order_asc=order_asc,
302
+ from_datetime=from_datetime,
303
+ to_datetime=to_datetime,
304
+ namespace=namespace,
305
+ _request_auth=_request_auth,
306
+ _content_type=_content_type,
307
+ _headers=_headers,
308
+ _host_index=_host_index
309
+ )
310
+
311
+ _response_types_map: Dict[str, Optional[str]] = {
312
+ '200': "CleanableJobResultPage",
313
+ '400': "Message",
314
+ '403': "Message",
315
+ '404': None,
316
+ '500': "Message",
317
+ }
318
+ response_data = self.api_client.call_api(
319
+ *_param,
320
+ _request_timeout=_request_timeout
321
+ )
322
+ return response_data.response
323
+
324
+
325
+ def _list_results_serialize(
326
+ self,
327
+ page,
328
+ per_page,
329
+ order_by,
330
+ order_asc,
331
+ from_datetime,
332
+ to_datetime,
333
+ namespace,
334
+ _request_auth,
335
+ _content_type,
336
+ _headers,
337
+ _host_index,
338
+ ) -> RequestSerialized:
339
+
340
+ _host = None
341
+
342
+ _collection_formats: Dict[str, str] = {
343
+ }
344
+
345
+ _path_params: Dict[str, str] = {}
346
+ _query_params: List[Tuple[str, str]] = []
347
+ _header_params: Dict[str, Optional[str]] = _headers or {}
348
+ _form_params: List[Tuple[str, str]] = []
349
+ _files: Dict[
350
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
351
+ ] = {}
352
+ _body_params: Optional[bytes] = None
353
+
354
+ # process the path parameters
355
+ # process the query parameters
356
+ if page is not None:
357
+
358
+ _query_params.append(('page', page))
359
+
360
+ if per_page is not None:
361
+
362
+ _query_params.append(('per_page', per_page))
363
+
364
+ if order_by is not None:
365
+
366
+ _query_params.append(('order_by', order_by))
367
+
368
+ if order_asc is not None:
369
+
370
+ _query_params.append(('order_asc', order_asc))
371
+
372
+ if from_datetime is not None:
373
+ if isinstance(from_datetime, datetime):
374
+ _query_params.append(
375
+ (
376
+ 'from_datetime',
377
+ from_datetime.strftime(
378
+ self.api_client.configuration.datetime_format
379
+ )
380
+ )
381
+ )
382
+ else:
383
+ _query_params.append(('from_datetime', from_datetime))
384
+
385
+ if to_datetime is not None:
386
+ if isinstance(to_datetime, datetime):
387
+ _query_params.append(
388
+ (
389
+ 'to_datetime',
390
+ to_datetime.strftime(
391
+ self.api_client.configuration.datetime_format
392
+ )
393
+ )
394
+ )
395
+ else:
396
+ _query_params.append(('to_datetime', to_datetime))
397
+
398
+ if namespace is not None:
399
+
400
+ _query_params.append(('namespace', namespace))
401
+
402
+ # process the header parameters
403
+ # process the form parameters
404
+ # process the body parameter
405
+
406
+
407
+ # set the HTTP header `Accept`
408
+ if 'Accept' not in _header_params:
409
+ _header_params['Accept'] = self.api_client.select_header_accept(
410
+ [
411
+ 'application/json'
412
+ ]
413
+ )
414
+
415
+
416
+ # authentication setting
417
+ _auth_settings: List[str] = [
418
+ 'BasicAuth'
419
+ ]
420
+
421
+ return self.api_client.param_serialize(
422
+ method='GET',
423
+ resource_path='/cleanup/results',
424
+ path_params=_path_params,
425
+ query_params=_query_params,
426
+ header_params=_header_params,
427
+ body=_body_params,
428
+ post_params=_form_params,
429
+ files=_files,
430
+ auth_settings=_auth_settings,
431
+ collection_formats=_collection_formats,
432
+ _host=_host,
433
+ _request_auth=_request_auth
434
+ )
435
+
436
+
437
+
438
+
439
+ @validate_call
440
+ def remove_results(
441
+ self,
442
+ filename: Optional[List[StrictStr]] = None,
443
+ token: Optional[List[StrictStr]] = None,
444
+ hypercube_token: Optional[List[StrictStr]] = None,
445
+ _request_timeout: Union[
446
+ None,
447
+ Annotated[StrictFloat, Field(gt=0)],
448
+ Tuple[
449
+ Annotated[StrictFloat, Field(gt=0)],
450
+ Annotated[StrictFloat, Field(gt=0)]
451
+ ]
452
+ ] = None,
453
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
454
+ _content_type: Optional[StrictStr] = None,
455
+ _headers: Optional[Dict[StrictStr, Any]] = None,
456
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
457
+ ) -> Message:
458
+ """Deletes job results and Hypercube results
459
+
460
+ If a submission token is specified, text entries are also deleted. Admins can delete everyone's results. Inviters can delete results of their own jobs as well as jobs of their invitees. Users can only delete results of their own jobs. Note that jobs that are shared with the logged in user via access groups cannot be deleted via this endpoint. At most 1000 files can be deleted with a single request.
461
+
462
+ :param filename:
463
+ :type filename: List[str]
464
+ :param token:
465
+ :type token: List[str]
466
+ :param hypercube_token:
467
+ :type hypercube_token: List[str]
468
+ :param _request_timeout: timeout setting for this request. If one
469
+ number provided, it will be total request
470
+ timeout. It can also be a pair (tuple) of
471
+ (connection, read) timeouts.
472
+ :type _request_timeout: int, tuple(int, int), optional
473
+ :param _request_auth: set to override the auth_settings for an a single
474
+ request; this effectively ignores the
475
+ authentication in the spec for a single request.
476
+ :type _request_auth: dict, optional
477
+ :param _content_type: force content-type for the request.
478
+ :type _content_type: str, Optional
479
+ :param _headers: set to override the headers for a single
480
+ request; this effectively ignores the headers
481
+ in the spec for a single request.
482
+ :type _headers: dict, optional
483
+ :param _host_index: set to override the host_index for a single
484
+ request; this effectively ignores the host_index
485
+ in the spec for a single request.
486
+ :type _host_index: int, optional
487
+ :return: Returns the result object.
488
+ """ # noqa: E501
489
+
490
+ _param = self._remove_results_serialize(
491
+ filename=filename,
492
+ token=token,
493
+ hypercube_token=hypercube_token,
494
+ _request_auth=_request_auth,
495
+ _content_type=_content_type,
496
+ _headers=_headers,
497
+ _host_index=_host_index
498
+ )
499
+
500
+ _response_types_map: Dict[str, Optional[str]] = {
501
+ '200': "Message",
502
+ '400': "BadInput",
503
+ '403': "Message",
504
+ '404': "FilesNotFound",
505
+ '413': "Message",
506
+ '500': "Message",
507
+ }
508
+ response_data = self.api_client.call_api(
509
+ *_param,
510
+ _request_timeout=_request_timeout
511
+ )
512
+ response_data.read()
513
+ return self.api_client.response_deserialize(
514
+ response_data=response_data,
515
+ response_types_map=_response_types_map,
516
+ ).data
517
+
518
+
519
+ @validate_call
520
+ def remove_results_with_http_info(
521
+ self,
522
+ filename: Optional[List[StrictStr]] = None,
523
+ token: Optional[List[StrictStr]] = None,
524
+ hypercube_token: Optional[List[StrictStr]] = None,
525
+ _request_timeout: Union[
526
+ None,
527
+ Annotated[StrictFloat, Field(gt=0)],
528
+ Tuple[
529
+ Annotated[StrictFloat, Field(gt=0)],
530
+ Annotated[StrictFloat, Field(gt=0)]
531
+ ]
532
+ ] = None,
533
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
534
+ _content_type: Optional[StrictStr] = None,
535
+ _headers: Optional[Dict[StrictStr, Any]] = None,
536
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
537
+ ) -> ApiResponse[Message]:
538
+ """Deletes job results and Hypercube results
539
+
540
+ If a submission token is specified, text entries are also deleted. Admins can delete everyone's results. Inviters can delete results of their own jobs as well as jobs of their invitees. Users can only delete results of their own jobs. Note that jobs that are shared with the logged in user via access groups cannot be deleted via this endpoint. At most 1000 files can be deleted with a single request.
541
+
542
+ :param filename:
543
+ :type filename: List[str]
544
+ :param token:
545
+ :type token: List[str]
546
+ :param hypercube_token:
547
+ :type hypercube_token: List[str]
548
+ :param _request_timeout: timeout setting for this request. If one
549
+ number provided, it will be total request
550
+ timeout. It can also be a pair (tuple) of
551
+ (connection, read) timeouts.
552
+ :type _request_timeout: int, tuple(int, int), optional
553
+ :param _request_auth: set to override the auth_settings for an a single
554
+ request; this effectively ignores the
555
+ authentication in the spec for a single request.
556
+ :type _request_auth: dict, optional
557
+ :param _content_type: force content-type for the request.
558
+ :type _content_type: str, Optional
559
+ :param _headers: set to override the headers for a single
560
+ request; this effectively ignores the headers
561
+ in the spec for a single request.
562
+ :type _headers: dict, optional
563
+ :param _host_index: set to override the host_index for a single
564
+ request; this effectively ignores the host_index
565
+ in the spec for a single request.
566
+ :type _host_index: int, optional
567
+ :return: Returns the result object.
568
+ """ # noqa: E501
569
+
570
+ _param = self._remove_results_serialize(
571
+ filename=filename,
572
+ token=token,
573
+ hypercube_token=hypercube_token,
574
+ _request_auth=_request_auth,
575
+ _content_type=_content_type,
576
+ _headers=_headers,
577
+ _host_index=_host_index
578
+ )
579
+
580
+ _response_types_map: Dict[str, Optional[str]] = {
581
+ '200': "Message",
582
+ '400': "BadInput",
583
+ '403': "Message",
584
+ '404': "FilesNotFound",
585
+ '413': "Message",
586
+ '500': "Message",
587
+ }
588
+ response_data = self.api_client.call_api(
589
+ *_param,
590
+ _request_timeout=_request_timeout
591
+ )
592
+ response_data.read()
593
+ return self.api_client.response_deserialize(
594
+ response_data=response_data,
595
+ response_types_map=_response_types_map,
596
+ )
597
+
598
+
599
+ @validate_call
600
+ def remove_results_without_preload_content(
601
+ self,
602
+ filename: Optional[List[StrictStr]] = None,
603
+ token: Optional[List[StrictStr]] = None,
604
+ hypercube_token: Optional[List[StrictStr]] = None,
605
+ _request_timeout: Union[
606
+ None,
607
+ Annotated[StrictFloat, Field(gt=0)],
608
+ Tuple[
609
+ Annotated[StrictFloat, Field(gt=0)],
610
+ Annotated[StrictFloat, Field(gt=0)]
611
+ ]
612
+ ] = None,
613
+ _request_auth: Optional[Dict[StrictStr, Any]] = None,
614
+ _content_type: Optional[StrictStr] = None,
615
+ _headers: Optional[Dict[StrictStr, Any]] = None,
616
+ _host_index: Annotated[StrictInt, Field(ge=0, le=0)] = 0,
617
+ ) -> RESTResponseType:
618
+ """Deletes job results and Hypercube results
619
+
620
+ If a submission token is specified, text entries are also deleted. Admins can delete everyone's results. Inviters can delete results of their own jobs as well as jobs of their invitees. Users can only delete results of their own jobs. Note that jobs that are shared with the logged in user via access groups cannot be deleted via this endpoint. At most 1000 files can be deleted with a single request.
621
+
622
+ :param filename:
623
+ :type filename: List[str]
624
+ :param token:
625
+ :type token: List[str]
626
+ :param hypercube_token:
627
+ :type hypercube_token: List[str]
628
+ :param _request_timeout: timeout setting for this request. If one
629
+ number provided, it will be total request
630
+ timeout. It can also be a pair (tuple) of
631
+ (connection, read) timeouts.
632
+ :type _request_timeout: int, tuple(int, int), optional
633
+ :param _request_auth: set to override the auth_settings for an a single
634
+ request; this effectively ignores the
635
+ authentication in the spec for a single request.
636
+ :type _request_auth: dict, optional
637
+ :param _content_type: force content-type for the request.
638
+ :type _content_type: str, Optional
639
+ :param _headers: set to override the headers for a single
640
+ request; this effectively ignores the headers
641
+ in the spec for a single request.
642
+ :type _headers: dict, optional
643
+ :param _host_index: set to override the host_index for a single
644
+ request; this effectively ignores the host_index
645
+ in the spec for a single request.
646
+ :type _host_index: int, optional
647
+ :return: Returns the result object.
648
+ """ # noqa: E501
649
+
650
+ _param = self._remove_results_serialize(
651
+ filename=filename,
652
+ token=token,
653
+ hypercube_token=hypercube_token,
654
+ _request_auth=_request_auth,
655
+ _content_type=_content_type,
656
+ _headers=_headers,
657
+ _host_index=_host_index
658
+ )
659
+
660
+ _response_types_map: Dict[str, Optional[str]] = {
661
+ '200': "Message",
662
+ '400': "BadInput",
663
+ '403': "Message",
664
+ '404': "FilesNotFound",
665
+ '413': "Message",
666
+ '500': "Message",
667
+ }
668
+ response_data = self.api_client.call_api(
669
+ *_param,
670
+ _request_timeout=_request_timeout
671
+ )
672
+ return response_data.response
673
+
674
+
675
+ def _remove_results_serialize(
676
+ self,
677
+ filename,
678
+ token,
679
+ hypercube_token,
680
+ _request_auth,
681
+ _content_type,
682
+ _headers,
683
+ _host_index,
684
+ ) -> RequestSerialized:
685
+
686
+ _host = None
687
+
688
+ _collection_formats: Dict[str, str] = {
689
+ 'filename': 'multi',
690
+ 'token': 'multi',
691
+ 'hypercube_token': 'multi',
692
+ }
693
+
694
+ _path_params: Dict[str, str] = {}
695
+ _query_params: List[Tuple[str, str]] = []
696
+ _header_params: Dict[str, Optional[str]] = _headers or {}
697
+ _form_params: List[Tuple[str, str]] = []
698
+ _files: Dict[
699
+ str, Union[str, bytes, List[str], List[bytes], List[Tuple[str, bytes]]]
700
+ ] = {}
701
+ _body_params: Optional[bytes] = None
702
+
703
+ # process the path parameters
704
+ # process the query parameters
705
+ if filename is not None:
706
+
707
+ _query_params.append(('filename', filename))
708
+
709
+ if token is not None:
710
+
711
+ _query_params.append(('token', token))
712
+
713
+ if hypercube_token is not None:
714
+
715
+ _query_params.append(('hypercube_token', hypercube_token))
716
+
717
+ # process the header parameters
718
+ # process the form parameters
719
+ # process the body parameter
720
+
721
+
722
+ # set the HTTP header `Accept`
723
+ if 'Accept' not in _header_params:
724
+ _header_params['Accept'] = self.api_client.select_header_accept(
725
+ [
726
+ 'application/json'
727
+ ]
728
+ )
729
+
730
+
731
+ # authentication setting
732
+ _auth_settings: List[str] = [
733
+ 'BasicAuth'
734
+ ]
735
+
736
+ return self.api_client.param_serialize(
737
+ method='DELETE',
738
+ resource_path='/cleanup/results',
739
+ path_params=_path_params,
740
+ query_params=_query_params,
741
+ header_params=_header_params,
742
+ body=_body_params,
743
+ post_params=_form_params,
744
+ files=_files,
745
+ auth_settings=_auth_settings,
746
+ collection_formats=_collection_formats,
747
+ _host=_host,
748
+ _request_auth=_request_auth
749
+ )
750
+
751
+