blob: 2ef0ffd8ae4ac50e77f6a5efb6d33270c6faf5c9 [file] [log] [blame]
Adam Israeldcdf82b2017-08-15 15:26:43 -04001# 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
Adam Israel1a15d1c2017-10-23 12:00:49 -04004from juju.client._definitions import * # noqa
Adam Israeldcdf82b2017-08-15 15:26:43 -04005
6from juju.client import _client1, _client2, _client3, _client4, _client5
7
8
9CLIENTS = {
10 "1": _client1,
11 "2": _client2,
12 "3": _client3,
13 "4": _client4,
14 "5": _client5
15}
16
17
Adam Israeldcdf82b2017-08-15 15:26:43 -040018def lookup_facade(name, version):
19 """
20 Given a facade name and version, attempt to pull that facade out
21 of the correct client<version>.py file.
22
23 """
Adam Israel1a15d1c2017-10-23 12:00:49 -040024 for _version in range(int(version), 0, -1):
25 try:
26 facade = getattr(CLIENTS[str(_version)], name)
27 return facade
28 except (KeyError, AttributeError):
29 continue
30 else:
31 raise ImportError("No supported version for facade: "
32 "{}".format(name))
Adam Israeldcdf82b2017-08-15 15:26:43 -040033
34
35class TypeFactory:
36 @classmethod
37 def from_connection(cls, connection):
38 """
39 Given a connected Connection object, return an initialized and
40 connected instance of an API Interface matching the name of
41 this class.
42
43 @param connection: initialized Connection object.
44
45 """
46 version = connection.facades[cls.__name__[:-6]]
47
48 c = lookup_facade(cls.__name__, version)
49 c = c()
50 c.connect(connection)
51
52 return c
53
54
55class ActionFacade(TypeFactory):
56 pass
57
58
59class AgentFacade(TypeFactory):
60 pass
61
62
63class AgentToolsFacade(TypeFactory):
64 pass
65
66
67class AllModelWatcherFacade(TypeFactory):
68 pass
69
70
71class AllWatcherFacade(TypeFactory):
72 pass
73
74
75class AnnotationsFacade(TypeFactory):
76 pass
77
78
79class ApplicationFacade(TypeFactory):
80 pass
81
82
83class ApplicationRelationsWatcherFacade(TypeFactory):
84 pass
85
86
87class ApplicationScalerFacade(TypeFactory):
88 pass
89
90
91class BackupsFacade(TypeFactory):
92 pass
93
94
95class BlockFacade(TypeFactory):
96 pass
97
98
99class BundleFacade(TypeFactory):
100 pass
101
102
103class CharmRevisionUpdaterFacade(TypeFactory):
104 pass
105
106
107class CharmsFacade(TypeFactory):
108 pass
109
110
111class CleanerFacade(TypeFactory):
112 pass
113
114
115class ClientFacade(TypeFactory):
116 pass
117
118
119class CloudFacade(TypeFactory):
120 pass
121
122
123class ControllerFacade(TypeFactory):
124 pass
125
126
127class DeployerFacade(TypeFactory):
128 pass
129
130
131class DiscoverSpacesFacade(TypeFactory):
132 pass
133
134
135class DiskManagerFacade(TypeFactory):
136 pass
137
138
139class EntityWatcherFacade(TypeFactory):
140 pass
141
142
143class FilesystemAttachmentsWatcherFacade(TypeFactory):
144 pass
145
146
147class FirewallerFacade(TypeFactory):
148 pass
149
150
151class HighAvailabilityFacade(TypeFactory):
152 pass
153
154
155class HostKeyReporterFacade(TypeFactory):
156 pass
157
158
159class ImageManagerFacade(TypeFactory):
160 pass
161
162
163class ImageMetadataFacade(TypeFactory):
164 pass
165
166
167class InstancePollerFacade(TypeFactory):
168 pass
169
170
171class KeyManagerFacade(TypeFactory):
172 pass
173
174
175class KeyUpdaterFacade(TypeFactory):
176 pass
177
178
179class LeadershipServiceFacade(TypeFactory):
180 pass
181
182
183class LifeFlagFacade(TypeFactory):
184 pass
185
186
187class LogForwardingFacade(TypeFactory):
188 pass
189
190
191class LoggerFacade(TypeFactory):
192 pass
193
194
195class MachineActionsFacade(TypeFactory):
196 pass
197
198
199class MachineManagerFacade(TypeFactory):
200 pass
201
202
203class MachineUndertakerFacade(TypeFactory):
204 pass
205
206
207class MachinerFacade(TypeFactory):
208 pass
209
210
211class MeterStatusFacade(TypeFactory):
212 pass
213
214
215class MetricsAdderFacade(TypeFactory):
216 pass
217
218
219class MetricsDebugFacade(TypeFactory):
220 pass
221
222
223class MetricsManagerFacade(TypeFactory):
224 pass
225
226
227class MigrationFlagFacade(TypeFactory):
228 pass
229
230
231class MigrationMasterFacade(TypeFactory):
232 pass
233
234
235class MigrationMinionFacade(TypeFactory):
236 pass
237
238
239class MigrationStatusWatcherFacade(TypeFactory):
240 pass
241
242
243class MigrationTargetFacade(TypeFactory):
244 pass
245
246
247class ModelConfigFacade(TypeFactory):
248 pass
249
250
251class ModelManagerFacade(TypeFactory):
252 pass
253
254
255class NotifyWatcherFacade(TypeFactory):
256 pass
257
258
259class PayloadsFacade(TypeFactory):
260 pass
261
262
263class PayloadsHookContextFacade(TypeFactory):
264 pass
265
266
267class PingerFacade(TypeFactory):
268 pass
269
270
271class ProvisionerFacade(TypeFactory):
272 pass
273
274
275class ProxyUpdaterFacade(TypeFactory):
276 pass
277
278
279class RebootFacade(TypeFactory):
280 pass
281
282
283class RelationUnitsWatcherFacade(TypeFactory):
284 pass
285
286
287class RemoteApplicationWatcherFacade(TypeFactory):
288 pass
289
290
291class RemoteRelationsWatcherFacade(TypeFactory):
292 pass
293
294
295class ResourcesFacade(TypeFactory):
296 pass
297
298
299class ResourcesHookContextFacade(TypeFactory):
300 pass
301
302
303class ResumerFacade(TypeFactory):
304 pass
305
306
307class RetryStrategyFacade(TypeFactory):
308 pass
309
310
311class SSHClientFacade(TypeFactory):
312 pass
313
314
315class SingularFacade(TypeFactory):
316 pass
317
318
319class SpacesFacade(TypeFactory):
320 pass
321
322
323class StatusHistoryFacade(TypeFactory):
324 pass
325
326
327class StorageFacade(TypeFactory):
328 pass
329
330
331class StorageProvisionerFacade(TypeFactory):
332 pass
333
334
335class StringsWatcherFacade(TypeFactory):
336 pass
337
338
339class SubnetsFacade(TypeFactory):
340 pass
341
342
343class UndertakerFacade(TypeFactory):
344 pass
345
346
347class UnitAssignerFacade(TypeFactory):
348 pass
349
350
351class UniterFacade(TypeFactory):
352 pass
353
354
355class UpgraderFacade(TypeFactory):
356 pass
357
358
359class UserManagerFacade(TypeFactory):
360 pass
361
362
363class VolumeAttachmentsWatcherFacade(TypeFactory):
364 pass