azext_iot/iothub/providers/base.py (32 lines of code) (raw):

# coding=utf-8 # -------------------------------------------------------------------------------------------- # Copyright (c) Microsoft Corporation. All rights reserved. # Licensed under the MIT License. See License.txt in the project root for license information. # -------------------------------------------------------------------------------------------- from typing import Optional from azext_iot.iothub.providers.discovery import IotHubDiscovery from azext_iot._factory import SdkResolver from msrest.exceptions import SerializationError from msrestazure.azure_exceptions import CloudError __all__ = ["IoTHubProvider", "CloudError", "SerializationError"] class IoTHubProvider(object): def __init__( self, cmd, hub_name: str, rg: str, login: Optional[str] = None, auth_type_dataplane: Optional[str] = None, dataplane: bool = True, ): self.cmd = cmd self.hub_name = hub_name self.rg = rg self.discovery = IotHubDiscovery(cmd) if dataplane: self.target = self.discovery.get_target( resource_name=self.hub_name, resource_group_name=self.rg, login=login, auth_type=auth_type_dataplane, ) self.resolver = SdkResolver(self.target) else: self.hub_resource = self.discovery.find_resource(hub_name, rg) def get_sdk(self, sdk_type): return self.resolver.get_sdk(sdk_type)