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 license information.
5# Code generated by Microsoft (R) AutoRest Code Generator.
6# Changes may cause incorrect behavior and will be lost if the code is regenerated.
7# --------------------------------------------------------------------------
8
9from enum import Enum, EnumMeta
10from six import with_metaclass
11
12class _CaseInsensitiveEnumMeta(EnumMeta):
13    def __getitem__(self, name):
14        return super().__getitem__(name.upper())
15
16    def __getattr__(cls, name):
17        """Return the enum member matching `name`
18        We use __getattr__ instead of descriptors or inserting into the enum
19        class' __dict__ in order to support `name` and `value` being both
20        properties for enum members (which live in the class' __dict__) and
21        enum members themselves.
22        """
23        try:
24            return cls._member_map_[name.upper()]
25        except KeyError:
26            raise AttributeError(name)
27
28
29class AccessLevel(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
30
31    NONE = "None"
32    READ = "Read"
33
34class CachingTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
35    """Specifies the caching requirements. :code:`<br>`:code:`<br>` Possible values are:
36    :code:`<br>`:code:`<br>` **None** :code:`<br>`:code:`<br>` **ReadOnly**
37    :code:`<br>`:code:`<br>` **ReadWrite** :code:`<br>`:code:`<br>` Default: **None for Standard
38    storage. ReadOnly for Premium storage**
39    """
40
41    NONE = "None"
42    READ_ONLY = "ReadOnly"
43    READ_WRITE = "ReadWrite"
44
45class DiskCreateOption(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
46    """This enumerates the possible sources of a disk's creation.
47    """
48
49    EMPTY = "Empty"
50    ATTACH = "Attach"
51    FROM_IMAGE = "FromImage"
52    IMPORT_ENUM = "Import"
53    COPY = "Copy"
54    RESTORE = "Restore"
55
56class DiskCreateOptionTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
57    """Specifies how the virtual machine should be created.:code:`<br>`:code:`<br>` Possible values
58    are::code:`<br>`:code:`<br>` **Attach** \u2013 This value is used when you are using a
59    specialized disk to create the virtual machine.:code:`<br>`:code:`<br>` **FromImage** \u2013
60    This value is used when you are using an image to create the virtual machine. If you are using
61    a platform image, you also use the imageReference element described above. If you are using a
62    marketplace image, you  also use the plan element previously described.
63    """
64
65    FROM_IMAGE = "FromImage"
66    EMPTY = "Empty"
67    ATTACH = "Attach"
68
69class OperatingSystemStateTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
70    """The OS State.
71    """
72
73    GENERALIZED = "Generalized"
74    SPECIALIZED = "Specialized"
75
76class OperatingSystemTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
77    """The operating system of the osDiskImage.
78    """
79
80    WINDOWS = "Windows"
81    LINUX = "Linux"
82
83class ProtocolTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
84    """Specifies the protocol of listener. :code:`<br>`:code:`<br>` Possible values are: :code:`<br>`\
85    **http** :code:`<br>`:code:`<br>` **https**
86    """
87
88    HTTP = "Http"
89    HTTPS = "Https"
90
91class SettingNames(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
92    """Specifies the name of the setting to which the content applies. Possible values are:
93    FirstLogonCommands and AutoLogon.
94    """
95
96    AUTO_LOGON = "AutoLogon"
97    FIRST_LOGON_COMMANDS = "FirstLogonCommands"
98
99class StatusLevelTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
100    """The level code.
101    """
102
103    INFO = "Info"
104    WARNING = "Warning"
105    ERROR = "Error"
106
107class StorageAccountTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
108    """Specifies the storage account type for the managed disk. Possible values are: Standard_LRS or
109    Premium_LRS.
110    """
111
112    STANDARD_LRS = "Standard_LRS"
113    PREMIUM_LRS = "Premium_LRS"
114
115class UpgradeMode(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
116    """Specifies the mode of an upgrade to virtual machines in the scale set.:code:`<br />`:code:`<br
117    />` Possible values are::code:`<br />`:code:`<br />` **Manual** - You  control the application
118    of updates to virtual machines in the scale set. You do this by using the manualUpgrade
119    action.:code:`<br />`:code:`<br />` **Automatic** - All virtual machines in the scale set are
120    automatically updated at the same time.
121    """
122
123    AUTOMATIC = "Automatic"
124    MANUAL = "Manual"
125
126class VirtualMachineScaleSetSkuScaleType(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
127    """The scale type applicable to the sku.
128    """
129
130    AUTOMATIC = "Automatic"
131    NONE = "None"
132
133class VirtualMachineSizeTypes(with_metaclass(_CaseInsensitiveEnumMeta, str, Enum)):
134    """Specifies the size of the virtual machine. For more information about virtual machine sizes,
135    see `Sizes for virtual machines
136    <https://docs.microsoft.com/azure/virtual-machines/virtual-machines-windows-sizes?toc=%2fazure%2fvirtual-machines%2fwindows%2ftoc.json>`_.
137    :code:`<br>`:code:`<br>` The available VM sizes depend on region and availability set. For a
138    list of available sizes use these APIs:  :code:`<br>`:code:`<br>` `List all available virtual
139    machine sizes in an availability set <virtualmachines-list-sizes-availability-set.md>`_
140    :code:`<br>`:code:`<br>` `List all available virtual machine sizes in a region
141    <virtualmachines-list-sizes-region.md>`_ :code:`<br>`:code:`<br>` `List all available virtual
142    machine sizes for resizing <virtualmachines-list-sizes-for-resizing.md>`_
143    """
144
145    BASIC_A0 = "Basic_A0"
146    BASIC_A1 = "Basic_A1"
147    BASIC_A2 = "Basic_A2"
148    BASIC_A3 = "Basic_A3"
149    BASIC_A4 = "Basic_A4"
150    STANDARD_A0 = "Standard_A0"
151    STANDARD_A1 = "Standard_A1"
152    STANDARD_A2 = "Standard_A2"
153    STANDARD_A3 = "Standard_A3"
154    STANDARD_A4 = "Standard_A4"
155    STANDARD_A5 = "Standard_A5"
156    STANDARD_A6 = "Standard_A6"
157    STANDARD_A7 = "Standard_A7"
158    STANDARD_A8 = "Standard_A8"
159    STANDARD_A9 = "Standard_A9"
160    STANDARD_A10 = "Standard_A10"
161    STANDARD_A11 = "Standard_A11"
162    STANDARD_D1 = "Standard_D1"
163    STANDARD_D2 = "Standard_D2"
164    STANDARD_D3 = "Standard_D3"
165    STANDARD_D4 = "Standard_D4"
166    STANDARD_D11 = "Standard_D11"
167    STANDARD_D12 = "Standard_D12"
168    STANDARD_D13 = "Standard_D13"
169    STANDARD_D14 = "Standard_D14"
170    STANDARD_D1_V2 = "Standard_D1_v2"
171    STANDARD_D2_V2 = "Standard_D2_v2"
172    STANDARD_D3_V2 = "Standard_D3_v2"
173    STANDARD_D4_V2 = "Standard_D4_v2"
174    STANDARD_D5_V2 = "Standard_D5_v2"
175    STANDARD_D11_V2 = "Standard_D11_v2"
176    STANDARD_D12_V2 = "Standard_D12_v2"
177    STANDARD_D13_V2 = "Standard_D13_v2"
178    STANDARD_D14_V2 = "Standard_D14_v2"
179    STANDARD_D15_V2 = "Standard_D15_v2"
180    STANDARD_DS1 = "Standard_DS1"
181    STANDARD_DS2 = "Standard_DS2"
182    STANDARD_DS3 = "Standard_DS3"
183    STANDARD_DS4 = "Standard_DS4"
184    STANDARD_DS11 = "Standard_DS11"
185    STANDARD_DS12 = "Standard_DS12"
186    STANDARD_DS13 = "Standard_DS13"
187    STANDARD_DS14 = "Standard_DS14"
188    STANDARD_DS1_V2 = "Standard_DS1_v2"
189    STANDARD_DS2_V2 = "Standard_DS2_v2"
190    STANDARD_DS3_V2 = "Standard_DS3_v2"
191    STANDARD_DS4_V2 = "Standard_DS4_v2"
192    STANDARD_DS5_V2 = "Standard_DS5_v2"
193    STANDARD_DS11_V2 = "Standard_DS11_v2"
194    STANDARD_DS12_V2 = "Standard_DS12_v2"
195    STANDARD_DS13_V2 = "Standard_DS13_v2"
196    STANDARD_DS14_V2 = "Standard_DS14_v2"
197    STANDARD_DS15_V2 = "Standard_DS15_v2"
198    STANDARD_G1 = "Standard_G1"
199    STANDARD_G2 = "Standard_G2"
200    STANDARD_G3 = "Standard_G3"
201    STANDARD_G4 = "Standard_G4"
202    STANDARD_G5 = "Standard_G5"
203    STANDARD_GS1 = "Standard_GS1"
204    STANDARD_GS2 = "Standard_GS2"
205    STANDARD_GS3 = "Standard_GS3"
206    STANDARD_GS4 = "Standard_GS4"
207    STANDARD_GS5 = "Standard_GS5"
208