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
12from msrest.serialization import Model
13
14
15class StorageAccountCreateParameters(Model):
16    """The storage account create parameters.
17
18    All required parameters must be populated in order to send to Azure.
19
20    :param resource_id: Required. Storage account resource id.
21    :type resource_id: str
22    :param active_key_name: Required. Current active storage account key name.
23    :type active_key_name: str
24    :param auto_regenerate_key: Required. whether keyvault should manage the
25     storage account for the user.
26    :type auto_regenerate_key: bool
27    :param regeneration_period: The key regeneration time duration specified
28     in ISO-8601 format.
29    :type regeneration_period: str
30    :param storage_account_attributes: The attributes of the storage account.
31    :type storage_account_attributes:
32     ~azure.keyvault.v2016_10_01.models.StorageAccountAttributes
33    :param tags: Application specific metadata in the form of key-value pairs.
34    :type tags: dict[str, str]
35    """
36
37    _validation = {
38        'resource_id': {'required': True},
39        'active_key_name': {'required': True},
40        'auto_regenerate_key': {'required': True},
41    }
42
43    _attribute_map = {
44        'resource_id': {'key': 'resourceId', 'type': 'str'},
45        'active_key_name': {'key': 'activeKeyName', 'type': 'str'},
46        'auto_regenerate_key': {'key': 'autoRegenerateKey', 'type': 'bool'},
47        'regeneration_period': {'key': 'regenerationPeriod', 'type': 'str'},
48        'storage_account_attributes': {'key': 'attributes', 'type': 'StorageAccountAttributes'},
49        'tags': {'key': 'tags', 'type': '{str}'},
50    }
51
52    def __init__(self, **kwargs):
53        super(StorageAccountCreateParameters, self).__init__(**kwargs)
54        self.resource_id = kwargs.get('resource_id', None)
55        self.active_key_name = kwargs.get('active_key_name', None)
56        self.auto_regenerate_key = kwargs.get('auto_regenerate_key', None)
57        self.regeneration_period = kwargs.get('regeneration_period', None)
58        self.storage_account_attributes = kwargs.get('storage_account_attributes', None)
59        self.tags = kwargs.get('tags', None)
60