X-Git-Url: https://osm.etsi.org/gitweb/?p=osm%2FN2VC.git;a=blobdiff_plain;f=juju%2Fclient%2F_client.py;h=c9fdef289f08456b7019adbce5f7e7cddfb94965;hp=d510e1145cd226f47ee9a50ccbbf9a52b1b61011;hb=b8a8281b1785358bd5632a119c016f21811172c6;hpb=dcdf82bbc1ef310379f746518b2dd3b006353cb3 diff --git a/juju/client/_client.py b/juju/client/_client.py index d510e11..c9fdef2 100644 --- a/juju/client/_client.py +++ b/juju/client/_client.py @@ -3,33 +3,37 @@ from juju.client._definitions import * -from juju.client import _client1, _client2, _client3, _client4, _client5 +from juju.client import _client2, _client1, _client3, _client4, _client5, _client8, _client7, _client9 CLIENTS = { - "1": _client1, "2": _client2, + "1": _client1, "3": _client3, "4": _client4, - "5": _client5 + "5": _client5, + "8": _client8, + "7": _client7, + "9": _client9 } def lookup_facade(name, version): - """ - Given a facade name and version, attempt to pull that facade out - of the correct client.py file. + """ + Given a facade name and version, attempt to pull that facade out + of the correct client.py file. - """ + """ + for _version in range(int(version), 0, -1): try: - facade = getattr(CLIENTS[str(version)], name) - except KeyError: - raise ImportError("No facades found for version {}".format(version)) - except AttributeError: - raise ImportError( - "No facade with name '{}' in version {}".format(name, version)) - return facade + facade = getattr(CLIENTS[str(_version)], name) + return facade + except (KeyError, AttributeError): + continue + else: + raise ImportError("No supported version for facade: " + "{}".format(name)) @@ -44,7 +48,14 @@ class TypeFactory: @param connection: initialized Connection object. """ - version = connection.facades[cls.__name__[:-6]] + facade_name = cls.__name__ + if not facade_name.endswith('Facade'): + raise TypeError('Unexpected class name: {}'.format(facade_name)) + facade_name = facade_name[:-len('Facade')] + version = connection.facades.get(facade_name) + if version is None: + raise Exception('No facade {} in facades {}'.format(facade_name, + connection.facades)) c = lookup_facade(cls.__name__, version) c = c() @@ -57,6 +68,10 @@ class ActionFacade(TypeFactory): pass +class ActionPrunerFacade(TypeFactory): + pass + + class AgentFacade(TypeFactory): pass @@ -81,6 +96,10 @@ class ApplicationFacade(TypeFactory): pass +class ApplicationOffersFacade(TypeFactory): + pass + + class ApplicationRelationsWatcherFacade(TypeFactory): pass @@ -101,6 +120,26 @@ class BundleFacade(TypeFactory): pass +class CAASAgentFacade(TypeFactory): + pass + + +class CAASFirewallerFacade(TypeFactory): + pass + + +class CAASOperatorFacade(TypeFactory): + pass + + +class CAASOperatorProvisionerFacade(TypeFactory): + pass + + +class CAASUnitProvisionerFacade(TypeFactory): + pass + + class CharmRevisionUpdaterFacade(TypeFactory): pass @@ -125,6 +164,22 @@ class ControllerFacade(TypeFactory): pass +class CredentialManagerFacade(TypeFactory): + pass + + +class CredentialValidatorFacade(TypeFactory): + pass + + +class CrossControllerFacade(TypeFactory): + pass + + +class CrossModelRelationsFacade(TypeFactory): + pass + + class DeployerFacade(TypeFactory): pass @@ -141,10 +196,22 @@ class EntityWatcherFacade(TypeFactory): pass +class ExternalControllerUpdaterFacade(TypeFactory): + pass + + +class FanConfigurerFacade(TypeFactory): + pass + + class FilesystemAttachmentsWatcherFacade(TypeFactory): pass +class FirewallRulesFacade(TypeFactory): + pass + + class FirewallerFacade(TypeFactory): pass @@ -253,10 +320,18 @@ class ModelManagerFacade(TypeFactory): pass +class ModelUpgraderFacade(TypeFactory): + pass + + class NotifyWatcherFacade(TypeFactory): pass +class OfferStatusWatcherFacade(TypeFactory): + pass + + class PayloadsFacade(TypeFactory): pass @@ -281,6 +356,10 @@ class RebootFacade(TypeFactory): pass +class RelationStatusWatcherFacade(TypeFactory): + pass + + class RelationUnitsWatcherFacade(TypeFactory): pass @@ -289,6 +368,10 @@ class RemoteApplicationWatcherFacade(TypeFactory): pass +class RemoteRelationsFacade(TypeFactory): + pass + + class RemoteRelationsWatcherFacade(TypeFactory): pass @@ -353,6 +436,10 @@ class UniterFacade(TypeFactory): pass +class UpgradeSeriesFacade(TypeFactory): + pass + + class UpgraderFacade(TypeFactory): pass @@ -361,6 +448,10 @@ class UserManagerFacade(TypeFactory): pass +class VolumeAttachmentPlansWatcherFacade(TypeFactory): + pass + + class VolumeAttachmentsWatcherFacade(TypeFactory): pass