1# coding=utf-8 2# -------------------------------------------------------------------------- 3# Copyright (c) Microsoft Corporation. All rights reserved. 4# Licensed under the MIT License. See License.txt in the project root for 5# license information. 6# 7# Code generated by Microsoft (R) AutoRest Code Generator. 8# Changes may cause incorrect behavior and will be lost if the code is 9# regenerated. 10# -------------------------------------------------------------------------- 11 12import uuid 13from msrest.pipeline import ClientRawResponse 14from msrestazure.azure_exceptions import CloudError 15 16from .. import models 17 18 19class Operations(object): 20 """Operations operations. 21 22 :param client: Client for service requests. 23 :param config: Configuration of service client. 24 :param serializer: An object model serializer. 25 :param deserializer: An object model deserializer. 26 :ivar api_version: Version of API to invoke. Constant value: "2018-11-30". 27 """ 28 29 models = models 30 31 def __init__(self, client, config, serializer, deserializer): 32 33 self._client = client 34 self._serialize = serializer 35 self._deserialize = deserializer 36 self.api_version = "2018-11-30" 37 38 self.config = config 39 40 def list( 41 self, custom_headers=None, raw=False, **operation_config): 42 """Lists available operations for the Microsoft.ManagedIdentity provider. 43 44 :param dict custom_headers: headers that will be added to the request 45 :param bool raw: returns the direct response alongside the 46 deserialized response 47 :param operation_config: :ref:`Operation configuration 48 overrides<msrest:optionsforoperations>`. 49 :return: An iterator like instance of Operation 50 :rtype: 51 ~azure.mgmt.msi.models.OperationPaged[~azure.mgmt.msi.models.Operation] 52 :raises: :class:`CloudError<msrestazure.azure_exceptions.CloudError>` 53 """ 54 def internal_paging(next_link=None, raw=False): 55 56 if not next_link: 57 # Construct URL 58 url = self.list.metadata['url'] 59 60 # Construct parameters 61 query_parameters = {} 62 query_parameters['api-version'] = self._serialize.query("self.api_version", self.api_version, 'str') 63 64 else: 65 url = next_link 66 query_parameters = {} 67 68 # Construct headers 69 header_parameters = {} 70 header_parameters['Accept'] = 'application/json' 71 if self.config.generate_client_request_id: 72 header_parameters['x-ms-client-request-id'] = str(uuid.uuid1()) 73 if custom_headers: 74 header_parameters.update(custom_headers) 75 if self.config.accept_language is not None: 76 header_parameters['accept-language'] = self._serialize.header("self.config.accept_language", self.config.accept_language, 'str') 77 78 # Construct and send request 79 request = self._client.get(url, query_parameters, header_parameters) 80 response = self._client.send(request, stream=False, **operation_config) 81 82 if response.status_code not in [200]: 83 exp = CloudError(response) 84 exp.request_id = response.headers.get('x-ms-request-id') 85 raise exp 86 87 return response 88 89 # Deserialize response 90 deserialized = models.OperationPaged(internal_paging, self._deserialize.dependencies) 91 92 if raw: 93 header_dict = {} 94 client_raw_response = models.OperationPaged(internal_paging, self._deserialize.dependencies, header_dict) 95 return client_raw_response 96 97 return deserialized 98 list.metadata = {'url': '/providers/Microsoft.ManagedIdentity/operations'} 99