azure_mgmt_compute 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (87) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.rspec +3 -0
  4. data/.travis.yml +3 -0
  5. data/Gemfile +17 -0
  6. data/LICENSE.txt +21 -0
  7. data/README.md +139 -0
  8. data/Rakefile +5 -0
  9. data/azure_mgmt_compute.gemspec +39 -0
  10. data/lib/azure_mgmt_compute.rb +103 -0
  11. data/lib/azure_mgmt_compute/Models/additional_unattend_content.rb +108 -0
  12. data/lib/azure_mgmt_compute/Models/api_error.rb +121 -0
  13. data/lib/azure_mgmt_compute/Models/api_error_base.rb +76 -0
  14. data/lib/azure_mgmt_compute/Models/availability_set.rb +94 -0
  15. data/lib/azure_mgmt_compute/Models/availability_set_list_result.rb +79 -0
  16. data/lib/azure_mgmt_compute/Models/availability_set_properties.rb +130 -0
  17. data/lib/azure_mgmt_compute/Models/caching_types.rb +17 -0
  18. data/lib/azure_mgmt_compute/Models/component_names.rb +15 -0
  19. data/lib/azure_mgmt_compute/Models/compute_long_running_operation_properties.rb +58 -0
  20. data/lib/azure_mgmt_compute/Models/compute_long_running_operation_result.rb +126 -0
  21. data/lib/azure_mgmt_compute/Models/compute_operation_status.rb +18 -0
  22. data/lib/azure_mgmt_compute/Models/data_disk.rb +142 -0
  23. data/lib/azure_mgmt_compute/Models/data_disk_image.rb +62 -0
  24. data/lib/azure_mgmt_compute/Models/delete_operation_result.rb +109 -0
  25. data/lib/azure_mgmt_compute/Models/disk_create_option_types.rb +17 -0
  26. data/lib/azure_mgmt_compute/Models/disk_instance_view.rb +88 -0
  27. data/lib/azure_mgmt_compute/Models/hardware_profile.rb +67 -0
  28. data/lib/azure_mgmt_compute/Models/image_reference.rb +87 -0
  29. data/lib/azure_mgmt_compute/Models/inner_error.rb +68 -0
  30. data/lib/azure_mgmt_compute/Models/instance_view_status.rb +102 -0
  31. data/lib/azure_mgmt_compute/Models/linux_configuration.rb +75 -0
  32. data/lib/azure_mgmt_compute/Models/list_usages_result.rb +78 -0
  33. data/lib/azure_mgmt_compute/Models/network_interface_reference.rb +70 -0
  34. data/lib/azure_mgmt_compute/Models/network_interface_reference_properties.rb +59 -0
  35. data/lib/azure_mgmt_compute/Models/network_profile.rb +79 -0
  36. data/lib/azure_mgmt_compute/Models/operating_system_types.rb +16 -0
  37. data/lib/azure_mgmt_compute/Models/operation_status.rb +17 -0
  38. data/lib/azure_mgmt_compute/Models/osdisk.rb +135 -0
  39. data/lib/azure_mgmt_compute/Models/osdisk_image.rb +63 -0
  40. data/lib/azure_mgmt_compute/Models/osprofile.rb +149 -0
  41. data/lib/azure_mgmt_compute/Models/pass_names.rb +15 -0
  42. data/lib/azure_mgmt_compute/Models/plan.rb +85 -0
  43. data/lib/azure_mgmt_compute/Models/protocol_types.rb +16 -0
  44. data/lib/azure_mgmt_compute/Models/purchase_plan.rb +77 -0
  45. data/lib/azure_mgmt_compute/Models/setting_names.rb +16 -0
  46. data/lib/azure_mgmt_compute/Models/ssh_configuration.rb +79 -0
  47. data/lib/azure_mgmt_compute/Models/ssh_public_key.rb +72 -0
  48. data/lib/azure_mgmt_compute/Models/status_level_types.rb +17 -0
  49. data/lib/azure_mgmt_compute/Models/storage_profile.rb +110 -0
  50. data/lib/azure_mgmt_compute/Models/usage.rb +98 -0
  51. data/lib/azure_mgmt_compute/Models/usage_name.rb +68 -0
  52. data/lib/azure_mgmt_compute/Models/usage_unit.rb +15 -0
  53. data/lib/azure_mgmt_compute/Models/vault_certificate.rb +70 -0
  54. data/lib/azure_mgmt_compute/Models/vault_secret_group.rb +96 -0
  55. data/lib/azure_mgmt_compute/Models/virtual_hard_disk.rb +59 -0
  56. data/lib/azure_mgmt_compute/Models/virtual_machine.rb +142 -0
  57. data/lib/azure_mgmt_compute/Models/virtual_machine_agent_instance_view.rb +119 -0
  58. data/lib/azure_mgmt_compute/Models/virtual_machine_capture_parameters.rb +78 -0
  59. data/lib/azure_mgmt_compute/Models/virtual_machine_extension.rb +94 -0
  60. data/lib/azure_mgmt_compute/Models/virtual_machine_extension_handler_instance_view.rb +85 -0
  61. data/lib/azure_mgmt_compute/Models/virtual_machine_extension_image.rb +99 -0
  62. data/lib/azure_mgmt_compute/Models/virtual_machine_extension_image_properties.rb +102 -0
  63. data/lib/azure_mgmt_compute/Models/virtual_machine_extension_instance_view.rb +139 -0
  64. data/lib/azure_mgmt_compute/Models/virtual_machine_extension_properties.rb +133 -0
  65. data/lib/azure_mgmt_compute/Models/virtual_machine_image.rb +99 -0
  66. data/lib/azure_mgmt_compute/Models/virtual_machine_image_properties.rb +110 -0
  67. data/lib/azure_mgmt_compute/Models/virtual_machine_image_resource.rb +83 -0
  68. data/lib/azure_mgmt_compute/Models/virtual_machine_instance_view.rb +188 -0
  69. data/lib/azure_mgmt_compute/Models/virtual_machine_list_result.rb +89 -0
  70. data/lib/azure_mgmt_compute/Models/virtual_machine_properties.rb +156 -0
  71. data/lib/azure_mgmt_compute/Models/virtual_machine_size.rb +111 -0
  72. data/lib/azure_mgmt_compute/Models/virtual_machine_size_list_result.rb +79 -0
  73. data/lib/azure_mgmt_compute/Models/virtual_machine_size_types.rb +34 -0
  74. data/lib/azure_mgmt_compute/Models/win_rmconfiguration.rb +79 -0
  75. data/lib/azure_mgmt_compute/Models/win_rmlistener.rb +73 -0
  76. data/lib/azure_mgmt_compute/Models/windows_configuration.rb +126 -0
  77. data/lib/azure_mgmt_compute/availability_sets.rb +473 -0
  78. data/lib/azure_mgmt_compute/compute_management_client.rb +85 -0
  79. data/lib/azure_mgmt_compute/module_definition.rb +6 -0
  80. data/lib/azure_mgmt_compute/usage_operations.rb +113 -0
  81. data/lib/azure_mgmt_compute/version.rb +6 -0
  82. data/lib/azure_mgmt_compute/virtual_machine_extension_images.rb +325 -0
  83. data/lib/azure_mgmt_compute/virtual_machine_extensions.rb +384 -0
  84. data/lib/azure_mgmt_compute/virtual_machine_images.rb +525 -0
  85. data/lib/azure_mgmt_compute/virtual_machine_sizes.rb +114 -0
  86. data/lib/azure_mgmt_compute/virtual_machines.rb +1412 -0
  87. metadata +303 -0
@@ -0,0 +1,75 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Describes Windows Configuration of the OS Profile.
10
+ #
11
+ class LinuxConfiguration
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Boolean] Gets or sets whether Authentication using user name
16
+ # and password is allowed or not
17
+ attr_accessor :disable_password_authentication
18
+
19
+ # @return [SshConfiguration] Gets or sets the SSH configuration for
20
+ # linux VMs
21
+ attr_accessor :ssh
22
+
23
+ #
24
+ # Validate the object. Throws ValidationError if validation fails.
25
+ #
26
+ def validate
27
+ @ssh.validate unless @ssh.nil?
28
+ end
29
+
30
+ #
31
+ # Serializes given Model object into Ruby Hash.
32
+ # @param object Model object to serialize.
33
+ # @return [Hash] Serialized object in form of Ruby Hash.
34
+ #
35
+ def self.serialize_object(object)
36
+ object.validate
37
+ output_object = {}
38
+
39
+ serialized_property = object.disable_password_authentication
40
+ output_object['disablePasswordAuthentication'] = serialized_property unless serialized_property.nil?
41
+
42
+ serialized_property = object.ssh
43
+ unless serialized_property.nil?
44
+ serialized_property = SshConfiguration.serialize_object(serialized_property)
45
+ end
46
+ output_object['ssh'] = serialized_property unless serialized_property.nil?
47
+
48
+ output_object
49
+ end
50
+
51
+ #
52
+ # Deserializes given Ruby Hash into Model object.
53
+ # @param object [Hash] Ruby Hash object to deserialize.
54
+ # @return [LinuxConfiguration] Deserialized object.
55
+ #
56
+ def self.deserialize_object(object)
57
+ return if object.nil?
58
+ output_object = LinuxConfiguration.new
59
+
60
+ deserialized_property = object['disablePasswordAuthentication']
61
+ output_object.disable_password_authentication = deserialized_property
62
+
63
+ deserialized_property = object['ssh']
64
+ unless deserialized_property.nil?
65
+ deserialized_property = SshConfiguration.deserialize_object(deserialized_property)
66
+ end
67
+ output_object.ssh = deserialized_property
68
+
69
+ output_object.validate
70
+
71
+ output_object
72
+ end
73
+ end
74
+ end
75
+ end
@@ -0,0 +1,78 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # The List Usages operation response.
10
+ #
11
+ class ListUsagesResult
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Array<Usage>] Gets or sets the list Compute Resource Usages.
16
+ attr_accessor :value
17
+
18
+ #
19
+ # Validate the object. Throws ValidationError if validation fails.
20
+ #
21
+ def validate
22
+ @value.each{ |e| e.validate if e.respond_to?(:validate) } unless @value.nil?
23
+ end
24
+
25
+ #
26
+ # Serializes given Model object into Ruby Hash.
27
+ # @param object Model object to serialize.
28
+ # @return [Hash] Serialized object in form of Ruby Hash.
29
+ #
30
+ def self.serialize_object(object)
31
+ object.validate
32
+ output_object = {}
33
+
34
+ serialized_property = object.value
35
+ unless serialized_property.nil?
36
+ serializedArray = []
37
+ serialized_property.each do |element|
38
+ unless element.nil?
39
+ element = Usage.serialize_object(element)
40
+ end
41
+ serializedArray.push(element)
42
+ end
43
+ serialized_property = serializedArray
44
+ end
45
+ output_object['value'] = serialized_property unless serialized_property.nil?
46
+
47
+ output_object
48
+ end
49
+
50
+ #
51
+ # Deserializes given Ruby Hash into Model object.
52
+ # @param object [Hash] Ruby Hash object to deserialize.
53
+ # @return [ListUsagesResult] Deserialized object.
54
+ #
55
+ def self.deserialize_object(object)
56
+ return if object.nil?
57
+ output_object = ListUsagesResult.new
58
+
59
+ deserialized_property = object['value']
60
+ unless deserialized_property.nil?
61
+ deserializedArray = [];
62
+ deserialized_property.each do |element1|
63
+ unless element1.nil?
64
+ element1 = Usage.deserialize_object(element1)
65
+ end
66
+ deserializedArray.push(element1);
67
+ end
68
+ deserialized_property = deserializedArray;
69
+ end
70
+ output_object.value = deserialized_property
71
+
72
+ output_object.validate
73
+
74
+ output_object
75
+ end
76
+ end
77
+ end
78
+ end
@@ -0,0 +1,70 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Describes a network interface reference.
10
+ #
11
+ class NetworkInterfaceReference < MsRestAzure::SubResource
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [NetworkInterfaceReferenceProperties]
16
+ attr_accessor :properties
17
+
18
+ #
19
+ # Validate the object. Throws ValidationError if validation fails.
20
+ #
21
+ def validate
22
+ @properties.validate unless @properties.nil?
23
+ end
24
+
25
+ #
26
+ # Serializes given Model object into Ruby Hash.
27
+ # @param object Model object to serialize.
28
+ # @return [Hash] Serialized object in form of Ruby Hash.
29
+ #
30
+ def self.serialize_object(object)
31
+ object.validate
32
+ output_object = {}
33
+
34
+ serialized_property = object.id
35
+ output_object['id'] = serialized_property unless serialized_property.nil?
36
+
37
+ serialized_property = object.properties
38
+ unless serialized_property.nil?
39
+ serialized_property = NetworkInterfaceReferenceProperties.serialize_object(serialized_property)
40
+ end
41
+ output_object['properties'] = serialized_property unless serialized_property.nil?
42
+
43
+ output_object
44
+ end
45
+
46
+ #
47
+ # Deserializes given Ruby Hash into Model object.
48
+ # @param object [Hash] Ruby Hash object to deserialize.
49
+ # @return [NetworkInterfaceReference] Deserialized object.
50
+ #
51
+ def self.deserialize_object(object)
52
+ return if object.nil?
53
+ output_object = NetworkInterfaceReference.new
54
+
55
+ deserialized_property = object['id']
56
+ output_object.id = deserialized_property
57
+
58
+ deserialized_property = object['properties']
59
+ unless deserialized_property.nil?
60
+ deserialized_property = NetworkInterfaceReferenceProperties.deserialize_object(deserialized_property)
61
+ end
62
+ output_object.properties = deserialized_property
63
+
64
+ output_object.validate
65
+
66
+ output_object
67
+ end
68
+ end
69
+ end
70
+ end
@@ -0,0 +1,59 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Describes a network interface reference properties.
10
+ #
11
+ class NetworkInterfaceReferenceProperties
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Boolean] Gets or sets whether this is a primary NIC on a
16
+ # virtual machine
17
+ attr_accessor :primary
18
+
19
+ #
20
+ # Validate the object. Throws ValidationError if validation fails.
21
+ #
22
+ def validate
23
+ # Nothing to validate
24
+ end
25
+
26
+ #
27
+ # Serializes given Model object into Ruby Hash.
28
+ # @param object Model object to serialize.
29
+ # @return [Hash] Serialized object in form of Ruby Hash.
30
+ #
31
+ def self.serialize_object(object)
32
+ object.validate
33
+ output_object = {}
34
+
35
+ serialized_property = object.primary
36
+ output_object['primary'] = serialized_property unless serialized_property.nil?
37
+
38
+ output_object
39
+ end
40
+
41
+ #
42
+ # Deserializes given Ruby Hash into Model object.
43
+ # @param object [Hash] Ruby Hash object to deserialize.
44
+ # @return [NetworkInterfaceReferenceProperties] Deserialized object.
45
+ #
46
+ def self.deserialize_object(object)
47
+ return if object.nil?
48
+ output_object = NetworkInterfaceReferenceProperties.new
49
+
50
+ deserialized_property = object['primary']
51
+ output_object.primary = deserialized_property
52
+
53
+ output_object.validate
54
+
55
+ output_object
56
+ end
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,79 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Describes a network profile.
10
+ #
11
+ class NetworkProfile
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [Array<NetworkInterfaceReference>] Gets or sets the network
16
+ # interfaces.
17
+ attr_accessor :network_interfaces
18
+
19
+ #
20
+ # Validate the object. Throws ValidationError if validation fails.
21
+ #
22
+ def validate
23
+ @network_interfaces.each{ |e| e.validate if e.respond_to?(:validate) } unless @network_interfaces.nil?
24
+ end
25
+
26
+ #
27
+ # Serializes given Model object into Ruby Hash.
28
+ # @param object Model object to serialize.
29
+ # @return [Hash] Serialized object in form of Ruby Hash.
30
+ #
31
+ def self.serialize_object(object)
32
+ object.validate
33
+ output_object = {}
34
+
35
+ serialized_property = object.network_interfaces
36
+ unless serialized_property.nil?
37
+ serializedArray = []
38
+ serialized_property.each do |element|
39
+ unless element.nil?
40
+ element = NetworkInterfaceReference.serialize_object(element)
41
+ end
42
+ serializedArray.push(element)
43
+ end
44
+ serialized_property = serializedArray
45
+ end
46
+ output_object['networkInterfaces'] = serialized_property unless serialized_property.nil?
47
+
48
+ output_object
49
+ end
50
+
51
+ #
52
+ # Deserializes given Ruby Hash into Model object.
53
+ # @param object [Hash] Ruby Hash object to deserialize.
54
+ # @return [NetworkProfile] Deserialized object.
55
+ #
56
+ def self.deserialize_object(object)
57
+ return if object.nil?
58
+ output_object = NetworkProfile.new
59
+
60
+ deserialized_property = object['networkInterfaces']
61
+ unless deserialized_property.nil?
62
+ deserializedArray = [];
63
+ deserialized_property.each do |element1|
64
+ unless element1.nil?
65
+ element1 = NetworkInterfaceReference.deserialize_object(element1)
66
+ end
67
+ deserializedArray.push(element1);
68
+ end
69
+ deserialized_property = deserializedArray;
70
+ end
71
+ output_object.network_interfaces = deserialized_property
72
+
73
+ output_object.validate
74
+
75
+ output_object
76
+ end
77
+ end
78
+ end
79
+ end
@@ -0,0 +1,16 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Defines values for OperatingSystemTypes
10
+ #
11
+ module OperatingSystemTypes
12
+ Windows = "Windows"
13
+ Linux = "Linux"
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,17 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Defines values for OperationStatus
10
+ #
11
+ module OperationStatus
12
+ InProgress = "InProgress"
13
+ Succeeded = "Succeeded"
14
+ Failed = "Failed"
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,135 @@
1
+ # encoding: utf-8
2
+ # Code generated by Microsoft (R) AutoRest Code Generator 0.11.0.0
3
+ # Changes may cause incorrect behavior and will be lost if the code is
4
+ # regenerated.
5
+
6
+ module Azure::ARM::Compute
7
+ module Models
8
+ #
9
+ # Describes an Operating System disk.
10
+ #
11
+ class OSDisk
12
+
13
+ include MsRestAzure
14
+
15
+ # @return [OperatingSystemTypes] Gets or sets the Operating System type.
16
+ # Possible values for this property include: 'Windows', 'Linux'.
17
+ attr_accessor :os_type
18
+
19
+ # @return [String] Gets or sets the disk name.
20
+ attr_accessor :name
21
+
22
+ # @return [VirtualHardDisk] Gets or sets the Virtual Hard Disk.
23
+ attr_accessor :vhd
24
+
25
+ # @return [VirtualHardDisk] Gets or sets the Source User Image
26
+ # VirtualHardDisk. This VirtualHardDisk will be copied before using it
27
+ # to attach to the Virtual Machine.If SourceImage is provided, the
28
+ # destination VirtualHardDisk should not exist.
29
+ attr_accessor :image
30
+
31
+ # @return [CachingTypes] Gets or sets the caching type. Possible values
32
+ # for this property include: 'None', 'ReadOnly', 'ReadWrite'.
33
+ attr_accessor :caching
34
+
35
+ # @return [DiskCreateOptionTypes] Gets or sets the create option.
36
+ # Possible values for this property include: 'fromImage', 'empty',
37
+ # 'attach'.
38
+ attr_accessor :create_option
39
+
40
+ #
41
+ # Validate the object. Throws ValidationError if validation fails.
42
+ #
43
+ def validate
44
+ @vhd.validate unless @vhd.nil?
45
+ @image.validate unless @image.nil?
46
+ end
47
+
48
+ #
49
+ # Serializes given Model object into Ruby Hash.
50
+ # @param object Model object to serialize.
51
+ # @return [Hash] Serialized object in form of Ruby Hash.
52
+ #
53
+ def self.serialize_object(object)
54
+ object.validate
55
+ output_object = {}
56
+
57
+ serialized_property = object.os_type
58
+ output_object['osType'] = serialized_property unless serialized_property.nil?
59
+
60
+ serialized_property = object.name
61
+ output_object['name'] = serialized_property unless serialized_property.nil?
62
+
63
+ serialized_property = object.vhd
64
+ unless serialized_property.nil?
65
+ serialized_property = VirtualHardDisk.serialize_object(serialized_property)
66
+ end
67
+ output_object['vhd'] = serialized_property unless serialized_property.nil?
68
+
69
+ serialized_property = object.image
70
+ unless serialized_property.nil?
71
+ serialized_property = VirtualHardDisk.serialize_object(serialized_property)
72
+ end
73
+ output_object['image'] = serialized_property unless serialized_property.nil?
74
+
75
+ serialized_property = object.caching
76
+ output_object['caching'] = serialized_property unless serialized_property.nil?
77
+
78
+ serialized_property = object.create_option
79
+ output_object['createOption'] = serialized_property unless serialized_property.nil?
80
+
81
+ output_object
82
+ end
83
+
84
+ #
85
+ # Deserializes given Ruby Hash into Model object.
86
+ # @param object [Hash] Ruby Hash object to deserialize.
87
+ # @return [OSDisk] Deserialized object.
88
+ #
89
+ def self.deserialize_object(object)
90
+ return if object.nil?
91
+ output_object = OSDisk.new
92
+
93
+ deserialized_property = object['osType']
94
+ if (!deserialized_property.nil? && !deserialized_property.empty?)
95
+ enum_is_valid = OperatingSystemTypes.constants.any? { |e| OperatingSystemTypes.const_get(e).to_s.downcase == deserialized_property.downcase }
96
+ fail MsRest::DeserializationError.new('Error occured while deserializing the enum', nil, nil, nil) unless enum_is_valid
97
+ end
98
+ output_object.os_type = deserialized_property
99
+
100
+ deserialized_property = object['name']
101
+ output_object.name = deserialized_property
102
+
103
+ deserialized_property = object['vhd']
104
+ unless deserialized_property.nil?
105
+ deserialized_property = VirtualHardDisk.deserialize_object(deserialized_property)
106
+ end
107
+ output_object.vhd = deserialized_property
108
+
109
+ deserialized_property = object['image']
110
+ unless deserialized_property.nil?
111
+ deserialized_property = VirtualHardDisk.deserialize_object(deserialized_property)
112
+ end
113
+ output_object.image = deserialized_property
114
+
115
+ deserialized_property = object['caching']
116
+ if (!deserialized_property.nil? && !deserialized_property.empty?)
117
+ enum_is_valid = CachingTypes.constants.any? { |e| CachingTypes.const_get(e).to_s.downcase == deserialized_property.downcase }
118
+ fail MsRest::DeserializationError.new('Error occured while deserializing the enum', nil, nil, nil) unless enum_is_valid
119
+ end
120
+ output_object.caching = deserialized_property
121
+
122
+ deserialized_property = object['createOption']
123
+ if (!deserialized_property.nil? && !deserialized_property.empty?)
124
+ enum_is_valid = DiskCreateOptionTypes.constants.any? { |e| DiskCreateOptionTypes.const_get(e).to_s.downcase == deserialized_property.downcase }
125
+ fail MsRest::DeserializationError.new('Error occured while deserializing the enum', nil, nil, nil) unless enum_is_valid
126
+ end
127
+ output_object.create_option = deserialized_property
128
+
129
+ output_object.validate
130
+
131
+ output_object
132
+ end
133
+ end
134
+ end
135
+ end