metal-stack-api 0.0.14__py3-none-any.whl → 0.0.16__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 (35) hide show
  1. {metal_stack_api-0.0.14.dist-info → metal_stack_api-0.0.16.dist-info}/METADATA +1 -1
  2. {metal_stack_api-0.0.14.dist-info → metal_stack_api-0.0.16.dist-info}/RECORD +35 -35
  3. metalstack/admin/v2/filesystem_connecpy.py +195 -160
  4. metalstack/admin/v2/image_connecpy.py +241 -197
  5. metalstack/admin/v2/ip_connecpy.py +144 -118
  6. metalstack/admin/v2/machine_connecpy.py +144 -118
  7. metalstack/admin/v2/network_connecpy.py +291 -238
  8. metalstack/admin/v2/partition_connecpy.py +241 -197
  9. metalstack/admin/v2/size_connecpy.py +195 -160
  10. metalstack/admin/v2/tenant_connecpy.py +144 -118
  11. metalstack/admin/v2/tenant_pb2.py +10 -10
  12. metalstack/admin/v2/tenant_pb2.pyi +2 -4
  13. metalstack/admin/v2/token_connecpy.py +144 -118
  14. metalstack/api/v2/filesystem_connecpy.py +241 -197
  15. metalstack/api/v2/health_connecpy.py +93 -76
  16. metalstack/api/v2/image_connecpy.py +195 -160
  17. metalstack/api/v2/ip_connecpy.py +291 -238
  18. metalstack/api/v2/machine_connecpy.py +291 -238
  19. metalstack/api/v2/method_connecpy.py +144 -118
  20. metalstack/api/v2/network_connecpy.py +341 -279
  21. metalstack/api/v2/partition_connecpy.py +144 -118
  22. metalstack/api/v2/project_connecpy.py +654 -538
  23. metalstack/api/v2/project_pb2.py +51 -51
  24. metalstack/api/v2/project_pb2.pyi +12 -6
  25. metalstack/api/v2/size_connecpy.py +144 -118
  26. metalstack/api/v2/tenant_connecpy.py +654 -538
  27. metalstack/api/v2/tenant_pb2.py +46 -46
  28. metalstack/api/v2/tenant_pb2.pyi +8 -6
  29. metalstack/api/v2/token_connecpy.py +341 -279
  30. metalstack/api/v2/user_connecpy.py +93 -76
  31. metalstack/api/v2/version_connecpy.py +93 -76
  32. metalstack/infra/v2/bmc_connecpy.py +93 -76
  33. metalstack/infra/v2/switch_connecpy.py +93 -76
  34. {metal_stack_api-0.0.14.dist-info → metal_stack_api-0.0.16.dist-info}/WHEEL +0 -0
  35. {metal_stack_api-0.0.14.dist-info → metal_stack_api-0.0.16.dist-info}/top_level.txt +0 -0
@@ -1,270 +1,314 @@
1
1
  # -*- coding: utf-8 -*-
2
- # Generated by https://github.com/i2y/connecpy/protoc-gen-connecpy. DO NOT EDIT!
2
+ # Generated by https://github.com/i2y/connecpy/v2/protoc-gen-connecpy. DO NOT EDIT!
3
3
  # source: metalstack/admin/v2/image.proto
4
4
 
5
- from typing import Optional, Protocol, Union
5
+ from collections.abc import AsyncIterator, Iterable, Iterator, Mapping
6
+ from typing import Protocol
6
7
 
7
- import httpx
8
-
9
- from connecpy.async_client import AsyncConnecpyClient
10
- from connecpy.base import Endpoint
11
- from connecpy.server import ConnecpyServer
12
- from connecpy.client import ConnecpyClient
13
- from connecpy.context import ClientContext, ServiceContext
8
+ from connecpy.client import ConnecpyClient, ConnecpyClientSync
9
+ from connecpy.code import Code
10
+ from connecpy.exceptions import ConnecpyException
11
+ from connecpy.interceptor import Interceptor, InterceptorSync
12
+ from connecpy.method import IdempotencyLevel, MethodInfo
13
+ from connecpy.request import Headers, RequestContext
14
+ from connecpy.server import ConnecpyASGIApplication, ConnecpyWSGIApplication, Endpoint, EndpointSync
14
15
  import metalstack.admin.v2.image_pb2 as metalstack_dot_admin_dot_v2_dot_image__pb2
15
16
 
16
17
 
17
18
  class ImageService(Protocol):
18
- async def Create(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse: ...
19
- async def Update(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse: ...
20
- async def Delete(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse: ...
21
- async def Usage(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse: ...
22
-
23
-
24
- class ImageServiceServer(ConnecpyServer):
25
- def __init__(self, *, service: ImageService, server_path_prefix=""):
26
- super().__init__()
27
- self._prefix = f"{server_path_prefix}/metalstack.admin.v2.ImageService"
28
- self._endpoints = {
29
- "Create": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse](
30
- service_name="ImageService",
31
- name="Create",
32
- function=getattr(service, "Create"),
33
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
34
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
35
- allowed_methods=("POST",),
36
- ),
37
- "Update": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse](
38
- service_name="ImageService",
39
- name="Update",
40
- function=getattr(service, "Update"),
41
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
42
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
43
- allowed_methods=("POST",),
44
- ),
45
- "Delete": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse](
46
- service_name="ImageService",
47
- name="Delete",
48
- function=getattr(service, "Delete"),
49
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
50
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
51
- allowed_methods=("POST",),
52
- ),
53
- "Usage": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse](
54
- service_name="ImageService",
55
- name="Usage",
56
- function=getattr(service, "Usage"),
57
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
58
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
59
- allowed_methods=("POST",),
60
- ),
61
- }
19
+ async def create(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse:
20
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
62
21
 
63
- def serviceName(self):
64
- return "metalstack.admin.v2.ImageService"
22
+ async def update(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse:
23
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
65
24
 
25
+ async def delete(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse:
26
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
66
27
 
67
- class ImageServiceSync(Protocol):
68
- def Create(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse: ...
69
- def Update(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse: ...
70
- def Delete(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse: ...
71
- def Usage(self, req: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, ctx: ServiceContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse: ...
28
+ async def usage(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse:
29
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
72
30
 
73
31
 
74
- class ImageServiceServerSync(ConnecpyServer):
75
- def __init__(self, *, service: ImageServiceSync, server_path_prefix=""):
76
- super().__init__()
77
- self._prefix = f"{server_path_prefix}/metalstack.admin.v2.ImageService"
78
- self._endpoints = {
79
- "Create": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse](
80
- service_name="ImageService",
81
- name="Create",
82
- function=getattr(service, "Create"),
83
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
84
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
85
- allowed_methods=("POST",),
86
- ),
87
- "Update": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse](
88
- service_name="ImageService",
89
- name="Update",
90
- function=getattr(service, "Update"),
91
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
92
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
93
- allowed_methods=("POST",),
94
- ),
95
- "Delete": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse](
96
- service_name="ImageService",
97
- name="Delete",
98
- function=getattr(service, "Delete"),
99
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
100
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
101
- allowed_methods=("POST",),
102
- ),
103
- "Usage": Endpoint[metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse](
104
- service_name="ImageService",
105
- name="Usage",
106
- function=getattr(service, "Usage"),
107
- input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
108
- output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
109
- allowed_methods=("POST",),
110
- ),
111
- }
32
+ class ImageServiceASGIApplication(ConnecpyASGIApplication):
33
+ def __init__(self, service: ImageService, *, interceptors: Iterable[Interceptor]=(), read_max_bytes: int | None = None):
34
+ super().__init__(
35
+ endpoints={
36
+ "/metalstack.admin.v2.ImageService/Create": Endpoint.unary(
37
+ method=MethodInfo(
38
+ name="Create",
39
+ service_name="metalstack.admin.v2.ImageService",
40
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
41
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
42
+ idempotency_level=IdempotencyLevel.UNKNOWN,
43
+ ),
44
+ function=service.create,
45
+ ),
46
+ "/metalstack.admin.v2.ImageService/Update": Endpoint.unary(
47
+ method=MethodInfo(
48
+ name="Update",
49
+ service_name="metalstack.admin.v2.ImageService",
50
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
51
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
52
+ idempotency_level=IdempotencyLevel.UNKNOWN,
53
+ ),
54
+ function=service.update,
55
+ ),
56
+ "/metalstack.admin.v2.ImageService/Delete": Endpoint.unary(
57
+ method=MethodInfo(
58
+ name="Delete",
59
+ service_name="metalstack.admin.v2.ImageService",
60
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
61
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
62
+ idempotency_level=IdempotencyLevel.UNKNOWN,
63
+ ),
64
+ function=service.delete,
65
+ ),
66
+ "/metalstack.admin.v2.ImageService/Usage": Endpoint.unary(
67
+ method=MethodInfo(
68
+ name="Usage",
69
+ service_name="metalstack.admin.v2.ImageService",
70
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
71
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
72
+ idempotency_level=IdempotencyLevel.UNKNOWN,
73
+ ),
74
+ function=service.usage,
75
+ ),
76
+ },
77
+ interceptors=interceptors,
78
+ read_max_bytes=read_max_bytes,
79
+ )
112
80
 
113
- def serviceName(self):
114
- return "metalstack.admin.v2.ImageService"
81
+ @property
82
+ def path(self):
83
+ """Returns the URL path to mount the application to when serving multiple applications."""
84
+ return "/metalstack.admin.v2.ImageService"
115
85
 
116
86
 
117
87
  class ImageServiceClient(ConnecpyClient):
118
- def Create(
88
+ async def create(
119
89
  self,
120
90
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
121
91
  *,
122
- ctx: Optional[ClientContext] = None,
123
- server_path_prefix: str = "",
124
- **kwargs,
92
+ headers: Headers | Mapping[str, str] | None = None,
93
+ timeout_ms: int | None = None,
125
94
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse:
126
- method = "POST"
127
- return self._make_request(
128
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Create",
129
- ctx=ctx,
95
+ return await self.execute_unary(
130
96
  request=request,
131
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
132
- method=method,
133
- **kwargs,
97
+ method=MethodInfo(
98
+ name="Create",
99
+ service_name="metalstack.admin.v2.ImageService",
100
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
101
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
102
+ idempotency_level=IdempotencyLevel.UNKNOWN,
103
+ ),
104
+ headers=headers,
105
+ timeout_ms=timeout_ms,
134
106
  )
135
107
 
136
- def Update(
108
+ async def update(
137
109
  self,
138
110
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
139
111
  *,
140
- ctx: Optional[ClientContext] = None,
141
- server_path_prefix: str = "",
142
- **kwargs,
112
+ headers: Headers | Mapping[str, str] | None = None,
113
+ timeout_ms: int | None = None,
143
114
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse:
144
- method = "POST"
145
- return self._make_request(
146
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Update",
147
- ctx=ctx,
115
+ return await self.execute_unary(
148
116
  request=request,
149
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
150
- method=method,
151
- **kwargs,
117
+ method=MethodInfo(
118
+ name="Update",
119
+ service_name="metalstack.admin.v2.ImageService",
120
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
121
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
122
+ idempotency_level=IdempotencyLevel.UNKNOWN,
123
+ ),
124
+ headers=headers,
125
+ timeout_ms=timeout_ms,
152
126
  )
153
127
 
154
- def Delete(
128
+ async def delete(
155
129
  self,
156
130
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
157
131
  *,
158
- ctx: Optional[ClientContext] = None,
159
- server_path_prefix: str = "",
160
- **kwargs,
132
+ headers: Headers | Mapping[str, str] | None = None,
133
+ timeout_ms: int | None = None,
161
134
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse:
162
- method = "POST"
163
- return self._make_request(
164
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Delete",
165
- ctx=ctx,
135
+ return await self.execute_unary(
166
136
  request=request,
167
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
168
- method=method,
169
- **kwargs,
137
+ method=MethodInfo(
138
+ name="Delete",
139
+ service_name="metalstack.admin.v2.ImageService",
140
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
141
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
142
+ idempotency_level=IdempotencyLevel.UNKNOWN,
143
+ ),
144
+ headers=headers,
145
+ timeout_ms=timeout_ms,
170
146
  )
171
147
 
172
- def Usage(
148
+ async def usage(
173
149
  self,
174
150
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
175
151
  *,
176
- ctx: Optional[ClientContext] = None,
177
- server_path_prefix: str = "",
178
- **kwargs,
152
+ headers: Headers | Mapping[str, str] | None = None,
153
+ timeout_ms: int | None = None,
179
154
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse:
180
- method = "POST"
181
- return self._make_request(
182
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Usage",
183
- ctx=ctx,
155
+ return await self.execute_unary(
184
156
  request=request,
185
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
186
- method=method,
187
- **kwargs,
157
+ method=MethodInfo(
158
+ name="Usage",
159
+ service_name="metalstack.admin.v2.ImageService",
160
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
161
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
162
+ idempotency_level=IdempotencyLevel.UNKNOWN,
163
+ ),
164
+ headers=headers,
165
+ timeout_ms=timeout_ms,
166
+ )
167
+
168
+
169
+ class ImageServiceSync(Protocol):
170
+ def create(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse:
171
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
172
+ def update(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse:
173
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
174
+ def delete(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse:
175
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
176
+ def usage(self, request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest, ctx: RequestContext) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse:
177
+ raise ConnecpyException(Code.UNIMPLEMENTED, "Not implemented")
178
+
179
+
180
+ class ImageServiceWSGIApplication(ConnecpyWSGIApplication):
181
+ def __init__(self, service: ImageServiceSync, interceptors: Iterable[InterceptorSync]=(), read_max_bytes: int | None = None):
182
+ super().__init__(
183
+ endpoints={
184
+ "/metalstack.admin.v2.ImageService/Create": EndpointSync.unary(
185
+ method=MethodInfo(
186
+ name="Create",
187
+ service_name="metalstack.admin.v2.ImageService",
188
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
189
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
190
+ idempotency_level=IdempotencyLevel.UNKNOWN,
191
+ ),
192
+ function=service.create,
193
+ ),
194
+ "/metalstack.admin.v2.ImageService/Update": EndpointSync.unary(
195
+ method=MethodInfo(
196
+ name="Update",
197
+ service_name="metalstack.admin.v2.ImageService",
198
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
199
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
200
+ idempotency_level=IdempotencyLevel.UNKNOWN,
201
+ ),
202
+ function=service.update,
203
+ ),
204
+ "/metalstack.admin.v2.ImageService/Delete": EndpointSync.unary(
205
+ method=MethodInfo(
206
+ name="Delete",
207
+ service_name="metalstack.admin.v2.ImageService",
208
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
209
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
210
+ idempotency_level=IdempotencyLevel.UNKNOWN,
211
+ ),
212
+ function=service.delete,
213
+ ),
214
+ "/metalstack.admin.v2.ImageService/Usage": EndpointSync.unary(
215
+ method=MethodInfo(
216
+ name="Usage",
217
+ service_name="metalstack.admin.v2.ImageService",
218
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
219
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
220
+ idempotency_level=IdempotencyLevel.UNKNOWN,
221
+ ),
222
+ function=service.usage,
223
+ ),
224
+ },
225
+ interceptors=interceptors,
226
+ read_max_bytes=read_max_bytes,
188
227
  )
189
228
 
229
+ @property
230
+ def path(self):
231
+ """Returns the URL path to mount the application to when serving multiple applications."""
232
+ return "/metalstack.admin.v2.ImageService"
233
+
190
234
 
191
- class AsyncImageServiceClient(AsyncConnecpyClient):
192
- async def Create(
235
+ class ImageServiceClientSync(ConnecpyClientSync):
236
+ def create(
193
237
  self,
194
238
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
195
239
  *,
196
- ctx: Optional[ClientContext] = None,
197
- server_path_prefix: str = "",
198
- session: Union[httpx.AsyncClient, None] = None,
199
- **kwargs,
240
+ headers: Headers | Mapping[str, str] | None = None,
241
+ timeout_ms: int | None = None,
200
242
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse:
201
- method = "POST"
202
- return await self._make_request(
203
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Create",
204
- ctx=ctx,
243
+ return self.execute_unary(
205
244
  request=request,
206
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
207
- method=method,
208
- session=session,
209
- **kwargs,
245
+ method=MethodInfo(
246
+ name="Create",
247
+ service_name="metalstack.admin.v2.ImageService",
248
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateRequest,
249
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceCreateResponse,
250
+ idempotency_level=IdempotencyLevel.UNKNOWN,
251
+ ),
252
+ headers=headers,
253
+ timeout_ms=timeout_ms,
210
254
  )
211
255
 
212
- async def Update(
256
+ def update(
213
257
  self,
214
258
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
215
259
  *,
216
- ctx: Optional[ClientContext] = None,
217
- server_path_prefix: str = "",
218
- session: Union[httpx.AsyncClient, None] = None,
219
- **kwargs,
260
+ headers: Headers | Mapping[str, str] | None = None,
261
+ timeout_ms: int | None = None,
220
262
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse:
221
- method = "POST"
222
- return await self._make_request(
223
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Update",
224
- ctx=ctx,
263
+ return self.execute_unary(
225
264
  request=request,
226
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
227
- method=method,
228
- session=session,
229
- **kwargs,
265
+ method=MethodInfo(
266
+ name="Update",
267
+ service_name="metalstack.admin.v2.ImageService",
268
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateRequest,
269
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUpdateResponse,
270
+ idempotency_level=IdempotencyLevel.UNKNOWN,
271
+ ),
272
+ headers=headers,
273
+ timeout_ms=timeout_ms,
230
274
  )
231
275
 
232
- async def Delete(
276
+ def delete(
233
277
  self,
234
278
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
235
279
  *,
236
- ctx: Optional[ClientContext] = None,
237
- server_path_prefix: str = "",
238
- session: Union[httpx.AsyncClient, None] = None,
239
- **kwargs,
280
+ headers: Headers | Mapping[str, str] | None = None,
281
+ timeout_ms: int | None = None,
240
282
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse:
241
- method = "POST"
242
- return await self._make_request(
243
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Delete",
244
- ctx=ctx,
283
+ return self.execute_unary(
245
284
  request=request,
246
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
247
- method=method,
248
- session=session,
249
- **kwargs,
285
+ method=MethodInfo(
286
+ name="Delete",
287
+ service_name="metalstack.admin.v2.ImageService",
288
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteRequest,
289
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceDeleteResponse,
290
+ idempotency_level=IdempotencyLevel.UNKNOWN,
291
+ ),
292
+ headers=headers,
293
+ timeout_ms=timeout_ms,
250
294
  )
251
295
 
252
- async def Usage(
296
+ def usage(
253
297
  self,
254
298
  request: metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
255
299
  *,
256
- ctx: Optional[ClientContext] = None,
257
- server_path_prefix: str = "",
258
- session: Union[httpx.AsyncClient, None] = None,
259
- **kwargs,
300
+ headers: Headers | Mapping[str, str] | None = None,
301
+ timeout_ms: int | None = None,
260
302
  ) -> metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse:
261
- method = "POST"
262
- return await self._make_request(
263
- url=f"{server_path_prefix}/metalstack.admin.v2.ImageService/Usage",
264
- ctx=ctx,
303
+ return self.execute_unary(
265
304
  request=request,
266
- response_class=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
267
- method=method,
268
- session=session,
269
- **kwargs,
305
+ method=MethodInfo(
306
+ name="Usage",
307
+ service_name="metalstack.admin.v2.ImageService",
308
+ input=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageRequest,
309
+ output=metalstack_dot_admin_dot_v2_dot_image__pb2.ImageServiceUsageResponse,
310
+ idempotency_level=IdempotencyLevel.UNKNOWN,
311
+ ),
312
+ headers=headers,
313
+ timeout_ms=timeout_ms,
270
314
  )