[bug 581] Fix parameter checking if no data-type
[osm/N2VC.git] / modules / libjuju / juju / client / _definitions.py
1 # DO NOT CHANGE THIS FILE! This file is auto-generated by facade.py.
2 # Changes will be overwritten/lost when the file is regenerated.
3
4 from juju.client.facade import ReturnMapping, Type
5
6
7 class APIHostPortsResult(Type):
8 _toSchema = {'servers': 'servers'}
9 _toPy = {'servers': 'servers'}
10 def __init__(self, servers=None, **unknown_fields):
11 '''
12 servers : typing.Sequence<+T_co>[~HostPort]<~HostPort>
13 '''
14 self.servers = [HostPort.from_json(o) for o in servers or []]
15
16
17
18 class Action(Type):
19 _toSchema = {'name': 'name', 'parameters': 'parameters', 'receiver': 'receiver', 'tag': 'tag'}
20 _toPy = {'name': 'name', 'parameters': 'parameters', 'receiver': 'receiver', 'tag': 'tag'}
21 def __init__(self, name=None, parameters=None, receiver=None, tag=None, **unknown_fields):
22 '''
23 name : str
24 parameters : typing.Mapping<~KT, +VT_co>[str, typing.Any]
25 receiver : str
26 tag : str
27 '''
28 self.name = name
29 self.parameters = parameters
30 self.receiver = receiver
31 self.tag = tag
32
33
34
35 class ActionExecutionResult(Type):
36 _toSchema = {'action_tag': 'action-tag', 'message': 'message', 'results': 'results', 'status': 'status'}
37 _toPy = {'action-tag': 'action_tag', 'message': 'message', 'results': 'results', 'status': 'status'}
38 def __init__(self, action_tag=None, message=None, results=None, status=None, **unknown_fields):
39 '''
40 action_tag : str
41 message : str
42 results : typing.Mapping<~KT, +VT_co>[str, typing.Any]
43 status : str
44 '''
45 self.action_tag = action_tag
46 self.message = message
47 self.results = results
48 self.status = status
49
50
51
52 class ActionExecutionResults(Type):
53 _toSchema = {'results': 'results'}
54 _toPy = {'results': 'results'}
55 def __init__(self, results=None, **unknown_fields):
56 '''
57 results : typing.Sequence<+T_co>[~ActionExecutionResult]<~ActionExecutionResult>
58 '''
59 self.results = [ActionExecutionResult.from_json(o) for o in results or []]
60
61
62
63 class ActionResult(Type):
64 _toSchema = {'action': 'action', 'completed': 'completed', 'enqueued': 'enqueued', 'error': 'error', 'message': 'message', 'output': 'output', 'started': 'started', 'status': 'status'}
65 _toPy = {'action': 'action', 'completed': 'completed', 'enqueued': 'enqueued', 'error': 'error', 'message': 'message', 'output': 'output', 'started': 'started', 'status': 'status'}
66 def __init__(self, action=None, completed=None, enqueued=None, error=None, message=None, output=None, started=None, status=None, **unknown_fields):
67 '''
68 action : Action
69 completed : str
70 enqueued : str
71 error : Error
72 message : str
73 output : typing.Mapping<~KT, +VT_co>[str, typing.Any]
74 started : str
75 status : str
76 '''
77 self.action = Action.from_json(action) if action else None
78 self.completed = completed
79 self.enqueued = enqueued
80 self.error = Error.from_json(error) if error else None
81 self.message = message
82 self.output = output
83 self.started = started
84 self.status = status
85
86
87
88 class ActionResults(Type):
89 _toSchema = {'results': 'results'}
90 _toPy = {'results': 'results'}
91 def __init__(self, results=None, **unknown_fields):
92 '''
93 results : typing.Sequence<+T_co>[~ActionResult]<~ActionResult>
94 '''
95 self.results = [ActionResult.from_json(o) for o in results or []]
96
97
98
99 class ActionSpec(Type):
100 _toSchema = {'description': 'description', 'params': 'params'}
101 _toPy = {'description': 'description', 'params': 'params'}
102 def __init__(self, description=None, params=None, **unknown_fields):
103 '''
104 description : str
105 params : typing.Mapping<~KT, +VT_co>[str, typing.Any]
106 '''
107 self.description = description
108 self.params = params
109
110
111
112 class Actions(Type):
113 _toSchema = {'actions': 'actions'}
114 _toPy = {'actions': 'actions'}
115 def __init__(self, actions=None, **unknown_fields):
116 '''
117 actions : typing.Sequence<+T_co>[~Action]<~Action>
118 '''
119 self.actions = [Action.from_json(o) for o in actions or []]
120
121
122
123 class ActionsByName(Type):
124 _toSchema = {'actions': 'actions', 'error': 'error', 'name': 'name'}
125 _toPy = {'actions': 'actions', 'error': 'error', 'name': 'name'}
126 def __init__(self, actions=None, error=None, name=None, **unknown_fields):
127 '''
128 actions : typing.Sequence<+T_co>[~ActionResult]<~ActionResult>
129 error : Error
130 name : str
131 '''
132 self.actions = [ActionResult.from_json(o) for o in actions or []]
133 self.error = Error.from_json(error) if error else None
134 self.name = name
135
136
137
138 class ActionsByNames(Type):
139 _toSchema = {'actions': 'actions'}
140 _toPy = {'actions': 'actions'}
141 def __init__(self, actions=None, **unknown_fields):
142 '''
143 actions : typing.Sequence<+T_co>[~ActionsByName]<~ActionsByName>
144 '''
145 self.actions = [ActionsByName.from_json(o) for o in actions or []]
146
147
148
149 class ActionsByReceiver(Type):
150 _toSchema = {'actions': 'actions', 'error': 'error', 'receiver': 'receiver'}
151 _toPy = {'actions': 'actions', 'error': 'error', 'receiver': 'receiver'}
152 def __init__(self, actions=None, error=None, receiver=None, **unknown_fields):
153 '''
154 actions : typing.Sequence<+T_co>[~ActionResult]<~ActionResult>
155 error : Error
156 receiver : str
157 '''
158 self.actions = [ActionResult.from_json(o) for o in actions or []]
159 self.error = Error.from_json(error) if error else None
160 self.receiver = receiver
161
162
163
164 class ActionsByReceivers(Type):
165 _toSchema = {'actions': 'actions'}
166 _toPy = {'actions': 'actions'}
167 def __init__(self, actions=None, **unknown_fields):
168 '''
169 actions : typing.Sequence<+T_co>[~ActionsByReceiver]<~ActionsByReceiver>
170 '''
171 self.actions = [ActionsByReceiver.from_json(o) for o in actions or []]
172
173
174
175 class AddApplicationUnits(Type):
176 _toSchema = {'application': 'application', 'num_units': 'num-units', 'placement': 'placement'}
177 _toPy = {'application': 'application', 'num-units': 'num_units', 'placement': 'placement'}
178 def __init__(self, application=None, num_units=None, placement=None, **unknown_fields):
179 '''
180 application : str
181 num_units : int
182 placement : typing.Sequence<+T_co>[~Placement]<~Placement>
183 '''
184 self.application = application
185 self.num_units = num_units
186 self.placement = [Placement.from_json(o) for o in placement or []]
187
188
189
190 class AddApplicationUnitsResults(Type):
191 _toSchema = {'units': 'units'}
192 _toPy = {'units': 'units'}
193 def __init__(self, units=None, **unknown_fields):
194 '''
195 units : typing.Sequence<+T_co>[str]
196 '''
197 self.units = units
198
199
200
201 class AddCharm(Type):
202 _toSchema = {'channel': 'channel', 'url': 'url'}
203 _toPy = {'channel': 'channel', 'url': 'url'}
204 def __init__(self, channel=None, url=None, **unknown_fields):
205 '''
206 channel : str
207 url : str
208 '''
209 self.channel = channel
210 self.url = url
211
212
213
214 class AddCharmWithAuthorization(Type):
215 _toSchema = {'channel': 'channel', 'macaroon': 'macaroon', 'url': 'url'}
216 _toPy = {'channel': 'channel', 'macaroon': 'macaroon', 'url': 'url'}
217 def __init__(self, channel=None, macaroon=None, url=None, **unknown_fields):
218 '''
219 channel : str
220 macaroon : Macaroon
221 url : str
222 '''
223 self.channel = channel
224 self.macaroon = Macaroon.from_json(macaroon) if macaroon else None
225 self.url = url
226
227
228
229 class AddMachineParams(Type):
230 _toSchema = {'addresses': 'addresses', 'constraints': 'constraints', 'container_type': 'container-type', 'disks': 'disks', 'hardware_characteristics': 'hardware-characteristics', 'instance_id': 'instance-id', 'jobs': 'jobs', 'nonce': 'nonce', 'parent_id': 'parent-id', 'placement': 'placement', 'series': 'series'}
231 _toPy = {'addresses': 'addresses', 'constraints': 'constraints', 'container-type': 'container_type', 'disks': 'disks', 'hardware-characteristics': 'hardware_characteristics', 'instance-id': 'instance_id', 'jobs': 'jobs', 'nonce': 'nonce', 'parent-id': 'parent_id', 'placement': 'placement', 'series': 'series'}
232 def __init__(self, addresses=None, constraints=None, container_type=None, disks=None, hardware_characteristics=None, instance_id=None, jobs=None, nonce=None, parent_id=None, placement=None, series=None, **unknown_fields):
233 '''
234 addresses : typing.Sequence<+T_co>[~Address]<~Address>
235 constraints : Value
236 container_type : str
237 disks : typing.Sequence<+T_co>[~Constraints]<~Constraints>
238 hardware_characteristics : HardwareCharacteristics
239 instance_id : str
240 jobs : typing.Sequence<+T_co>[str]
241 nonce : str
242 parent_id : str
243 placement : Placement
244 series : str
245 '''
246 self.addresses = [Address.from_json(o) for o in addresses or []]
247 self.constraints = Value.from_json(constraints) if constraints else None
248 self.container_type = container_type
249 self.disks = [Constraints.from_json(o) for o in disks or []]
250 self.hardware_characteristics = HardwareCharacteristics.from_json(hardware_characteristics) if hardware_characteristics else None
251 self.instance_id = instance_id
252 self.jobs = jobs
253 self.nonce = nonce
254 self.parent_id = parent_id
255 self.placement = Placement.from_json(placement) if placement else None
256 self.series = series
257
258
259
260 class AddMachines(Type):
261 _toSchema = {'params': 'params'}
262 _toPy = {'params': 'params'}
263 def __init__(self, params=None, **unknown_fields):
264 '''
265 params : typing.Sequence<+T_co>[~AddMachineParams]<~AddMachineParams>
266 '''
267 self.params = [AddMachineParams.from_json(o) for o in params or []]
268
269
270
271 class AddMachinesResult(Type):
272 _toSchema = {'error': 'error', 'machine': 'machine'}
273 _toPy = {'error': 'error', 'machine': 'machine'}
274 def __init__(self, error=None, machine=None, **unknown_fields):
275 '''
276 error : Error
277 machine : str
278 '''
279 self.error = Error.from_json(error) if error else None
280 self.machine = machine
281
282
283
284 class AddMachinesResults(Type):
285 _toSchema = {'machines': 'machines'}
286 _toPy = {'machines': 'machines'}
287 def __init__(self, machines=None, **unknown_fields):
288 '''
289 machines : typing.Sequence<+T_co>[~AddMachinesResult]<~AddMachinesResult>
290 '''
291 self.machines = [AddMachinesResult.from_json(o) for o in machines or []]
292
293
294
295 class AddPendingResourcesArgs(Type):
296 _toSchema = {'addcharmwithauthorization': 'AddCharmWithAuthorization', 'entity': 'Entity', 'resources': 'Resources'}
297 _toPy = {'AddCharmWithAuthorization': 'addcharmwithauthorization', 'Entity': 'entity', 'Resources': 'resources'}
298 def __init__(self, addcharmwithauthorization=None, entity=None, resources=None, **unknown_fields):
299 '''
300 addcharmwithauthorization : AddCharmWithAuthorization
301 entity : Entity
302 resources : typing.Sequence<+T_co>[~CharmResource]<~CharmResource>
303 '''
304 self.addcharmwithauthorization = AddCharmWithAuthorization.from_json(addcharmwithauthorization) if addcharmwithauthorization else None
305 self.entity = Entity.from_json(entity) if entity else None
306 self.resources = [CharmResource.from_json(o) for o in resources or []]
307
308
309
310 class AddPendingResourcesResult(Type):
311 _toSchema = {'errorresult': 'ErrorResult', 'pending_ids': 'pending-ids'}
312 _toPy = {'ErrorResult': 'errorresult', 'pending-ids': 'pending_ids'}
313 def __init__(self, errorresult=None, pending_ids=None, **unknown_fields):
314 '''
315 errorresult : ErrorResult
316 pending_ids : typing.Sequence<+T_co>[str]
317 '''
318 self.errorresult = ErrorResult.from_json(errorresult) if errorresult else None
319 self.pending_ids = pending_ids
320
321
322
323 class AddRelation(Type):
324 _toSchema = {'endpoints': 'endpoints'}
325 _toPy = {'endpoints': 'endpoints'}
326 def __init__(self, endpoints=None, **unknown_fields):
327 '''
328 endpoints : typing.Sequence<+T_co>[str]
329 '''
330 self.endpoints = endpoints
331
332
333
334 class AddRelationResults(Type):
335 _toSchema = {'endpoints': 'endpoints'}
336 _toPy = {'endpoints': 'endpoints'}
337 def __init__(self, endpoints=None, **unknown_fields):
338 '''
339 endpoints : typing.Mapping<~KT, +VT_co>[str, ~CharmRelation]<~CharmRelation>
340 '''
341 self.endpoints = endpoints
342
343
344
345 class AddSubnetParams(Type):
346 _toSchema = {'space_tag': 'space-tag', 'subnet_provider_id': 'subnet-provider-id', 'subnet_tag': 'subnet-tag', 'zones': 'zones'}
347 _toPy = {'space-tag': 'space_tag', 'subnet-provider-id': 'subnet_provider_id', 'subnet-tag': 'subnet_tag', 'zones': 'zones'}
348 def __init__(self, space_tag=None, subnet_provider_id=None, subnet_tag=None, zones=None, **unknown_fields):
349 '''
350 space_tag : str
351 subnet_provider_id : str
352 subnet_tag : str
353 zones : typing.Sequence<+T_co>[str]
354 '''
355 self.space_tag = space_tag
356 self.subnet_provider_id = subnet_provider_id
357 self.subnet_tag = subnet_tag
358 self.zones = zones
359
360
361
362 class AddSubnetsParams(Type):
363 _toSchema = {'subnets': 'subnets'}
364 _toPy = {'subnets': 'subnets'}
365 def __init__(self, subnets=None, **unknown_fields):
366 '''
367 subnets : typing.Sequence<+T_co>[~AddSubnetParams]<~AddSubnetParams>
368 '''
369 self.subnets = [AddSubnetParams.from_json(o) for o in subnets or []]
370
371
372
373 class AddUser(Type):
374 _toSchema = {'display_name': 'display-name', 'password': 'password', 'username': 'username'}
375 _toPy = {'display-name': 'display_name', 'password': 'password', 'username': 'username'}
376 def __init__(self, display_name=None, password=None, username=None, **unknown_fields):
377 '''
378 display_name : str
379 password : str
380 username : str
381 '''
382 self.display_name = display_name
383 self.password = password
384 self.username = username
385
386
387
388 class AddUserResult(Type):
389 _toSchema = {'error': 'error', 'secret_key': 'secret-key', 'tag': 'tag'}
390 _toPy = {'error': 'error', 'secret-key': 'secret_key', 'tag': 'tag'}
391 def __init__(self, error=None, secret_key=None, tag=None, **unknown_fields):
392 '''
393 error : Error
394 secret_key : typing.Sequence<+T_co>[int]
395 tag : str
396 '''
397 self.error = Error.from_json(error) if error else None
398 self.secret_key = secret_key
399 self.tag = tag
400
401
402
403 class AddUserResults(Type):
404 _toSchema = {'results': 'results'}
405 _toPy = {'results': 'results'}
406 def __init__(self, results=None, **unknown_fields):
407 '''
408 results : typing.Sequence<+T_co>[~AddUserResult]<~AddUserResult>
409 '''
410 self.results = [AddUserResult.from_json(o) for o in results or []]
411
412
413
414 class AddUsers(Type):
415 _toSchema = {'users': 'users'}
416 _toPy = {'users': 'users'}
417 def __init__(self, users=None, **unknown_fields):
418 '''
419 users : typing.Sequence<+T_co>[~AddUser]<~AddUser>
420 '''
421 self.users = [AddUser.from_json(o) for o in users or []]
422
423
424
425 class Address(Type):
426 _toSchema = {'scope': 'scope', 'space_name': 'space-name', 'type_': 'type', 'value': 'value'}
427 _toPy = {'scope': 'scope', 'space-name': 'space_name', 'type': 'type_', 'value': 'value'}
428 def __init__(self, scope=None, space_name=None, type_=None, value=None, **unknown_fields):
429 '''
430 scope : str
431 space_name : str
432 type_ : str
433 value : str
434 '''
435 self.scope = scope
436 self.space_name = space_name
437 self.type_ = type_
438 self.value = value
439
440
441
442 class AdoptResourcesArgs(Type):
443 _toSchema = {'model_tag': 'model-tag', 'source_controller_version': 'source-controller-version'}
444 _toPy = {'model-tag': 'model_tag', 'source-controller-version': 'source_controller_version'}
445 def __init__(self, model_tag=None, source_controller_version=None, **unknown_fields):
446 '''
447 model_tag : str
448 source_controller_version : Number
449 '''
450 self.model_tag = model_tag
451 self.source_controller_version = Number.from_json(source_controller_version) if source_controller_version else None
452
453
454
455 class AgentGetEntitiesResult(Type):
456 _toSchema = {'container_type': 'container-type', 'error': 'error', 'jobs': 'jobs', 'life': 'life'}
457 _toPy = {'container-type': 'container_type', 'error': 'error', 'jobs': 'jobs', 'life': 'life'}
458 def __init__(self, container_type=None, error=None, jobs=None, life=None, **unknown_fields):
459 '''
460 container_type : str
461 error : Error
462 jobs : typing.Sequence<+T_co>[str]
463 life : str
464 '''
465 self.container_type = container_type
466 self.error = Error.from_json(error) if error else None
467 self.jobs = jobs
468 self.life = life
469
470
471
472 class AgentGetEntitiesResults(Type):
473 _toSchema = {'entities': 'entities'}
474 _toPy = {'entities': 'entities'}
475 def __init__(self, entities=None, **unknown_fields):
476 '''
477 entities : typing.Sequence<+T_co>[~AgentGetEntitiesResult]<~AgentGetEntitiesResult>
478 '''
479 self.entities = [AgentGetEntitiesResult.from_json(o) for o in entities or []]
480
481
482
483 class AgentVersionResult(Type):
484 _toSchema = {'version': 'version'}
485 _toPy = {'version': 'version'}
486 def __init__(self, version=None, **unknown_fields):
487 '''
488 version : Number
489 '''
490 self.version = Number.from_json(version) if version else None
491
492
493
494 class AllWatcherId(Type):
495 _toSchema = {'watcher_id': 'watcher-id'}
496 _toPy = {'watcher-id': 'watcher_id'}
497 def __init__(self, watcher_id=None, **unknown_fields):
498 '''
499 watcher_id : str
500 '''
501 self.watcher_id = watcher_id
502
503
504
505 class AllWatcherNextResults(Type):
506 _toSchema = {'deltas': 'deltas'}
507 _toPy = {'deltas': 'deltas'}
508 def __init__(self, deltas=None, **unknown_fields):
509 '''
510 deltas : typing.Sequence<+T_co>[~Delta]<~Delta>
511 '''
512 self.deltas = [Delta.from_json(o) for o in deltas or []]
513
514
515
516 class AnnotationsGetResult(Type):
517 _toSchema = {'annotations': 'annotations', 'entity': 'entity', 'error': 'error'}
518 _toPy = {'annotations': 'annotations', 'entity': 'entity', 'error': 'error'}
519 def __init__(self, annotations=None, entity=None, error=None, **unknown_fields):
520 '''
521 annotations : typing.Mapping<~KT, +VT_co>[str, str]
522 entity : str
523 error : ErrorResult
524 '''
525 self.annotations = annotations
526 self.entity = entity
527 self.error = ErrorResult.from_json(error) if error else None
528
529
530
531 class AnnotationsGetResults(Type):
532 _toSchema = {'results': 'results'}
533 _toPy = {'results': 'results'}
534 def __init__(self, results=None, **unknown_fields):
535 '''
536 results : typing.Sequence<+T_co>[~AnnotationsGetResult]<~AnnotationsGetResult>
537 '''
538 self.results = [AnnotationsGetResult.from_json(o) for o in results or []]
539
540
541
542 class AnnotationsSet(Type):
543 _toSchema = {'annotations': 'annotations'}
544 _toPy = {'annotations': 'annotations'}
545 def __init__(self, annotations=None, **unknown_fields):
546 '''
547 annotations : typing.Sequence<+T_co>[~EntityAnnotations]<~EntityAnnotations>
548 '''
549 self.annotations = [EntityAnnotations.from_json(o) for o in annotations or []]
550
551
552
553 class ApplicationCharmActionsResult(Type):
554 _toSchema = {'actions': 'actions', 'application_tag': 'application-tag', 'error': 'error'}
555 _toPy = {'actions': 'actions', 'application-tag': 'application_tag', 'error': 'error'}
556 def __init__(self, actions=None, application_tag=None, error=None, **unknown_fields):
557 '''
558 actions : typing.Mapping<~KT, +VT_co>[str, ~ActionSpec]<~ActionSpec>
559 application_tag : str
560 error : Error
561 '''
562 self.actions = actions
563 self.application_tag = application_tag
564 self.error = Error.from_json(error) if error else None
565
566
567
568 class ApplicationCharmRelations(Type):
569 _toSchema = {'application': 'application'}
570 _toPy = {'application': 'application'}
571 def __init__(self, application=None, **unknown_fields):
572 '''
573 application : str
574 '''
575 self.application = application
576
577
578
579 class ApplicationCharmRelationsResults(Type):
580 _toSchema = {'charm_relations': 'charm-relations'}
581 _toPy = {'charm-relations': 'charm_relations'}
582 def __init__(self, charm_relations=None, **unknown_fields):
583 '''
584 charm_relations : typing.Sequence<+T_co>[str]
585 '''
586 self.charm_relations = charm_relations
587
588
589
590 class ApplicationDeploy(Type):
591 _toSchema = {'application': 'application', 'channel': 'channel', 'charm_url': 'charm-url', 'config': 'config', 'config_yaml': 'config-yaml', 'constraints': 'constraints', 'endpoint_bindings': 'endpoint-bindings', 'num_units': 'num-units', 'placement': 'placement', 'resources': 'resources', 'series': 'series', 'storage': 'storage'}
592 _toPy = {'application': 'application', 'channel': 'channel', 'charm-url': 'charm_url', 'config': 'config', 'config-yaml': 'config_yaml', 'constraints': 'constraints', 'endpoint-bindings': 'endpoint_bindings', 'num-units': 'num_units', 'placement': 'placement', 'resources': 'resources', 'series': 'series', 'storage': 'storage'}
593 def __init__(self, application=None, channel=None, charm_url=None, config=None, config_yaml=None, constraints=None, endpoint_bindings=None, num_units=None, placement=None, resources=None, series=None, storage=None, **unknown_fields):
594 '''
595 application : str
596 channel : str
597 charm_url : str
598 config : typing.Mapping<~KT, +VT_co>[str, str]
599 config_yaml : str
600 constraints : Value
601 endpoint_bindings : typing.Mapping<~KT, +VT_co>[str, str]
602 num_units : int
603 placement : typing.Sequence<+T_co>[~Placement]<~Placement>
604 resources : typing.Mapping<~KT, +VT_co>[str, str]
605 series : str
606 storage : typing.Mapping<~KT, +VT_co>[str, ~Constraints]<~Constraints>
607 '''
608 self.application = application
609 self.channel = channel
610 self.charm_url = charm_url
611 self.config = config
612 self.config_yaml = config_yaml
613 self.constraints = Value.from_json(constraints) if constraints else None
614 self.endpoint_bindings = endpoint_bindings
615 self.num_units = num_units
616 self.placement = [Placement.from_json(o) for o in placement or []]
617 self.resources = resources
618 self.series = series
619 self.storage = storage
620
621
622
623 class ApplicationDestroy(Type):
624 _toSchema = {'application': 'application'}
625 _toPy = {'application': 'application'}
626 def __init__(self, application=None, **unknown_fields):
627 '''
628 application : str
629 '''
630 self.application = application
631
632
633
634 class ApplicationExpose(Type):
635 _toSchema = {'application': 'application'}
636 _toPy = {'application': 'application'}
637 def __init__(self, application=None, **unknown_fields):
638 '''
639 application : str
640 '''
641 self.application = application
642
643
644
645 class ApplicationGet(Type):
646 _toSchema = {'application': 'application'}
647 _toPy = {'application': 'application'}
648 def __init__(self, application=None, **unknown_fields):
649 '''
650 application : str
651 '''
652 self.application = application
653
654
655
656 class ApplicationGetResults(Type):
657 _toSchema = {'application': 'application', 'charm': 'charm', 'config': 'config', 'constraints': 'constraints', 'series': 'series'}
658 _toPy = {'application': 'application', 'charm': 'charm', 'config': 'config', 'constraints': 'constraints', 'series': 'series'}
659 def __init__(self, application=None, charm=None, config=None, constraints=None, series=None, **unknown_fields):
660 '''
661 application : str
662 charm : str
663 config : typing.Mapping<~KT, +VT_co>[str, typing.Any]
664 constraints : Value
665 series : str
666 '''
667 self.application = application
668 self.charm = charm
669 self.config = config
670 self.constraints = Value.from_json(constraints) if constraints else None
671 self.series = series
672
673
674
675 class ApplicationMetricCredential(Type):
676 _toSchema = {'application': 'application', 'metrics_credentials': 'metrics-credentials'}
677 _toPy = {'application': 'application', 'metrics-credentials': 'metrics_credentials'}
678 def __init__(self, application=None, metrics_credentials=None, **unknown_fields):
679 '''
680 application : str
681 metrics_credentials : typing.Sequence<+T_co>[int]
682 '''
683 self.application = application
684 self.metrics_credentials = metrics_credentials
685
686
687
688 class ApplicationMetricCredentials(Type):
689 _toSchema = {'creds': 'creds'}
690 _toPy = {'creds': 'creds'}
691 def __init__(self, creds=None, **unknown_fields):
692 '''
693 creds : typing.Sequence<+T_co>[~ApplicationMetricCredential]<~ApplicationMetricCredential>
694 '''
695 self.creds = [ApplicationMetricCredential.from_json(o) for o in creds or []]
696
697
698
699 class ApplicationOffer(Type):
700 _toSchema = {'access': 'access', 'application_description': 'application-description', 'bindings': 'bindings', 'endpoints': 'endpoints', 'offer_name': 'offer-name', 'offer_url': 'offer-url', 'source_model_tag': 'source-model-tag', 'spaces': 'spaces'}
701 _toPy = {'access': 'access', 'application-description': 'application_description', 'bindings': 'bindings', 'endpoints': 'endpoints', 'offer-name': 'offer_name', 'offer-url': 'offer_url', 'source-model-tag': 'source_model_tag', 'spaces': 'spaces'}
702 def __init__(self, access=None, application_description=None, bindings=None, endpoints=None, offer_name=None, offer_url=None, source_model_tag=None, spaces=None, **unknown_fields):
703 '''
704 access : str
705 application_description : str
706 bindings : typing.Mapping<~KT, +VT_co>[str, str]
707 endpoints : typing.Sequence<+T_co>[~RemoteEndpoint]<~RemoteEndpoint>
708 offer_name : str
709 offer_url : str
710 source_model_tag : str
711 spaces : typing.Sequence<+T_co>[~RemoteSpace]<~RemoteSpace>
712 '''
713 self.access = access
714 self.application_description = application_description
715 self.bindings = bindings
716 self.endpoints = [RemoteEndpoint.from_json(o) for o in endpoints or []]
717 self.offer_name = offer_name
718 self.offer_url = offer_url
719 self.source_model_tag = source_model_tag
720 self.spaces = [RemoteSpace.from_json(o) for o in spaces or []]
721
722
723
724 class ApplicationRelationsChange(Type):
725 _toSchema = {'changed': 'changed', 'removed': 'removed'}
726 _toPy = {'changed': 'changed', 'removed': 'removed'}
727 def __init__(self, changed=None, removed=None, **unknown_fields):
728 '''
729 changed : typing.Sequence<+T_co>[~RelationChange]<~RelationChange>
730 removed : typing.Sequence<+T_co>[int]
731 '''
732 self.changed = [RelationChange.from_json(o) for o in changed or []]
733 self.removed = removed
734
735
736
737 class ApplicationRelationsWatchResult(Type):
738 _toSchema = {'applicationrelationswatcherid': 'ApplicationRelationsWatcherId', 'changes': 'changes', 'error': 'error'}
739 _toPy = {'ApplicationRelationsWatcherId': 'applicationrelationswatcherid', 'changes': 'changes', 'error': 'error'}
740 def __init__(self, applicationrelationswatcherid=None, changes=None, error=None, **unknown_fields):
741 '''
742 applicationrelationswatcherid : str
743 changes : ApplicationRelationsChange
744 error : Error
745 '''
746 self.applicationrelationswatcherid = applicationrelationswatcherid
747 self.changes = ApplicationRelationsChange.from_json(changes) if changes else None
748 self.error = Error.from_json(error) if error else None
749
750
751
752 class ApplicationSet(Type):
753 _toSchema = {'application': 'application', 'options': 'options'}
754 _toPy = {'application': 'application', 'options': 'options'}
755 def __init__(self, application=None, options=None, **unknown_fields):
756 '''
757 application : str
758 options : typing.Mapping<~KT, +VT_co>[str, str]
759 '''
760 self.application = application
761 self.options = options
762
763
764
765 class ApplicationSetCharm(Type):
766 _toSchema = {'application': 'application', 'channel': 'channel', 'charm_url': 'charm-url', 'config_settings': 'config-settings', 'config_settings_yaml': 'config-settings-yaml', 'force_series': 'force-series', 'force_units': 'force-units', 'resource_ids': 'resource-ids', 'storage_constraints': 'storage-constraints'}
767 _toPy = {'application': 'application', 'channel': 'channel', 'charm-url': 'charm_url', 'config-settings': 'config_settings', 'config-settings-yaml': 'config_settings_yaml', 'force-series': 'force_series', 'force-units': 'force_units', 'resource-ids': 'resource_ids', 'storage-constraints': 'storage_constraints'}
768 def __init__(self, application=None, channel=None, charm_url=None, config_settings=None, config_settings_yaml=None, force_series=None, force_units=None, resource_ids=None, storage_constraints=None, **unknown_fields):
769 '''
770 application : str
771 channel : str
772 charm_url : str
773 config_settings : typing.Mapping<~KT, +VT_co>[str, str]
774 config_settings_yaml : str
775 force_series : bool
776 force_units : bool
777 resource_ids : typing.Mapping<~KT, +VT_co>[str, str]
778 storage_constraints : typing.Mapping<~KT, +VT_co>[str, ~StorageConstraints]<~StorageConstraints>
779 '''
780 self.application = application
781 self.channel = channel
782 self.charm_url = charm_url
783 self.config_settings = config_settings
784 self.config_settings_yaml = config_settings_yaml
785 self.force_series = force_series
786 self.force_units = force_units
787 self.resource_ids = resource_ids
788 self.storage_constraints = storage_constraints
789
790
791
792 class ApplicationStatus(Type):
793 _toSchema = {'can_upgrade_to': 'can-upgrade-to', 'charm': 'charm', 'err': 'err', 'exposed': 'exposed', 'life': 'life', 'meter_statuses': 'meter-statuses', 'relations': 'relations', 'series': 'series', 'status': 'status', 'subordinate_to': 'subordinate-to', 'units': 'units', 'workload_version': 'workload-version'}
794 _toPy = {'can-upgrade-to': 'can_upgrade_to', 'charm': 'charm', 'err': 'err', 'exposed': 'exposed', 'life': 'life', 'meter-statuses': 'meter_statuses', 'relations': 'relations', 'series': 'series', 'status': 'status', 'subordinate-to': 'subordinate_to', 'units': 'units', 'workload-version': 'workload_version'}
795 def __init__(self, can_upgrade_to=None, charm=None, err=None, exposed=None, life=None, meter_statuses=None, relations=None, series=None, status=None, subordinate_to=None, units=None, workload_version=None, **unknown_fields):
796 '''
797 can_upgrade_to : str
798 charm : str
799 err : typing.Mapping<~KT, +VT_co>[str, typing.Any]
800 exposed : bool
801 life : str
802 meter_statuses : typing.Mapping<~KT, +VT_co>[str, ~MeterStatus]<~MeterStatus>
803 relations : typing.Sequence<+T_co>[str]
804 series : str
805 status : DetailedStatus
806 subordinate_to : typing.Sequence<+T_co>[str]
807 units : typing.Mapping<~KT, +VT_co>[str, ~UnitStatus]<~UnitStatus>
808 workload_version : str
809 '''
810 self.can_upgrade_to = can_upgrade_to
811 self.charm = charm
812 self.err = err
813 self.exposed = exposed
814 self.life = life
815 self.meter_statuses = meter_statuses
816 self.relations = relations
817 self.series = series
818 self.status = DetailedStatus.from_json(status) if status else None
819 self.subordinate_to = subordinate_to
820 self.units = units
821 self.workload_version = workload_version
822
823
824
825 class ApplicationStatusResult(Type):
826 _toSchema = {'application': 'application', 'error': 'error', 'units': 'units'}
827 _toPy = {'application': 'application', 'error': 'error', 'units': 'units'}
828 def __init__(self, application=None, error=None, units=None, **unknown_fields):
829 '''
830 application : StatusResult
831 error : Error
832 units : typing.Mapping<~KT, +VT_co>[str, ~StatusResult]<~StatusResult>
833 '''
834 self.application = StatusResult.from_json(application) if application else None
835 self.error = Error.from_json(error) if error else None
836 self.units = units
837
838
839
840 class ApplicationStatusResults(Type):
841 _toSchema = {'results': 'results'}
842 _toPy = {'results': 'results'}
843 def __init__(self, results=None, **unknown_fields):
844 '''
845 results : typing.Sequence<+T_co>[~ApplicationStatusResult]<~ApplicationStatusResult>
846 '''
847 self.results = [ApplicationStatusResult.from_json(o) for o in results or []]
848
849
850
851 class ApplicationTag(Type):
852 _toSchema = {'name': 'Name'}
853 _toPy = {'Name': 'name'}
854 def __init__(self, name=None, **unknown_fields):
855 '''
856 name : str
857 '''
858 self.name = name
859
860
861
862 class ApplicationURLs(Type):
863 _toSchema = {'application_urls': 'application-urls'}
864 _toPy = {'application-urls': 'application_urls'}
865 def __init__(self, application_urls=None, **unknown_fields):
866 '''
867 application_urls : typing.Sequence<+T_co>[str]
868 '''
869 self.application_urls = application_urls
870
871
872
873 class ApplicationUnexpose(Type):
874 _toSchema = {'application': 'application'}
875 _toPy = {'application': 'application'}
876 def __init__(self, application=None, **unknown_fields):
877 '''
878 application : str
879 '''
880 self.application = application
881
882
883
884 class ApplicationUnset(Type):
885 _toSchema = {'application': 'application', 'options': 'options'}
886 _toPy = {'application': 'application', 'options': 'options'}
887 def __init__(self, application=None, options=None, **unknown_fields):
888 '''
889 application : str
890 options : typing.Sequence<+T_co>[str]
891 '''
892 self.application = application
893 self.options = options
894
895
896
897 class ApplicationUpdate(Type):
898 _toSchema = {'application': 'application', 'charm_url': 'charm-url', 'constraints': 'constraints', 'force_charm_url': 'force-charm-url', 'force_series': 'force-series', 'min_units': 'min-units', 'settings': 'settings', 'settings_yaml': 'settings-yaml'}
899 _toPy = {'application': 'application', 'charm-url': 'charm_url', 'constraints': 'constraints', 'force-charm-url': 'force_charm_url', 'force-series': 'force_series', 'min-units': 'min_units', 'settings': 'settings', 'settings-yaml': 'settings_yaml'}
900 def __init__(self, application=None, charm_url=None, constraints=None, force_charm_url=None, force_series=None, min_units=None, settings=None, settings_yaml=None, **unknown_fields):
901 '''
902 application : str
903 charm_url : str
904 constraints : Value
905 force_charm_url : bool
906 force_series : bool
907 min_units : int
908 settings : typing.Mapping<~KT, +VT_co>[str, str]
909 settings_yaml : str
910 '''
911 self.application = application
912 self.charm_url = charm_url
913 self.constraints = Value.from_json(constraints) if constraints else None
914 self.force_charm_url = force_charm_url
915 self.force_series = force_series
916 self.min_units = min_units
917 self.settings = settings
918 self.settings_yaml = settings_yaml
919
920
921
922 class ApplicationsCharmActionsResults(Type):
923 _toSchema = {'results': 'results'}
924 _toPy = {'results': 'results'}
925 def __init__(self, results=None, **unknown_fields):
926 '''
927 results : typing.Sequence<+T_co>[~ApplicationCharmActionsResult]<~ApplicationCharmActionsResult>
928 '''
929 self.results = [ApplicationCharmActionsResult.from_json(o) for o in results or []]
930
931
932
933 class ApplicationsDeploy(Type):
934 _toSchema = {'applications': 'applications'}
935 _toPy = {'applications': 'applications'}
936 def __init__(self, applications=None, **unknown_fields):
937 '''
938 applications : typing.Sequence<+T_co>[~ApplicationDeploy]<~ApplicationDeploy>
939 '''
940 self.applications = [ApplicationDeploy.from_json(o) for o in applications or []]
941
942
943
944 class BackupsCreateArgs(Type):
945 _toSchema = {'notes': 'notes'}
946 _toPy = {'notes': 'notes'}
947 def __init__(self, notes=None, **unknown_fields):
948 '''
949 notes : str
950 '''
951 self.notes = notes
952
953
954
955 class BackupsInfoArgs(Type):
956 _toSchema = {'id_': 'id'}
957 _toPy = {'id': 'id_'}
958 def __init__(self, id_=None, **unknown_fields):
959 '''
960 id_ : str
961 '''
962 self.id_ = id_
963
964
965
966 class BackupsListArgs(Type):
967 _toSchema = {}
968 _toPy = {}
969 def __init__(self, **unknown_fields):
970 '''
971
972 '''
973 pass
974
975
976
977 class BackupsListResult(Type):
978 _toSchema = {'list_': 'list'}
979 _toPy = {'list': 'list_'}
980 def __init__(self, list_=None, **unknown_fields):
981 '''
982 list_ : typing.Sequence<+T_co>[~BackupsMetadataResult]<~BackupsMetadataResult>
983 '''
984 self.list_ = [BackupsMetadataResult.from_json(o) for o in list_ or []]
985
986
987
988 class BackupsMetadataResult(Type):
989 _toSchema = {'ca_cert': 'ca-cert', 'ca_private_key': 'ca-private-key', 'checksum': 'checksum', 'checksum_format': 'checksum-format', 'finished': 'finished', 'hostname': 'hostname', 'id_': 'id', 'machine': 'machine', 'model': 'model', 'notes': 'notes', 'series': 'series', 'size': 'size', 'started': 'started', 'stored': 'stored', 'version': 'version'}
990 _toPy = {'ca-cert': 'ca_cert', 'ca-private-key': 'ca_private_key', 'checksum': 'checksum', 'checksum-format': 'checksum_format', 'finished': 'finished', 'hostname': 'hostname', 'id': 'id_', 'machine': 'machine', 'model': 'model', 'notes': 'notes', 'series': 'series', 'size': 'size', 'started': 'started', 'stored': 'stored', 'version': 'version'}
991 def __init__(self, ca_cert=None, ca_private_key=None, checksum=None, checksum_format=None, finished=None, hostname=None, id_=None, machine=None, model=None, notes=None, series=None, size=None, started=None, stored=None, version=None, **unknown_fields):
992 '''
993 ca_cert : str
994 ca_private_key : str
995 checksum : str
996 checksum_format : str
997 finished : str
998 hostname : str
999 id_ : str
1000 machine : str
1001 model : str
1002 notes : str
1003 series : str
1004 size : int
1005 started : str
1006 stored : str
1007 version : Number
1008 '''
1009 self.ca_cert = ca_cert
1010 self.ca_private_key = ca_private_key
1011 self.checksum = checksum
1012 self.checksum_format = checksum_format
1013 self.finished = finished
1014 self.hostname = hostname
1015 self.id_ = id_
1016 self.machine = machine
1017 self.model = model
1018 self.notes = notes
1019 self.series = series
1020 self.size = size
1021 self.started = started
1022 self.stored = stored
1023 self.version = Number.from_json(version) if version else None
1024
1025
1026
1027 class BackupsRemoveArgs(Type):
1028 _toSchema = {'id_': 'id'}
1029 _toPy = {'id': 'id_'}
1030 def __init__(self, id_=None, **unknown_fields):
1031 '''
1032 id_ : str
1033 '''
1034 self.id_ = id_
1035
1036
1037
1038 class Binary(Type):
1039 _toSchema = {'arch': 'Arch', 'number': 'Number', 'series': 'Series'}
1040 _toPy = {'Arch': 'arch', 'Number': 'number', 'Series': 'series'}
1041 def __init__(self, arch=None, number=None, series=None, **unknown_fields):
1042 '''
1043 arch : str
1044 number : Number
1045 series : str
1046 '''
1047 self.arch = arch
1048 self.number = Number.from_json(number) if number else None
1049 self.series = series
1050
1051
1052
1053 class Block(Type):
1054 _toSchema = {'id_': 'id', 'message': 'message', 'tag': 'tag', 'type_': 'type'}
1055 _toPy = {'id': 'id_', 'message': 'message', 'tag': 'tag', 'type': 'type_'}
1056 def __init__(self, id_=None, message=None, tag=None, type_=None, **unknown_fields):
1057 '''
1058 id_ : str
1059 message : str
1060 tag : str
1061 type_ : str
1062 '''
1063 self.id_ = id_
1064 self.message = message
1065 self.tag = tag
1066 self.type_ = type_
1067
1068
1069
1070 class BlockDevice(Type):
1071 _toSchema = {'busaddress': 'BusAddress', 'devicelinks': 'DeviceLinks', 'devicename': 'DeviceName', 'filesystemtype': 'FilesystemType', 'hardwareid': 'HardwareId', 'inuse': 'InUse', 'label': 'Label', 'mountpoint': 'MountPoint', 'size': 'Size', 'uuid': 'UUID'}
1072 _toPy = {'BusAddress': 'busaddress', 'DeviceLinks': 'devicelinks', 'DeviceName': 'devicename', 'FilesystemType': 'filesystemtype', 'HardwareId': 'hardwareid', 'InUse': 'inuse', 'Label': 'label', 'MountPoint': 'mountpoint', 'Size': 'size', 'UUID': 'uuid'}
1073 def __init__(self, busaddress=None, devicelinks=None, devicename=None, filesystemtype=None, hardwareid=None, inuse=None, label=None, mountpoint=None, size=None, uuid=None, **unknown_fields):
1074 '''
1075 busaddress : str
1076 devicelinks : typing.Sequence<+T_co>[str]
1077 devicename : str
1078 filesystemtype : str
1079 hardwareid : str
1080 inuse : bool
1081 label : str
1082 mountpoint : str
1083 size : int
1084 uuid : str
1085 '''
1086 self.busaddress = busaddress
1087 self.devicelinks = devicelinks
1088 self.devicename = devicename
1089 self.filesystemtype = filesystemtype
1090 self.hardwareid = hardwareid
1091 self.inuse = inuse
1092 self.label = label
1093 self.mountpoint = mountpoint
1094 self.size = size
1095 self.uuid = uuid
1096
1097
1098
1099 class BlockDeviceResult(Type):
1100 _toSchema = {'error': 'error', 'result': 'result'}
1101 _toPy = {'error': 'error', 'result': 'result'}
1102 def __init__(self, error=None, result=None, **unknown_fields):
1103 '''
1104 error : Error
1105 result : BlockDevice
1106 '''
1107 self.error = Error.from_json(error) if error else None
1108 self.result = BlockDevice.from_json(result) if result else None
1109
1110
1111
1112 class BlockDeviceResults(Type):
1113 _toSchema = {'results': 'results'}
1114 _toPy = {'results': 'results'}
1115 def __init__(self, results=None, **unknown_fields):
1116 '''
1117 results : typing.Sequence<+T_co>[~BlockDeviceResult]<~BlockDeviceResult>
1118 '''
1119 self.results = [BlockDeviceResult.from_json(o) for o in results or []]
1120
1121
1122
1123 class BlockResult(Type):
1124 _toSchema = {'error': 'error', 'result': 'result'}
1125 _toPy = {'error': 'error', 'result': 'result'}
1126 def __init__(self, error=None, result=None, **unknown_fields):
1127 '''
1128 error : Error
1129 result : Block
1130 '''
1131 self.error = Error.from_json(error) if error else None
1132 self.result = Block.from_json(result) if result else None
1133
1134
1135
1136 class BlockResults(Type):
1137 _toSchema = {'results': 'results'}
1138 _toPy = {'results': 'results'}
1139 def __init__(self, results=None, **unknown_fields):
1140 '''
1141 results : typing.Sequence<+T_co>[~BlockResult]<~BlockResult>
1142 '''
1143 self.results = [BlockResult.from_json(o) for o in results or []]
1144
1145
1146
1147 class BlockSwitchParams(Type):
1148 _toSchema = {'message': 'message', 'type_': 'type'}
1149 _toPy = {'message': 'message', 'type': 'type_'}
1150 def __init__(self, message=None, type_=None, **unknown_fields):
1151 '''
1152 message : str
1153 type_ : str
1154 '''
1155 self.message = message
1156 self.type_ = type_
1157
1158
1159
1160 class BoolResult(Type):
1161 _toSchema = {'error': 'error', 'result': 'result'}
1162 _toPy = {'error': 'error', 'result': 'result'}
1163 def __init__(self, error=None, result=None, **unknown_fields):
1164 '''
1165 error : Error
1166 result : bool
1167 '''
1168 self.error = Error.from_json(error) if error else None
1169 self.result = result
1170
1171
1172
1173 class BoolResults(Type):
1174 _toSchema = {'results': 'results'}
1175 _toPy = {'results': 'results'}
1176 def __init__(self, results=None, **unknown_fields):
1177 '''
1178 results : typing.Sequence<+T_co>[~BoolResult]<~BoolResult>
1179 '''
1180 self.results = [BoolResult.from_json(o) for o in results or []]
1181
1182
1183
1184 class BundleChange(Type):
1185 _toSchema = {'args': 'args', 'id_': 'id', 'method': 'method', 'requires': 'requires'}
1186 _toPy = {'args': 'args', 'id': 'id_', 'method': 'method', 'requires': 'requires'}
1187 def __init__(self, args=None, id_=None, method=None, requires=None, **unknown_fields):
1188 '''
1189 args : typing.Sequence<+T_co>[typing.Any]
1190 id_ : str
1191 method : str
1192 requires : typing.Sequence<+T_co>[str]
1193 '''
1194 self.args = args
1195 self.id_ = id_
1196 self.method = method
1197 self.requires = requires
1198
1199
1200
1201 class BundleChangesParams(Type):
1202 _toSchema = {'yaml': 'yaml'}
1203 _toPy = {'yaml': 'yaml'}
1204 def __init__(self, yaml=None, **unknown_fields):
1205 '''
1206 yaml : str
1207 '''
1208 self.yaml = yaml
1209
1210
1211
1212 class BundleChangesResults(Type):
1213 _toSchema = {'changes': 'changes', 'errors': 'errors'}
1214 _toPy = {'changes': 'changes', 'errors': 'errors'}
1215 def __init__(self, changes=None, errors=None, **unknown_fields):
1216 '''
1217 changes : typing.Sequence<+T_co>[~BundleChange]<~BundleChange>
1218 errors : typing.Sequence<+T_co>[str]
1219 '''
1220 self.changes = [BundleChange.from_json(o) for o in changes or []]
1221 self.errors = errors
1222
1223
1224
1225 class BytesResult(Type):
1226 _toSchema = {'result': 'result'}
1227 _toPy = {'result': 'result'}
1228 def __init__(self, result=None, **unknown_fields):
1229 '''
1230 result : typing.Sequence<+T_co>[int]
1231 '''
1232 self.result = result
1233
1234
1235
1236 class CharmActionSpec(Type):
1237 _toSchema = {'description': 'description', 'params': 'params'}
1238 _toPy = {'description': 'description', 'params': 'params'}
1239 def __init__(self, description=None, params=None, **unknown_fields):
1240 '''
1241 description : str
1242 params : typing.Mapping<~KT, +VT_co>[str, typing.Any]
1243 '''
1244 self.description = description
1245 self.params = params
1246
1247
1248
1249 class CharmActions(Type):
1250 _toSchema = {'specs': 'specs'}
1251 _toPy = {'specs': 'specs'}
1252 def __init__(self, specs=None, **unknown_fields):
1253 '''
1254 specs : typing.Mapping<~KT, +VT_co>[str, ~CharmActionSpec]<~CharmActionSpec>
1255 '''
1256 self.specs = specs
1257
1258
1259
1260 class CharmInfo(Type):
1261 _toSchema = {'actions': 'actions', 'config': 'config', 'meta': 'meta', 'metrics': 'metrics', 'revision': 'revision', 'url': 'url'}
1262 _toPy = {'actions': 'actions', 'config': 'config', 'meta': 'meta', 'metrics': 'metrics', 'revision': 'revision', 'url': 'url'}
1263 def __init__(self, actions=None, config=None, meta=None, metrics=None, revision=None, url=None, **unknown_fields):
1264 '''
1265 actions : CharmActions
1266 config : typing.Mapping<~KT, +VT_co>[str, ~CharmOption]<~CharmOption>
1267 meta : CharmMeta
1268 metrics : CharmMetrics
1269 revision : int
1270 url : str
1271 '''
1272 self.actions = CharmActions.from_json(actions) if actions else None
1273 self.config = config
1274 self.meta = CharmMeta.from_json(meta) if meta else None
1275 self.metrics = CharmMetrics.from_json(metrics) if metrics else None
1276 self.revision = revision
1277 self.url = url
1278
1279
1280
1281 class CharmMeta(Type):
1282 _toSchema = {'categories': 'categories', 'description': 'description', 'extra_bindings': 'extra-bindings', 'min_juju_version': 'min-juju-version', 'name': 'name', 'payload_classes': 'payload-classes', 'peers': 'peers', 'provides': 'provides', 'requires': 'requires', 'resources': 'resources', 'series': 'series', 'storage': 'storage', 'subordinate': 'subordinate', 'summary': 'summary', 'tags': 'tags', 'terms': 'terms'}
1283 _toPy = {'categories': 'categories', 'description': 'description', 'extra-bindings': 'extra_bindings', 'min-juju-version': 'min_juju_version', 'name': 'name', 'payload-classes': 'payload_classes', 'peers': 'peers', 'provides': 'provides', 'requires': 'requires', 'resources': 'resources', 'series': 'series', 'storage': 'storage', 'subordinate': 'subordinate', 'summary': 'summary', 'tags': 'tags', 'terms': 'terms'}
1284 def __init__(self, categories=None, description=None, extra_bindings=None, min_juju_version=None, name=None, payload_classes=None, peers=None, provides=None, requires=None, resources=None, series=None, storage=None, subordinate=None, summary=None, tags=None, terms=None, **unknown_fields):
1285 '''
1286 categories : typing.Sequence<+T_co>[str]
1287 description : str
1288 extra_bindings : typing.Mapping<~KT, +VT_co>[str, str]
1289 min_juju_version : str
1290 name : str
1291 payload_classes : typing.Mapping<~KT, +VT_co>[str, ~CharmPayloadClass]<~CharmPayloadClass>
1292 peers : typing.Mapping<~KT, +VT_co>[str, ~CharmRelation]<~CharmRelation>
1293 provides : typing.Mapping<~KT, +VT_co>[str, ~CharmRelation]<~CharmRelation>
1294 requires : typing.Mapping<~KT, +VT_co>[str, ~CharmRelation]<~CharmRelation>
1295 resources : typing.Mapping<~KT, +VT_co>[str, ~CharmResourceMeta]<~CharmResourceMeta>
1296 series : typing.Sequence<+T_co>[str]
1297 storage : typing.Mapping<~KT, +VT_co>[str, ~CharmStorage]<~CharmStorage>
1298 subordinate : bool
1299 summary : str
1300 tags : typing.Sequence<+T_co>[str]
1301 terms : typing.Sequence<+T_co>[str]
1302 '''
1303 self.categories = categories
1304 self.description = description
1305 self.extra_bindings = extra_bindings
1306 self.min_juju_version = min_juju_version
1307 self.name = name
1308 self.payload_classes = payload_classes
1309 self.peers = peers
1310 self.provides = provides
1311 self.requires = requires
1312 self.resources = resources
1313 self.series = series
1314 self.storage = storage
1315 self.subordinate = subordinate
1316 self.summary = summary
1317 self.tags = tags
1318 self.terms = terms
1319
1320
1321
1322 class CharmMetric(Type):
1323 _toSchema = {'description': 'description', 'type_': 'type'}
1324 _toPy = {'description': 'description', 'type': 'type_'}
1325 def __init__(self, description=None, type_=None, **unknown_fields):
1326 '''
1327 description : str
1328 type_ : str
1329 '''
1330 self.description = description
1331 self.type_ = type_
1332
1333
1334
1335 class CharmMetrics(Type):
1336 _toSchema = {'metrics': 'metrics', 'plan': 'plan'}
1337 _toPy = {'metrics': 'metrics', 'plan': 'plan'}
1338 def __init__(self, metrics=None, plan=None, **unknown_fields):
1339 '''
1340 metrics : typing.Mapping<~KT, +VT_co>[str, ~CharmMetric]<~CharmMetric>
1341 plan : CharmPlan
1342 '''
1343 self.metrics = metrics
1344 self.plan = CharmPlan.from_json(plan) if plan else None
1345
1346
1347
1348 class CharmOption(Type):
1349 _toSchema = {'default': 'default', 'description': 'description', 'type_': 'type'}
1350 _toPy = {'default': 'default', 'description': 'description', 'type': 'type_'}
1351 def __init__(self, default=None, description=None, type_=None, **unknown_fields):
1352 '''
1353 default : typing.Mapping<~KT, +VT_co>[str, typing.Any]
1354 description : str
1355 type_ : str
1356 '''
1357 self.default = default
1358 self.description = description
1359 self.type_ = type_
1360
1361
1362
1363 class CharmPayloadClass(Type):
1364 _toSchema = {'name': 'name', 'type_': 'type'}
1365 _toPy = {'name': 'name', 'type': 'type_'}
1366 def __init__(self, name=None, type_=None, **unknown_fields):
1367 '''
1368 name : str
1369 type_ : str
1370 '''
1371 self.name = name
1372 self.type_ = type_
1373
1374
1375
1376 class CharmPlan(Type):
1377 _toSchema = {'required': 'required'}
1378 _toPy = {'required': 'required'}
1379 def __init__(self, required=None, **unknown_fields):
1380 '''
1381 required : bool
1382 '''
1383 self.required = required
1384
1385
1386
1387 class CharmRelation(Type):
1388 _toSchema = {'interface': 'interface', 'limit': 'limit', 'name': 'name', 'optional': 'optional', 'role': 'role', 'scope': 'scope'}
1389 _toPy = {'interface': 'interface', 'limit': 'limit', 'name': 'name', 'optional': 'optional', 'role': 'role', 'scope': 'scope'}
1390 def __init__(self, interface=None, limit=None, name=None, optional=None, role=None, scope=None, **unknown_fields):
1391 '''
1392 interface : str
1393 limit : int
1394 name : str
1395 optional : bool
1396 role : str
1397 scope : str
1398 '''
1399 self.interface = interface
1400 self.limit = limit
1401 self.name = name
1402 self.optional = optional
1403 self.role = role
1404 self.scope = scope
1405
1406
1407
1408 class CharmResource(Type):
1409 _toSchema = {'description': 'description', 'fingerprint': 'fingerprint', 'name': 'name', 'origin': 'origin', 'path': 'path', 'revision': 'revision', 'size': 'size', 'type_': 'type'}
1410 _toPy = {'description': 'description', 'fingerprint': 'fingerprint', 'name': 'name', 'origin': 'origin', 'path': 'path', 'revision': 'revision', 'size': 'size', 'type': 'type_'}
1411 def __init__(self, description=None, fingerprint=None, name=None, origin=None, path=None, revision=None, size=None, type_=None, **unknown_fields):
1412 '''
1413 description : str
1414 fingerprint : typing.Sequence<+T_co>[int]
1415 name : str
1416 origin : str
1417 path : str
1418 revision : int
1419 size : int
1420 type_ : str
1421 '''
1422 self.description = description
1423 self.fingerprint = fingerprint
1424 self.name = name
1425 self.origin = origin
1426 self.path = path
1427 self.revision = revision
1428 self.size = size
1429 self.type_ = type_
1430
1431
1432
1433 class CharmResourceMeta(Type):
1434 _toSchema = {'description': 'description', 'name': 'name', 'path': 'path', 'type_': 'type'}
1435 _toPy = {'description': 'description', 'name': 'name', 'path': 'path', 'type': 'type_'}
1436 def __init__(self, description=None, name=None, path=None, type_=None, **unknown_fields):
1437 '''
1438 description : str
1439 name : str
1440 path : str
1441 type_ : str
1442 '''
1443 self.description = description
1444 self.name = name
1445 self.path = path
1446 self.type_ = type_
1447
1448
1449
1450 class CharmStorage(Type):
1451 _toSchema = {'count_max': 'count-max', 'count_min': 'count-min', 'description': 'description', 'location': 'location', 'minimum_size': 'minimum-size', 'name': 'name', 'properties': 'properties', 'read_only': 'read-only', 'shared': 'shared', 'type_': 'type'}
1452 _toPy = {'count-max': 'count_max', 'count-min': 'count_min', 'description': 'description', 'location': 'location', 'minimum-size': 'minimum_size', 'name': 'name', 'properties': 'properties', 'read-only': 'read_only', 'shared': 'shared', 'type': 'type_'}
1453 def __init__(self, count_max=None, count_min=None, description=None, location=None, minimum_size=None, name=None, properties=None, read_only=None, shared=None, type_=None, **unknown_fields):
1454 '''
1455 count_max : int
1456 count_min : int
1457 description : str
1458 location : str
1459 minimum_size : int
1460 name : str
1461 properties : typing.Sequence<+T_co>[str]
1462 read_only : bool
1463 shared : bool
1464 type_ : str
1465 '''
1466 self.count_max = count_max
1467 self.count_min = count_min
1468 self.description = description
1469 self.location = location
1470 self.minimum_size = minimum_size
1471 self.name = name
1472 self.properties = properties
1473 self.read_only = read_only
1474 self.shared = shared
1475 self.type_ = type_
1476
1477
1478
1479 class CharmURL(Type):
1480 _toSchema = {'url': 'url'}
1481 _toPy = {'url': 'url'}
1482 def __init__(self, url=None, **unknown_fields):
1483 '''
1484 url : str
1485 '''
1486 self.url = url
1487
1488
1489
1490 class CharmURLs(Type):
1491 _toSchema = {'urls': 'urls'}
1492 _toPy = {'urls': 'urls'}
1493 def __init__(self, urls=None, **unknown_fields):
1494 '''
1495 urls : typing.Sequence<+T_co>[~CharmURL]<~CharmURL>
1496 '''
1497 self.urls = [CharmURL.from_json(o) for o in urls or []]
1498
1499
1500
1501 class CharmsList(Type):
1502 _toSchema = {'names': 'names'}
1503 _toPy = {'names': 'names'}
1504 def __init__(self, names=None, **unknown_fields):
1505 '''
1506 names : typing.Sequence<+T_co>[str]
1507 '''
1508 self.names = names
1509
1510
1511
1512 class CharmsListResult(Type):
1513 _toSchema = {'charm_urls': 'charm-urls'}
1514 _toPy = {'charm-urls': 'charm_urls'}
1515 def __init__(self, charm_urls=None, **unknown_fields):
1516 '''
1517 charm_urls : typing.Sequence<+T_co>[str]
1518 '''
1519 self.charm_urls = charm_urls
1520
1521
1522
1523 class ClaimLeadershipBulkParams(Type):
1524 _toSchema = {'params': 'params'}
1525 _toPy = {'params': 'params'}
1526 def __init__(self, params=None, **unknown_fields):
1527 '''
1528 params : typing.Sequence<+T_co>[~ClaimLeadershipParams]<~ClaimLeadershipParams>
1529 '''
1530 self.params = [ClaimLeadershipParams.from_json(o) for o in params or []]
1531
1532
1533
1534 class ClaimLeadershipBulkResults(Type):
1535 _toSchema = {'results': 'results'}
1536 _toPy = {'results': 'results'}
1537 def __init__(self, results=None, **unknown_fields):
1538 '''
1539 results : typing.Sequence<+T_co>[~ErrorResult]<~ErrorResult>
1540 '''
1541 self.results = [ErrorResult.from_json(o) for o in results or []]
1542
1543
1544
1545 class ClaimLeadershipParams(Type):
1546 _toSchema = {'application_tag': 'application-tag', 'duration': 'duration', 'unit_tag': 'unit-tag'}
1547 _toPy = {'application-tag': 'application_tag', 'duration': 'duration', 'unit-tag': 'unit_tag'}
1548 def __init__(self, application_tag=None, duration=None, unit_tag=None, **unknown_fields):
1549 '''
1550 application_tag : str
1551 duration : float
1552 unit_tag : str
1553 '''
1554 self.application_tag = application_tag
1555 self.duration = duration
1556 self.unit_tag = unit_tag
1557
1558
1559
1560 class Cloud(Type):
1561 _toSchema = {'auth_types': 'auth-types', 'endpoint': 'endpoint', 'identity_endpoint': 'identity-endpoint', 'regions': 'regions', 'storage_endpoint': 'storage-endpoint', 'type_': 'type'}
1562 _toPy = {'auth-types': 'auth_types', 'endpoint': 'endpoint', 'identity-endpoint': 'identity_endpoint', 'regions': 'regions', 'storage-endpoint': 'storage_endpoint', 'type': 'type_'}
1563 def __init__(self, auth_types=None, endpoint=None, identity_endpoint=None, regions=None, storage_endpoint=None, type_=None, **unknown_fields):
1564 '''
1565 auth_types : typing.Sequence<+T_co>[str]
1566 endpoint : str
1567 identity_endpoint : str
1568 regions : typing.Sequence<+T_co>[~CloudRegion]<~CloudRegion>
1569 storage_endpoint : str
1570 type_ : str
1571 '''
1572 self.auth_types = auth_types
1573 self.endpoint = endpoint
1574 self.identity_endpoint = identity_endpoint
1575 self.regions = [CloudRegion.from_json(o) for o in regions or []]
1576 self.storage_endpoint = storage_endpoint
1577 self.type_ = type_
1578
1579
1580
1581 class CloudCredential(Type):
1582 _toSchema = {'attrs': 'attrs', 'auth_type': 'auth-type', 'redacted': 'redacted'}
1583 _toPy = {'attrs': 'attrs', 'auth-type': 'auth_type', 'redacted': 'redacted'}
1584 def __init__(self, attrs=None, auth_type=None, redacted=None, **unknown_fields):
1585 '''
1586 attrs : typing.Mapping<~KT, +VT_co>[str, str]
1587 auth_type : str
1588 redacted : typing.Sequence<+T_co>[str]
1589 '''
1590 self.attrs = attrs
1591 self.auth_type = auth_type
1592 self.redacted = redacted
1593
1594
1595
1596 class CloudCredentialResult(Type):
1597 _toSchema = {'error': 'error', 'result': 'result'}
1598 _toPy = {'error': 'error', 'result': 'result'}
1599 def __init__(self, error=None, result=None, **unknown_fields):
1600 '''
1601 error : Error
1602 result : CloudCredential
1603 '''
1604 self.error = Error.from_json(error) if error else None
1605 self.result = CloudCredential.from_json(result) if result else None
1606
1607
1608
1609 class CloudCredentialResults(Type):
1610 _toSchema = {'results': 'results'}
1611 _toPy = {'results': 'results'}
1612 def __init__(self, results=None, **unknown_fields):
1613 '''
1614 results : typing.Sequence<+T_co>[~CloudCredentialResult]<~CloudCredentialResult>
1615 '''
1616 self.results = [CloudCredentialResult.from_json(o) for o in results or []]
1617
1618
1619
1620 class CloudImageMetadata(Type):
1621 _toSchema = {'arch': 'arch', 'image_id': 'image-id', 'priority': 'priority', 'region': 'region', 'root_storage_size': 'root-storage-size', 'root_storage_type': 'root-storage-type', 'series': 'series', 'source': 'source', 'stream': 'stream', 'version': 'version', 'virt_type': 'virt-type'}
1622 _toPy = {'arch': 'arch', 'image-id': 'image_id', 'priority': 'priority', 'region': 'region', 'root-storage-size': 'root_storage_size', 'root-storage-type': 'root_storage_type', 'series': 'series', 'source': 'source', 'stream': 'stream', 'version': 'version', 'virt-type': 'virt_type'}
1623 def __init__(self, arch=None, image_id=None, priority=None, region=None, root_storage_size=None, root_storage_type=None, series=None, source=None, stream=None, version=None, virt_type=None, **unknown_fields):
1624 '''
1625 arch : str
1626 image_id : str
1627 priority : int
1628 region : str
1629 root_storage_size : int
1630 root_storage_type : str
1631 series : str
1632 source : str
1633 stream : str
1634 version : str
1635 virt_type : str
1636 '''
1637 self.arch = arch
1638 self.image_id = image_id
1639 self.priority = priority
1640 self.region = region
1641 self.root_storage_size = root_storage_size
1642 self.root_storage_type = root_storage_type
1643 self.series = series
1644 self.source = source
1645 self.stream = stream
1646 self.version = version
1647 self.virt_type = virt_type
1648
1649
1650
1651 class CloudImageMetadataList(Type):
1652 _toSchema = {'metadata': 'metadata'}
1653 _toPy = {'metadata': 'metadata'}
1654 def __init__(self, metadata=None, **unknown_fields):
1655 '''
1656 metadata : typing.Sequence<+T_co>[~CloudImageMetadata]<~CloudImageMetadata>
1657 '''
1658 self.metadata = [CloudImageMetadata.from_json(o) for o in metadata or []]
1659
1660
1661
1662 class CloudInstanceTypesConstraint(Type):
1663 _toSchema = {'cloud_tag': 'cloud-tag', 'constraints': 'constraints', 'region': 'region'}
1664 _toPy = {'cloud-tag': 'cloud_tag', 'constraints': 'constraints', 'region': 'region'}
1665 def __init__(self, cloud_tag=None, constraints=None, region=None, **unknown_fields):
1666 '''
1667 cloud_tag : str
1668 constraints : Value
1669 region : str
1670 '''
1671 self.cloud_tag = cloud_tag
1672 self.constraints = Value.from_json(constraints) if constraints else None
1673 self.region = region
1674
1675
1676
1677 class CloudInstanceTypesConstraints(Type):
1678 _toSchema = {'constraints': 'constraints'}
1679 _toPy = {'constraints': 'constraints'}
1680 def __init__(self, constraints=None, **unknown_fields):
1681 '''
1682 constraints : typing.Sequence<+T_co>[~CloudInstanceTypesConstraint]<~CloudInstanceTypesConstraint>
1683 '''
1684 self.constraints = [CloudInstanceTypesConstraint.from_json(o) for o in constraints or []]
1685
1686
1687
1688 class CloudRegion(Type):
1689 _toSchema = {'endpoint': 'endpoint', 'identity_endpoint': 'identity-endpoint', 'name': 'name', 'storage_endpoint': 'storage-endpoint'}
1690 _toPy = {'endpoint': 'endpoint', 'identity-endpoint': 'identity_endpoint', 'name': 'name', 'storage-endpoint': 'storage_endpoint'}
1691 def __init__(self, endpoint=None, identity_endpoint=None, name=None, storage_endpoint=None, **unknown_fields):
1692 '''
1693 endpoint : str
1694 identity_endpoint : str
1695 name : str
1696 storage_endpoint : str
1697 '''
1698 self.endpoint = endpoint
1699 self.identity_endpoint = identity_endpoint
1700 self.name = name
1701 self.storage_endpoint = storage_endpoint
1702
1703
1704
1705 class CloudResult(Type):
1706 _toSchema = {'cloud': 'cloud', 'error': 'error'}
1707 _toPy = {'cloud': 'cloud', 'error': 'error'}
1708 def __init__(self, cloud=None, error=None, **unknown_fields):
1709 '''
1710 cloud : Cloud
1711 error : Error
1712 '''
1713 self.cloud = Cloud.from_json(cloud) if cloud else None
1714 self.error = Error.from_json(error) if error else None
1715
1716
1717
1718 class CloudResults(Type):
1719 _toSchema = {'results': 'results'}
1720 _toPy = {'results': 'results'}
1721 def __init__(self, results=None, **unknown_fields):
1722 '''
1723 results : typing.Sequence<+T_co>[~CloudResult]<~CloudResult>
1724 '''
1725 self.results = [CloudResult.from_json(o) for o in results or []]
1726
1727
1728
1729 class CloudSpec(Type):
1730 _toSchema = {'credential': 'credential', 'endpoint': 'endpoint', 'identity_endpoint': 'identity-endpoint', 'name': 'name', 'region': 'region', 'storage_endpoint': 'storage-endpoint', 'type_': 'type'}
1731 _toPy = {'credential': 'credential', 'endpoint': 'endpoint', 'identity-endpoint': 'identity_endpoint', 'name': 'name', 'region': 'region', 'storage-endpoint': 'storage_endpoint', 'type': 'type_'}
1732 def __init__(self, credential=None, endpoint=None, identity_endpoint=None, name=None, region=None, storage_endpoint=None, type_=None, **unknown_fields):
1733 '''
1734 credential : CloudCredential
1735 endpoint : str
1736 identity_endpoint : str
1737 name : str
1738 region : str
1739 storage_endpoint : str
1740 type_ : str
1741 '''
1742 self.credential = CloudCredential.from_json(credential) if credential else None
1743 self.endpoint = endpoint
1744 self.identity_endpoint = identity_endpoint
1745 self.name = name
1746 self.region = region
1747 self.storage_endpoint = storage_endpoint
1748 self.type_ = type_
1749
1750
1751
1752 class CloudSpecResult(Type):
1753 _toSchema = {'error': 'error', 'result': 'result'}
1754 _toPy = {'error': 'error', 'result': 'result'}
1755 def __init__(self, error=None, result=None, **unknown_fields):
1756 '''
1757 error : Error
1758 result : CloudSpec
1759 '''
1760 self.error = Error.from_json(error) if error else None
1761 self.result = CloudSpec.from_json(result) if result else None
1762
1763
1764
1765 class CloudSpecResults(Type):
1766 _toSchema = {'results': 'results'}
1767 _toPy = {'results': 'results'}
1768 def __init__(self, results=None, **unknown_fields):
1769 '''
1770 results : typing.Sequence<+T_co>[~CloudSpecResult]<~CloudSpecResult>
1771 '''
1772 self.results = [CloudSpecResult.from_json(o) for o in results or []]
1773
1774
1775
1776 class CloudsResult(Type):
1777 _toSchema = {'clouds': 'clouds'}
1778 _toPy = {'clouds': 'clouds'}
1779 def __init__(self, clouds=None, **unknown_fields):
1780 '''
1781 clouds : typing.Mapping<~KT, +VT_co>[str, ~Cloud]<~Cloud>
1782 '''
1783 self.clouds = clouds
1784
1785
1786
1787 class ConfigSettingsResult(Type):
1788 _toSchema = {'error': 'error', 'settings': 'settings'}
1789 _toPy = {'error': 'error', 'settings': 'settings'}
1790 def __init__(self, error=None, settings=None, **unknown_fields):
1791 '''
1792 error : Error
1793 settings : typing.Mapping<~KT, +VT_co>[str, typing.Any]
1794 '''
1795 self.error = Error.from_json(error) if error else None
1796 self.settings = settings
1797
1798
1799
1800 class ConfigSettingsResults(Type):
1801 _toSchema = {'results': 'results'}
1802 _toPy = {'results': 'results'}
1803 def __init__(self, results=None, **unknown_fields):
1804 '''
1805 results : typing.Sequence<+T_co>[~ConfigSettingsResult]<~ConfigSettingsResult>
1806 '''
1807 self.results = [ConfigSettingsResult.from_json(o) for o in results or []]
1808
1809
1810
1811 class ConfigValue(Type):
1812 _toSchema = {'source': 'source', 'value': 'value'}
1813 _toPy = {'source': 'source', 'value': 'value'}
1814 def __init__(self, source=None, value=None, **unknown_fields):
1815 '''
1816 source : str
1817 value : typing.Mapping<~KT, +VT_co>[str, typing.Any]
1818 '''
1819 self.source = source
1820 self.value = value
1821
1822
1823
1824 class Constraints(Type):
1825 _toSchema = {'count': 'Count', 'pool': 'Pool', 'size': 'Size'}
1826 _toPy = {'Count': 'count', 'Pool': 'pool', 'Size': 'size'}
1827 def __init__(self, count=None, pool=None, size=None, **unknown_fields):
1828 '''
1829 count : int
1830 pool : str
1831 size : int
1832 '''
1833 self.count = count
1834 self.pool = pool
1835 self.size = size
1836
1837
1838
1839 class ConstraintsResult(Type):
1840 _toSchema = {'constraints': 'constraints', 'error': 'error'}
1841 _toPy = {'constraints': 'constraints', 'error': 'error'}
1842 def __init__(self, constraints=None, error=None, **unknown_fields):
1843 '''
1844 constraints : Value
1845 error : Error
1846 '''
1847 self.constraints = Value.from_json(constraints) if constraints else None
1848 self.error = Error.from_json(error) if error else None
1849
1850
1851
1852 class ConstraintsResults(Type):
1853 _toSchema = {'results': 'results'}
1854 _toPy = {'results': 'results'}
1855 def __init__(self, results=None, **unknown_fields):
1856 '''
1857 results : typing.Sequence<+T_co>[~ConstraintsResult]<~ConstraintsResult>
1858 '''
1859 self.results = [ConstraintsResult.from_json(o) for o in results or []]
1860
1861
1862
1863 class ConsumeApplicationArg(Type):
1864 _toSchema = {'application_alias': 'application-alias', 'application_url': 'application-url'}
1865 _toPy = {'application-alias': 'application_alias', 'application-url': 'application_url'}
1866 def __init__(self, application_alias=None, application_url=None, **unknown_fields):
1867 '''
1868 application_alias : str
1869 application_url : str
1870 '''
1871 self.application_alias = application_alias
1872 self.application_url = application_url
1873
1874
1875
1876 class ConsumeApplicationArgs(Type):
1877 _toSchema = {'args': 'args'}
1878 _toPy = {'args': 'args'}
1879 def __init__(self, args=None, **unknown_fields):
1880 '''
1881 args : typing.Sequence<+T_co>[~ConsumeApplicationArg]<~ConsumeApplicationArg>
1882 '''
1883 self.args = [ConsumeApplicationArg.from_json(o) for o in args or []]
1884
1885
1886
1887 class ConsumeApplicationResult(Type):
1888 _toSchema = {'error': 'error', 'local_name': 'local-name'}
1889 _toPy = {'error': 'error', 'local-name': 'local_name'}
1890 def __init__(self, error=None, local_name=None, **unknown_fields):
1891 '''
1892 error : Error
1893 local_name : str
1894 '''
1895 self.error = Error.from_json(error) if error else None
1896 self.local_name = local_name
1897
1898
1899
1900 class ConsumeApplicationResults(Type):
1901 _toSchema = {'results': 'results'}
1902 _toPy = {'results': 'results'}
1903 def __init__(self, results=None, **unknown_fields):
1904 '''
1905 results : typing.Sequence<+T_co>[~ConsumeApplicationResult]<~ConsumeApplicationResult>
1906 '''
1907 self.results = [ConsumeApplicationResult.from_json(o) for o in results or []]
1908
1909
1910
1911 class ContainerConfig(Type):
1912 _toSchema = {'apt_mirror': 'apt-mirror', 'apt_proxy': 'apt-proxy', 'authorized_keys': 'authorized-keys', 'provider_type': 'provider-type', 'proxy': 'proxy', 'ssl_hostname_verification': 'ssl-hostname-verification', 'updatebehavior': 'UpdateBehavior'}
1913 _toPy = {'UpdateBehavior': 'updatebehavior', 'apt-mirror': 'apt_mirror', 'apt-proxy': 'apt_proxy', 'authorized-keys': 'authorized_keys', 'provider-type': 'provider_type', 'proxy': 'proxy', 'ssl-hostname-verification': 'ssl_hostname_verification'}
1914 def __init__(self, updatebehavior=None, apt_mirror=None, apt_proxy=None, authorized_keys=None, provider_type=None, proxy=None, ssl_hostname_verification=None, **unknown_fields):
1915 '''
1916 updatebehavior : UpdateBehavior
1917 apt_mirror : str
1918 apt_proxy : Settings
1919 authorized_keys : str
1920 provider_type : str
1921 proxy : Settings
1922 ssl_hostname_verification : bool
1923 '''
1924 self.updatebehavior = UpdateBehavior.from_json(updatebehavior) if updatebehavior else None
1925 self.apt_mirror = apt_mirror
1926 self.apt_proxy = Settings.from_json(apt_proxy) if apt_proxy else None
1927 self.authorized_keys = authorized_keys
1928 self.provider_type = provider_type
1929 self.proxy = Settings.from_json(proxy) if proxy else None
1930 self.ssl_hostname_verification = ssl_hostname_verification
1931
1932
1933
1934 class ContainerManagerConfig(Type):
1935 _toSchema = {'config': 'config'}
1936 _toPy = {'config': 'config'}
1937 def __init__(self, config=None, **unknown_fields):
1938 '''
1939 config : typing.Mapping<~KT, +VT_co>[str, str]
1940 '''
1941 self.config = config
1942
1943
1944
1945 class ContainerManagerConfigParams(Type):
1946 _toSchema = {'type_': 'type'}
1947 _toPy = {'type': 'type_'}
1948 def __init__(self, type_=None, **unknown_fields):
1949 '''
1950 type_ : str
1951 '''
1952 self.type_ = type_
1953
1954
1955
1956 class ControllerConfigResult(Type):
1957 _toSchema = {'config': 'config'}
1958 _toPy = {'config': 'config'}
1959 def __init__(self, config=None, **unknown_fields):
1960 '''
1961 config : typing.Mapping<~KT, +VT_co>[str, typing.Any]
1962 '''
1963 self.config = config
1964
1965
1966
1967 class ControllersChangeResult(Type):
1968 _toSchema = {'error': 'error', 'result': 'result'}
1969 _toPy = {'error': 'error', 'result': 'result'}
1970 def __init__(self, error=None, result=None, **unknown_fields):
1971 '''
1972 error : Error
1973 result : ControllersChanges
1974 '''
1975 self.error = Error.from_json(error) if error else None
1976 self.result = ControllersChanges.from_json(result) if result else None
1977
1978
1979
1980 class ControllersChangeResults(Type):
1981 _toSchema = {'results': 'results'}
1982 _toPy = {'results': 'results'}
1983 def __init__(self, results=None, **unknown_fields):
1984 '''
1985 results : typing.Sequence<+T_co>[~ControllersChangeResult]<~ControllersChangeResult>
1986 '''
1987 self.results = [ControllersChangeResult.from_json(o) for o in results or []]
1988
1989
1990
1991 class ControllersChanges(Type):
1992 _toSchema = {'added': 'added', 'converted': 'converted', 'demoted': 'demoted', 'maintained': 'maintained', 'promoted': 'promoted', 'removed': 'removed'}
1993 _toPy = {'added': 'added', 'converted': 'converted', 'demoted': 'demoted', 'maintained': 'maintained', 'promoted': 'promoted', 'removed': 'removed'}
1994 def __init__(self, added=None, converted=None, demoted=None, maintained=None, promoted=None, removed=None, **unknown_fields):
1995 '''
1996 added : typing.Sequence<+T_co>[str]
1997 converted : typing.Sequence<+T_co>[str]
1998 demoted : typing.Sequence<+T_co>[str]
1999 maintained : typing.Sequence<+T_co>[str]
2000 promoted : typing.Sequence<+T_co>[str]
2001 removed : typing.Sequence<+T_co>[str]
2002 '''
2003 self.added = added
2004 self.converted = converted
2005 self.demoted = demoted
2006 self.maintained = maintained
2007 self.promoted = promoted
2008 self.removed = removed
2009
2010
2011
2012 class ControllersSpec(Type):
2013 _toSchema = {'constraints': 'constraints', 'num_controllers': 'num-controllers', 'placement': 'placement', 'series': 'series'}
2014 _toPy = {'constraints': 'constraints', 'num-controllers': 'num_controllers', 'placement': 'placement', 'series': 'series'}
2015 def __init__(self, constraints=None, num_controllers=None, placement=None, series=None, **unknown_fields):
2016 '''
2017 constraints : Value
2018 num_controllers : int
2019 placement : typing.Sequence<+T_co>[str]
2020 series : str
2021 '''
2022 self.constraints = Value.from_json(constraints) if constraints else None
2023 self.num_controllers = num_controllers
2024 self.placement = placement
2025 self.series = series
2026
2027
2028
2029 class ControllersSpecs(Type):
2030 _toSchema = {'specs': 'specs'}
2031 _toPy = {'specs': 'specs'}
2032 def __init__(self, specs=None, **unknown_fields):
2033 '''
2034 specs : typing.Sequence<+T_co>[~ControllersSpec]<~ControllersSpec>
2035 '''
2036 self.specs = [ControllersSpec.from_json(o) for o in specs or []]
2037
2038
2039
2040 class CreateSpaceParams(Type):
2041 _toSchema = {'provider_id': 'provider-id', 'public': 'public', 'space_tag': 'space-tag', 'subnet_tags': 'subnet-tags'}
2042 _toPy = {'provider-id': 'provider_id', 'public': 'public', 'space-tag': 'space_tag', 'subnet-tags': 'subnet_tags'}
2043 def __init__(self, provider_id=None, public=None, space_tag=None, subnet_tags=None, **unknown_fields):
2044 '''
2045 provider_id : str
2046 public : bool
2047 space_tag : str
2048 subnet_tags : typing.Sequence<+T_co>[str]
2049 '''
2050 self.provider_id = provider_id
2051 self.public = public
2052 self.space_tag = space_tag
2053 self.subnet_tags = subnet_tags
2054
2055
2056
2057 class CreateSpacesParams(Type):
2058 _toSchema = {'spaces': 'spaces'}
2059 _toPy = {'spaces': 'spaces'}
2060 def __init__(self, spaces=None, **unknown_fields):
2061 '''
2062 spaces : typing.Sequence<+T_co>[~CreateSpaceParams]<~CreateSpaceParams>
2063 '''
2064 self.spaces = [CreateSpaceParams.from_json(o) for o in spaces or []]
2065
2066
2067
2068 class Delta(Type):
2069 _toSchema = {'entity': 'entity', 'removed': 'removed'}
2070 _toPy = {'entity': 'entity', 'removed': 'removed'}
2071 def __init__(self, entity=None, removed=None, **unknown_fields):
2072 '''
2073 entity : typing.Mapping<~KT, +VT_co>[str, typing.Any]
2074 removed : bool
2075 '''
2076 self.entity = entity
2077 self.removed = removed
2078
2079
2080
2081 class DeployerConnectionValues(Type):
2082 _toSchema = {'api_addresses': 'api-addresses', 'state_addresses': 'state-addresses'}
2083 _toPy = {'api-addresses': 'api_addresses', 'state-addresses': 'state_addresses'}
2084 def __init__(self, api_addresses=None, state_addresses=None, **unknown_fields):
2085 '''
2086 api_addresses : typing.Sequence<+T_co>[str]
2087 state_addresses : typing.Sequence<+T_co>[str]
2088 '''
2089 self.api_addresses = api_addresses
2090 self.state_addresses = state_addresses
2091
2092
2093
2094 class DestroyApplicationInfo(Type):
2095 _toSchema = {'destroyed_storage': 'destroyed-storage', 'destroyed_units': 'destroyed-units', 'detached_storage': 'detached-storage'}
2096 _toPy = {'destroyed-storage': 'destroyed_storage', 'destroyed-units': 'destroyed_units', 'detached-storage': 'detached_storage'}
2097 def __init__(self, destroyed_storage=None, destroyed_units=None, detached_storage=None, **unknown_fields):
2098 '''
2099 destroyed_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2100 destroyed_units : typing.Sequence<+T_co>[~Entity]<~Entity>
2101 detached_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2102 '''
2103 self.destroyed_storage = [Entity.from_json(o) for o in destroyed_storage or []]
2104 self.destroyed_units = [Entity.from_json(o) for o in destroyed_units or []]
2105 self.detached_storage = [Entity.from_json(o) for o in detached_storage or []]
2106
2107
2108
2109 class DestroyApplicationResult(Type):
2110 _toSchema = {'error': 'error', 'info': 'info'}
2111 _toPy = {'error': 'error', 'info': 'info'}
2112 def __init__(self, error=None, info=None, **unknown_fields):
2113 '''
2114 error : Error
2115 info : DestroyApplicationInfo
2116 '''
2117 self.error = Error.from_json(error) if error else None
2118 self.info = DestroyApplicationInfo.from_json(info) if info else None
2119
2120
2121
2122 class DestroyApplicationResults(Type):
2123 _toSchema = {'results': 'results'}
2124 _toPy = {'results': 'results'}
2125 def __init__(self, results=None, **unknown_fields):
2126 '''
2127 results : typing.Sequence<+T_co>[~DestroyApplicationResult]<~DestroyApplicationResult>
2128 '''
2129 self.results = [DestroyApplicationResult.from_json(o) for o in results or []]
2130
2131
2132
2133 class DestroyApplicationUnits(Type):
2134 _toSchema = {'unit_names': 'unit-names'}
2135 _toPy = {'unit-names': 'unit_names'}
2136 def __init__(self, unit_names=None, **unknown_fields):
2137 '''
2138 unit_names : typing.Sequence<+T_co>[str]
2139 '''
2140 self.unit_names = unit_names
2141
2142
2143
2144 class DestroyControllerArgs(Type):
2145 _toSchema = {'destroy_models': 'destroy-models'}
2146 _toPy = {'destroy-models': 'destroy_models'}
2147 def __init__(self, destroy_models=None, **unknown_fields):
2148 '''
2149 destroy_models : bool
2150 '''
2151 self.destroy_models = destroy_models
2152
2153
2154
2155 class DestroyMachineInfo(Type):
2156 _toSchema = {'destroyed_storage': 'destroyed-storage', 'destroyed_units': 'destroyed-units', 'detached_storage': 'detached-storage'}
2157 _toPy = {'destroyed-storage': 'destroyed_storage', 'destroyed-units': 'destroyed_units', 'detached-storage': 'detached_storage'}
2158 def __init__(self, destroyed_storage=None, destroyed_units=None, detached_storage=None, **unknown_fields):
2159 '''
2160 destroyed_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2161 destroyed_units : typing.Sequence<+T_co>[~Entity]<~Entity>
2162 detached_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2163 '''
2164 self.destroyed_storage = [Entity.from_json(o) for o in destroyed_storage or []]
2165 self.destroyed_units = [Entity.from_json(o) for o in destroyed_units or []]
2166 self.detached_storage = [Entity.from_json(o) for o in detached_storage or []]
2167
2168
2169
2170 class DestroyMachineResult(Type):
2171 _toSchema = {'error': 'error', 'info': 'info'}
2172 _toPy = {'error': 'error', 'info': 'info'}
2173 def __init__(self, error=None, info=None, **unknown_fields):
2174 '''
2175 error : Error
2176 info : DestroyMachineInfo
2177 '''
2178 self.error = Error.from_json(error) if error else None
2179 self.info = DestroyMachineInfo.from_json(info) if info else None
2180
2181
2182
2183 class DestroyMachineResults(Type):
2184 _toSchema = {'results': 'results'}
2185 _toPy = {'results': 'results'}
2186 def __init__(self, results=None, **unknown_fields):
2187 '''
2188 results : typing.Sequence<+T_co>[~DestroyMachineResult]<~DestroyMachineResult>
2189 '''
2190 self.results = [DestroyMachineResult.from_json(o) for o in results or []]
2191
2192
2193
2194 class DestroyMachines(Type):
2195 _toSchema = {'force': 'force', 'machine_names': 'machine-names'}
2196 _toPy = {'force': 'force', 'machine-names': 'machine_names'}
2197 def __init__(self, force=None, machine_names=None, **unknown_fields):
2198 '''
2199 force : bool
2200 machine_names : typing.Sequence<+T_co>[str]
2201 '''
2202 self.force = force
2203 self.machine_names = machine_names
2204
2205
2206
2207 class DestroyRelation(Type):
2208 _toSchema = {'endpoints': 'endpoints'}
2209 _toPy = {'endpoints': 'endpoints'}
2210 def __init__(self, endpoints=None, **unknown_fields):
2211 '''
2212 endpoints : typing.Sequence<+T_co>[str]
2213 '''
2214 self.endpoints = endpoints
2215
2216
2217
2218 class DestroyUnitInfo(Type):
2219 _toSchema = {'destroyed_storage': 'destroyed-storage', 'detached_storage': 'detached-storage'}
2220 _toPy = {'destroyed-storage': 'destroyed_storage', 'detached-storage': 'detached_storage'}
2221 def __init__(self, destroyed_storage=None, detached_storage=None, **unknown_fields):
2222 '''
2223 destroyed_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2224 detached_storage : typing.Sequence<+T_co>[~Entity]<~Entity>
2225 '''
2226 self.destroyed_storage = [Entity.from_json(o) for o in destroyed_storage or []]
2227 self.detached_storage = [Entity.from_json(o) for o in detached_storage or []]
2228
2229
2230
2231 class DestroyUnitResult(Type):
2232 _toSchema = {'error': 'error', 'info': 'info'}
2233 _toPy = {'error': 'error', 'info': 'info'}
2234 def __init__(self, error=None, info=None, **unknown_fields):
2235 '''
2236 error : Error
2237 info : DestroyUnitInfo
2238 '''
2239 self.error = Error.from_json(error) if error else None
2240 self.info = DestroyUnitInfo.from_json(info) if info else None
2241
2242
2243
2244 class DestroyUnitResults(Type):
2245 _toSchema = {'results': 'results'}
2246 _toPy = {'results': 'results'}
2247 def __init__(self, results=None, **unknown_fields):
2248 '''
2249 results : typing.Sequence<+T_co>[~DestroyUnitResult]<~DestroyUnitResult>
2250 '''
2251 self.results = [DestroyUnitResult.from_json(o) for o in results or []]
2252
2253
2254
2255 class DetailedStatus(Type):
2256 _toSchema = {'data': 'data', 'err': 'err', 'info': 'info', 'kind': 'kind', 'life': 'life', 'since': 'since', 'status': 'status', 'version': 'version'}
2257 _toPy = {'data': 'data', 'err': 'err', 'info': 'info', 'kind': 'kind', 'life': 'life', 'since': 'since', 'status': 'status', 'version': 'version'}
2258 def __init__(self, data=None, err=None, info=None, kind=None, life=None, since=None, status=None, version=None, **unknown_fields):
2259 '''
2260 data : typing.Mapping<~KT, +VT_co>[str, typing.Any]
2261 err : typing.Mapping<~KT, +VT_co>[str, typing.Any]
2262 info : str
2263 kind : str
2264 life : str
2265 since : str
2266 status : str
2267 version : str
2268 '''
2269 self.data = data
2270 self.err = err
2271 self.info = info
2272 self.kind = kind
2273 self.life = life
2274 self.since = since
2275 self.status = status
2276 self.version = version
2277
2278
2279
2280 class DeviceBridgeInfo(Type):
2281 _toSchema = {'bridge_name': 'bridge-name', 'host_device_name': 'host-device-name'}
2282 _toPy = {'bridge-name': 'bridge_name', 'host-device-name': 'host_device_name'}
2283 def __init__(self, bridge_name=None, host_device_name=None, **unknown_fields):
2284 '''
2285 bridge_name : str
2286 host_device_name : str
2287 '''
2288 self.bridge_name = bridge_name
2289 self.host_device_name = host_device_name
2290
2291
2292
2293 class DiscoverSpacesResults(Type):
2294 _toSchema = {'results': 'results'}
2295 _toPy = {'results': 'results'}
2296 def __init__(self, results=None, **unknown_fields):
2297 '''
2298 results : typing.Sequence<+T_co>[~ProviderSpace]<~ProviderSpace>
2299 '''
2300 self.results = [ProviderSpace.from_json(o) for o in results or []]
2301
2302
2303
2304 class DistributionGroupResult(Type):
2305 _toSchema = {'error': 'error', 'result': 'result'}
2306 _toPy = {'error': 'error', 'result': 'result'}
2307 def __init__(self, error=None, result=None, **unknown_fields):
2308 '''
2309 error : Error
2310 result : typing.Sequence<+T_co>[str]
2311 '''
2312 self.error = Error.from_json(error) if error else None
2313 self.result = result
2314
2315
2316
2317 class DistributionGroupResults(Type):
2318 _toSchema = {'results': 'results'}
2319 _toPy = {'results': 'results'}
2320 def __init__(self, results=None, **unknown_fields):
2321 '''
2322 results : typing.Sequence<+T_co>[~DistributionGroupResult]<~DistributionGroupResult>
2323 '''
2324 self.results = [DistributionGroupResult.from_json(o) for o in results or []]
2325
2326
2327
2328 class DumpModelRequest(Type):
2329 _toSchema = {'entities': 'entities', 'simplified': 'simplified'}
2330 _toPy = {'entities': 'entities', 'simplified': 'simplified'}
2331 def __init__(self, entities=None, simplified=None, **unknown_fields):
2332 '''
2333 entities : typing.Sequence<+T_co>[~Entity]<~Entity>
2334 simplified : bool
2335 '''
2336 self.entities = [Entity.from_json(o) for o in entities or []]
2337 self.simplified = simplified
2338
2339
2340
2341 class Endpoint(Type):
2342 _toSchema = {'application_name': 'application-name', 'relation': 'relation'}
2343 _toPy = {'application-name': 'application_name', 'relation': 'relation'}
2344 def __init__(self, application_name=None, relation=None, **unknown_fields):
2345 '''
2346 application_name : str
2347 relation : CharmRelation
2348 '''
2349 self.application_name = application_name
2350 self.relation = CharmRelation.from_json(relation) if relation else None
2351
2352
2353
2354 class EndpointStatus(Type):
2355 _toSchema = {'application': 'application', 'name': 'name', 'role': 'role', 'subordinate': 'subordinate'}
2356 _toPy = {'application': 'application', 'name': 'name', 'role': 'role', 'subordinate': 'subordinate'}
2357 def __init__(self, application=None, name=None, role=None, subordinate=None, **unknown_fields):
2358 '''
2359 application : str
2360 name : str
2361 role : str
2362 subordinate : bool
2363 '''
2364 self.application = application
2365 self.name = name
2366 self.role = role
2367 self.subordinate = subordinate
2368
2369
2370
2371 class Entities(Type):
2372 _toSchema = {'entities': 'entities'}
2373 _toPy = {'entities': 'entities'}
2374 def __init__(self, entities=None, **unknown_fields):
2375 '''
2376 entities : typing.Sequence<+T_co>[~Entity]<~Entity>
2377 '''
2378 self.entities = [Entity.from_json(o) for o in entities or []]
2379
2380
2381
2382 class EntitiesCharmURL(Type):
2383 _toSchema = {'entities': 'entities'}
2384 _toPy = {'entities': 'entities'}
2385 def __init__(self, entities=None, **unknown_fields):
2386 '''
2387 entities : typing.Sequence<+T_co>[~EntityCharmURL]<~EntityCharmURL>
2388 '''
2389 self.entities = [EntityCharmURL.from_json(o) for o in entities or []]
2390
2391
2392
2393 class EntitiesPortRanges(Type):
2394 _toSchema = {'entities': 'entities'}
2395 _toPy = {'entities': 'entities'}
2396 def __init__(self, entities=None, **unknown_fields):
2397 '''
2398 entities : typing.Sequence<+T_co>[~EntityPortRange]<~EntityPortRange>
2399 '''
2400 self.entities = [EntityPortRange.from_json(o) for o in entities or []]
2401
2402
2403
2404 class EntitiesResult(Type):
2405 _toSchema = {'entities': 'entities', 'error': 'error'}
2406 _toPy = {'entities': 'entities', 'error': 'error'}
2407 def __init__(self, entities=None, error=None, **unknown_fields):
2408 '''
2409 entities : typing.Sequence<+T_co>[~Entity]<~Entity>
2410 error : Error
2411 '''
2412 self.entities = [Entity.from_json(o) for o in entities or []]
2413 self.error = Error.from_json(error) if error else None
2414
2415
2416
2417 class EntitiesResults(Type):
2418 _toSchema = {'results': 'results'}
2419 _toPy = {'results': 'results'}
2420 def __init__(self, results=None, **unknown_fields):
2421 '''
2422 results : typing.Sequence<+T_co>[~EntitiesResult]<~EntitiesResult>
2423 '''
2424 self.results = [EntitiesResult.from_json(o) for o in results or []]
2425
2426
2427
2428 class EntitiesVersion(Type):
2429 _toSchema = {'agent_tools': 'agent-tools'}
2430 _toPy = {'agent-tools': 'agent_tools'}
2431 def __init__(self, agent_tools=None, **unknown_fields):
2432 '''
2433 agent_tools : typing.Sequence<+T_co>[~EntityVersion]<~EntityVersion>
2434 '''
2435 self.agent_tools = [EntityVersion.from_json(o) for o in agent_tools or []]
2436
2437
2438
2439 class EntitiesWatchResult(Type):
2440 _toSchema = {'changes': 'changes', 'error': 'error', 'watcher_id': 'watcher-id'}
2441 _toPy = {'changes': 'changes', 'error': 'error', 'watcher-id': 'watcher_id'}
2442 def __init__(self, changes=None, error=None, watcher_id=None, **unknown_fields):
2443 '''
2444 changes : typing.Sequence<+T_co>[str]
2445 error : Error
2446 watcher_id : str
2447 '''
2448 self.changes = changes
2449 self.error = Error.from_json(error) if error else None
2450 self.watcher_id = watcher_id
2451
2452
2453
2454 class Entity(Type):
2455 _toSchema = {'tag': 'tag'}
2456 _toPy = {'tag': 'tag'}
2457 def __init__(self, tag=None, **unknown_fields):
2458 '''
2459 tag : str
2460 '''
2461 self.tag = tag
2462
2463
2464
2465 class EntityAnnotations(Type):
2466 _toSchema = {'annotations': 'annotations', 'entity': 'entity'}
2467 _toPy = {'annotations': 'annotations', 'entity': 'entity'}
2468 def __init__(self, annotations=None, entity=None, **unknown_fields):
2469 '''
2470 annotations : typing.Mapping<~KT, +VT_co>[str, str]
2471 entity : str
2472 '''
2473 self.annotations = annotations
2474 self.entity = entity
2475
2476
2477
2478 class EntityCharmURL(Type):
2479 _toSchema = {'charm_url': 'charm-url', 'tag': 'tag'}
2480 _toPy = {'charm-url': 'charm_url', 'tag': 'tag'}
2481 def __init__(self, charm_url=None, tag=None, **unknown_fields):
2482 '''
2483 charm_url : str
2484 tag : str
2485 '''
2486 self.charm_url = charm_url
2487 self.tag = tag
2488
2489
2490
2491 class EntityMetrics(Type):
2492 _toSchema = {'error': 'error', 'metrics': 'metrics'}
2493 _toPy = {'error': 'error', 'metrics': 'metrics'}
2494 def __init__(self, error=None, metrics=None, **unknown_fields):
2495 '''
2496 error : Error
2497 metrics : typing.Sequence<+T_co>[~MetricResult]<~MetricResult>
2498 '''
2499 self.error = Error.from_json(error) if error else None
2500 self.metrics = [MetricResult.from_json(o) for o in metrics or []]
2501
2502
2503
2504 class EntityPassword(Type):
2505 _toSchema = {'password': 'password', 'tag': 'tag'}
2506 _toPy = {'password': 'password', 'tag': 'tag'}
2507 def __init__(self, password=None, tag=None, **unknown_fields):
2508 '''
2509 password : str
2510 tag : str
2511 '''
2512 self.password = password
2513 self.tag = tag
2514
2515
2516
2517 class EntityPasswords(Type):
2518 _toSchema = {'changes': 'changes'}
2519 _toPy = {'changes': 'changes'}
2520 def __init__(self, changes=None, **unknown_fields):
2521 '''
2522 changes : typing.Sequence<+T_co>[~EntityPassword]<~EntityPassword>
2523 '''
2524 self.changes = [EntityPassword.from_json(o) for o in changes or []]
2525
2526
2527
2528 class EntityPortRange(Type):
2529 _toSchema = {'from_port': 'from-port', 'protocol': 'protocol', 'tag': 'tag', 'to_port': 'to-port'}
2530 _toPy = {'from-port': 'from_port', 'protocol': 'protocol', 'tag': 'tag', 'to-port': 'to_port'}
2531 def __init__(self, from_port=None, protocol=None, tag=None, to_port=None, **unknown_fields):
2532 '''
2533 from_port : int
2534 protocol : str
2535 tag : str
2536 to_port : int
2537 '''
2538 self.from_port = from_port
2539 self.protocol = protocol
2540 self.tag = tag
2541 self.to_port = to_port
2542
2543
2544
2545 class EntityStatus(Type):
2546 _toSchema = {'data': 'data', 'info': 'info', 'since': 'since', 'status': 'status'}
2547 _toPy = {'data': 'data', 'info': 'info', 'since': 'since', 'status': 'status'}
2548 def __init__(self, data=None, info=None, since=None, status=None, **unknown_fields):
2549 '''
2550 data : typing.Mapping<~KT, +VT_co>[str, typing.Any]
2551 info : str
2552 since : str
2553 status : str
2554 '''
2555 self.data = data
2556 self.info = info
2557 self.since = since
2558 self.status = status
2559
2560
2561
2562 class EntityStatusArgs(Type):
2563 _toSchema = {'data': 'data', 'info': 'info', 'status': 'status', 'tag': 'tag'}
2564 _toPy = {'data': 'data', 'info': 'info', 'status': 'status', 'tag': 'tag'}
2565 def __init__(self, data=None, info=None, status=None, tag=None, **unknown_fields):
2566 '''
2567 data : typing.Mapping<~KT, +VT_co>[str, typing.Any]
2568 info : str
2569 status : str
2570 tag : str
2571 '''
2572 self.data = data
2573 self.info = info
2574 self.status = status
2575 self.tag = tag
2576
2577
2578
2579 class EntityVersion(Type):
2580 _toSchema = {'tag': 'tag', 'tools': 'tools'}
2581 _toPy = {'tag': 'tag', 'tools': 'tools'}
2582 def __init__(self, tag=None, tools=None, **unknown_fields):
2583 '''
2584 tag : str
2585 tools : Version
2586 '''
2587 self.tag = tag
2588 self.tools = Version.from_json(tools) if tools else None
2589
2590
2591
2592 class EntityWorkloadVersion(Type):
2593 _toSchema = {'tag': 'tag', 'workload_version': 'workload-version'}
2594 _toPy = {'tag': 'tag', 'workload-version': 'workload_version'}
2595 def __init__(self, tag=None, workload_version=None, **unknown_fields):
2596 '''
2597 tag : str
2598 workload_version : str
2599 '''
2600 self.tag = tag
2601 self.workload_version = workload_version
2602
2603
2604
2605 class EntityWorkloadVersions(Type):
2606 _toSchema = {'entities': 'entities'}
2607 _toPy = {'entities': 'entities'}
2608 def __init__(self, entities=None, **unknown_fields):
2609 '''
2610 entities : typing.Sequence<+T_co>[~EntityWorkloadVersion]<~EntityWorkloadVersion>
2611 '''
2612 self.entities = [EntityWorkloadVersion.from_json(o) for o in entities or []]
2613
2614
2615
2616 class EnvListArgs(Type):
2617 _toSchema = {'patterns': 'patterns'}
2618 _toPy = {'patterns': 'patterns'}
2619 def __init__(self, patterns=None, **unknown_fields):
2620 '''
2621 patterns : typing.Sequence<+T_co>[str]
2622 '''
2623 self.patterns = patterns
2624
2625
2626
2627 class EnvListResults(Type):
2628 _toSchema = {'results': 'results'}
2629 _toPy = {'results': 'results'}
2630 def __init__(self, results=None, **unknown_fields):
2631 '''
2632 results : typing.Sequence<+T_co>[~Payload]<~Payload>
2633 '''
2634 self.results = [Payload.from_json(o) for o in results or []]
2635
2636
2637
2638 class Error(Type):
2639 _toSchema = {'code': 'code', 'info': 'info', 'message': 'message'}
2640 _toPy = {'code': 'code', 'info': 'info', 'message': 'message'}
2641 def __init__(self, code=None, info=None, message=None, **unknown_fields):
2642 '''
2643 code : str
2644 info : ErrorInfo
2645 message : str
2646 '''
2647 self.code = code
2648 self.info = ErrorInfo.from_json(info) if info else None
2649 self.message = message
2650
2651
2652
2653 class ErrorInfo(Type):
2654 _toSchema = {'macaroon': 'macaroon', 'macaroon_path': 'macaroon-path'}
2655 _toPy = {'macaroon': 'macaroon', 'macaroon-path': 'macaroon_path'}
2656 def __init__(self, macaroon=None, macaroon_path=None, **unknown_fields):
2657 '''
2658 macaroon : Macaroon
2659 macaroon_path : str
2660 '''
2661 self.macaroon = Macaroon.from_json(macaroon) if macaroon else None
2662 self.macaroon_path = macaroon_path
2663
2664
2665
2666 class ErrorResult(Type):
2667 _toSchema = {'error': 'error'}