oci 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (217) hide show
  1. checksums.yaml +7 -0
  2. data/LICENSE.txt +82 -0
  3. data/README.md +262 -0
  4. data/lib/oci.rb +25 -0
  5. data/lib/oci/api_client.rb +389 -0
  6. data/lib/oci/config.rb +118 -0
  7. data/lib/oci/config_file_loader.rb +96 -0
  8. data/lib/oci/core/blockstorage_client.rb +462 -0
  9. data/lib/oci/core/compute_client.rb +1415 -0
  10. data/lib/oci/core/core.rb +114 -0
  11. data/lib/oci/core/models/attach_i_scsi_volume_details.rb +137 -0
  12. data/lib/oci/core/models/attach_vnic_details.rb +144 -0
  13. data/lib/oci/core/models/attach_volume_details.rb +165 -0
  14. data/lib/oci/core/models/capture_console_history_details.rb +120 -0
  15. data/lib/oci/core/models/console_history.rb +213 -0
  16. data/lib/oci/core/models/cpe.rb +169 -0
  17. data/lib/oci/core/models/create_cpe_details.rb +145 -0
  18. data/lib/oci/core/models/create_cross_connect_details.rb +204 -0
  19. data/lib/oci/core/models/create_cross_connect_group_details.rb +133 -0
  20. data/lib/oci/core/models/create_dhcp_details.rb +153 -0
  21. data/lib/oci/core/models/create_drg_attachment_details.rb +142 -0
  22. data/lib/oci/core/models/create_drg_details.rb +131 -0
  23. data/lib/oci/core/models/create_image_details.rb +159 -0
  24. data/lib/oci/core/models/create_instance_console_connection_details.rb +131 -0
  25. data/lib/oci/core/models/create_internet_gateway_details.rb +153 -0
  26. data/lib/oci/core/models/create_ip_sec_connection_details.rb +168 -0
  27. data/lib/oci/core/models/create_private_ip_details.rb +173 -0
  28. data/lib/oci/core/models/create_route_table_details.rb +153 -0
  29. data/lib/oci/core/models/create_security_list_details.rb +164 -0
  30. data/lib/oci/core/models/create_subnet_details.rb +257 -0
  31. data/lib/oci/core/models/create_vcn_details.rb +171 -0
  32. data/lib/oci/core/models/create_virtual_circuit_details.rb +260 -0
  33. data/lib/oci/core/models/create_vnic_details.rb +214 -0
  34. data/lib/oci/core/models/create_volume_backup_details.rb +133 -0
  35. data/lib/oci/core/models/create_volume_details.rb +170 -0
  36. data/lib/oci/core/models/cross_connect.rb +235 -0
  37. data/lib/oci/core/models/cross_connect_group.rb +187 -0
  38. data/lib/oci/core/models/cross_connect_location.rb +134 -0
  39. data/lib/oci/core/models/cross_connect_mapping.rb +190 -0
  40. data/lib/oci/core/models/cross_connect_port_speed_shape.rb +137 -0
  41. data/lib/oci/core/models/cross_connect_status.rb +200 -0
  42. data/lib/oci/core/models/dhcp_dns_option.rb +171 -0
  43. data/lib/oci/core/models/dhcp_option.rb +135 -0
  44. data/lib/oci/core/models/dhcp_options.rb +208 -0
  45. data/lib/oci/core/models/dhcp_search_domain_option.rb +141 -0
  46. data/lib/oci/core/models/drg.rb +186 -0
  47. data/lib/oci/core/models/drg_attachment.rb +208 -0
  48. data/lib/oci/core/models/egress_security_rule.rb +198 -0
  49. data/lib/oci/core/models/export_image_details.rb +134 -0
  50. data/lib/oci/core/models/export_image_via_object_storage_tuple_details.rb +150 -0
  51. data/lib/oci/core/models/export_image_via_object_storage_uri_details.rb +130 -0
  52. data/lib/oci/core/models/fast_connect_provider_service.rb +145 -0
  53. data/lib/oci/core/models/i_scsi_volume_attachment.rb +212 -0
  54. data/lib/oci/core/models/icmp_options.rb +131 -0
  55. data/lib/oci/core/models/image.rb +245 -0
  56. data/lib/oci/core/models/image_source_details.rb +134 -0
  57. data/lib/oci/core/models/image_source_via_object_storage_tuple_details.rb +150 -0
  58. data/lib/oci/core/models/image_source_via_object_storage_uri_details.rb +128 -0
  59. data/lib/oci/core/models/ingress_security_rule.rb +198 -0
  60. data/lib/oci/core/models/instance.rb +307 -0
  61. data/lib/oci/core/models/instance_console_connection.rb +193 -0
  62. data/lib/oci/core/models/instance_credentials.rb +131 -0
  63. data/lib/oci/core/models/internet_gateway.rb +210 -0
  64. data/lib/oci/core/models/ip_sec_connection.rb +223 -0
  65. data/lib/oci/core/models/ip_sec_connection_device_config.rb +153 -0
  66. data/lib/oci/core/models/ip_sec_connection_device_status.rb +156 -0
  67. data/lib/oci/core/models/launch_instance_details.rb +336 -0
  68. data/lib/oci/core/models/letter_of_authority.rb +194 -0
  69. data/lib/oci/core/models/port_range.rb +133 -0
  70. data/lib/oci/core/models/private_ip.rb +248 -0
  71. data/lib/oci/core/models/route_rule.rb +135 -0
  72. data/lib/oci/core/models/route_table.rb +208 -0
  73. data/lib/oci/core/models/security_list.rb +219 -0
  74. data/lib/oci/core/models/shape.rb +122 -0
  75. data/lib/oci/core/models/subnet.rb +351 -0
  76. data/lib/oci/core/models/tcp_options.rb +135 -0
  77. data/lib/oci/core/models/tunnel_config.rb +151 -0
  78. data/lib/oci/core/models/tunnel_status.rb +178 -0
  79. data/lib/oci/core/models/udp_options.rb +135 -0
  80. data/lib/oci/core/models/update_cpe_details.rb +122 -0
  81. data/lib/oci/core/models/update_cross_connect_details.rb +138 -0
  82. data/lib/oci/core/models/update_cross_connect_group_details.rb +122 -0
  83. data/lib/oci/core/models/update_dhcp_details.rb +132 -0
  84. data/lib/oci/core/models/update_drg_attachment_details.rb +122 -0
  85. data/lib/oci/core/models/update_drg_details.rb +122 -0
  86. data/lib/oci/core/models/update_image_details.rb +124 -0
  87. data/lib/oci/core/models/update_instance_details.rb +124 -0
  88. data/lib/oci/core/models/update_internet_gateway_details.rb +133 -0
  89. data/lib/oci/core/models/update_ip_sec_connection_details.rb +122 -0
  90. data/lib/oci/core/models/update_private_ip_details.rb +157 -0
  91. data/lib/oci/core/models/update_route_table_details.rb +133 -0
  92. data/lib/oci/core/models/update_security_list_details.rb +144 -0
  93. data/lib/oci/core/models/update_subnet_details.rb +122 -0
  94. data/lib/oci/core/models/update_vcn_details.rb +122 -0
  95. data/lib/oci/core/models/update_virtual_circuit_details.rb +240 -0
  96. data/lib/oci/core/models/update_vnic_details.rb +144 -0
  97. data/lib/oci/core/models/update_volume_backup_details.rb +122 -0
  98. data/lib/oci/core/models/update_volume_details.rb +122 -0
  99. data/lib/oci/core/models/vcn.rb +276 -0
  100. data/lib/oci/core/models/virtual_circuit.rb +395 -0
  101. data/lib/oci/core/models/virtual_circuit_bandwidth_shape.rb +137 -0
  102. data/lib/oci/core/models/vnic.rb +287 -0
  103. data/lib/oci/core/models/vnic_attachment.rb +250 -0
  104. data/lib/oci/core/models/volume.rb +210 -0
  105. data/lib/oci/core/models/volume_attachment.rb +246 -0
  106. data/lib/oci/core/models/volume_backup.rb +235 -0
  107. data/lib/oci/core/util.rb +1 -0
  108. data/lib/oci/core/virtual_network_client.rb +3421 -0
  109. data/lib/oci/errors.rb +78 -0
  110. data/lib/oci/global_context.rb +20 -0
  111. data/lib/oci/identity/identity.rb +55 -0
  112. data/lib/oci/identity/identity_client.rb +2148 -0
  113. data/lib/oci/identity/models/add_user_to_group_details.rb +131 -0
  114. data/lib/oci/identity/models/api_key.rb +211 -0
  115. data/lib/oci/identity/models/availability_domain.rb +131 -0
  116. data/lib/oci/identity/models/compartment.rb +211 -0
  117. data/lib/oci/identity/models/create_api_key_details.rb +120 -0
  118. data/lib/oci/identity/models/create_compartment_details.rb +145 -0
  119. data/lib/oci/identity/models/create_customer_secret_key_details.rb +121 -0
  120. data/lib/oci/identity/models/create_group_details.rb +144 -0
  121. data/lib/oci/identity/models/create_identity_provider_details.rb +215 -0
  122. data/lib/oci/identity/models/create_idp_group_mapping_details.rb +133 -0
  123. data/lib/oci/identity/models/create_policy_details.rb +173 -0
  124. data/lib/oci/identity/models/create_region_subscription_details.rb +128 -0
  125. data/lib/oci/identity/models/create_saml2_identity_provider_details.rb +154 -0
  126. data/lib/oci/identity/models/create_swift_password_details.rb +121 -0
  127. data/lib/oci/identity/models/create_user_details.rb +144 -0
  128. data/lib/oci/identity/models/customer_secret_key.rb +225 -0
  129. data/lib/oci/identity/models/customer_secret_key_summary.rb +213 -0
  130. data/lib/oci/identity/models/group.rb +211 -0
  131. data/lib/oci/identity/models/identity_provider.rb +261 -0
  132. data/lib/oci/identity/models/idp_group_mapping.rb +220 -0
  133. data/lib/oci/identity/models/policy.rb +237 -0
  134. data/lib/oci/identity/models/region.rb +143 -0
  135. data/lib/oci/identity/models/region_subscription.rb +180 -0
  136. data/lib/oci/identity/models/saml2_identity_provider.rb +180 -0
  137. data/lib/oci/identity/models/swift_password.rb +226 -0
  138. data/lib/oci/identity/models/tenancy.rb +159 -0
  139. data/lib/oci/identity/models/ui_password.rb +187 -0
  140. data/lib/oci/identity/models/update_compartment_details.rb +132 -0
  141. data/lib/oci/identity/models/update_customer_secret_key_details.rb +120 -0
  142. data/lib/oci/identity/models/update_group_details.rb +120 -0
  143. data/lib/oci/identity/models/update_identity_provider_details.rb +160 -0
  144. data/lib/oci/identity/models/update_idp_group_mapping_details.rb +131 -0
  145. data/lib/oci/identity/models/update_policy_details.rb +148 -0
  146. data/lib/oci/identity/models/update_saml2_identity_provider_details.rb +145 -0
  147. data/lib/oci/identity/models/update_state_details.rb +121 -0
  148. data/lib/oci/identity/models/update_swift_password_details.rb +120 -0
  149. data/lib/oci/identity/models/update_user_details.rb +120 -0
  150. data/lib/oci/identity/models/user.rb +217 -0
  151. data/lib/oci/identity/models/user_group_membership.rb +209 -0
  152. data/lib/oci/identity/util.rb +1 -0
  153. data/lib/oci/internal/internal.rb +10 -0
  154. data/lib/oci/internal/util.rb +69 -0
  155. data/lib/oci/load_balancer/load_balancer.rb +51 -0
  156. data/lib/oci/load_balancer/load_balancer_client.rb +1449 -0
  157. data/lib/oci/load_balancer/models/backend.rb +220 -0
  158. data/lib/oci/load_balancer/models/backend_details.rb +206 -0
  159. data/lib/oci/load_balancer/models/backend_health.rb +158 -0
  160. data/lib/oci/load_balancer/models/backend_set.rb +182 -0
  161. data/lib/oci/load_balancer/models/backend_set_details.rb +165 -0
  162. data/lib/oci/load_balancer/models/backend_set_health.rb +207 -0
  163. data/lib/oci/load_balancer/models/certificate.rb +169 -0
  164. data/lib/oci/load_balancer/models/certificate_details.rb +205 -0
  165. data/lib/oci/load_balancer/models/create_backend_details.rb +206 -0
  166. data/lib/oci/load_balancer/models/create_backend_set_details.rb +181 -0
  167. data/lib/oci/load_balancer/models/create_certificate_details.rb +205 -0
  168. data/lib/oci/load_balancer/models/create_listener_details.rb +175 -0
  169. data/lib/oci/load_balancer/models/create_load_balancer_details.rb +220 -0
  170. data/lib/oci/load_balancer/models/health_check_result.rb +183 -0
  171. data/lib/oci/load_balancer/models/health_checker.rb +224 -0
  172. data/lib/oci/load_balancer/models/health_checker_details.rb +223 -0
  173. data/lib/oci/load_balancer/models/ip_address.rb +139 -0
  174. data/lib/oci/load_balancer/models/listener.rb +174 -0
  175. data/lib/oci/load_balancer/models/listener_details.rb +160 -0
  176. data/lib/oci/load_balancer/models/load_balancer.rb +280 -0
  177. data/lib/oci/load_balancer/models/load_balancer_health.rb +215 -0
  178. data/lib/oci/load_balancer/models/load_balancer_health_summary.rb +168 -0
  179. data/lib/oci/load_balancer/models/load_balancer_policy.rb +120 -0
  180. data/lib/oci/load_balancer/models/load_balancer_protocol.rb +120 -0
  181. data/lib/oci/load_balancer/models/load_balancer_shape.rb +120 -0
  182. data/lib/oci/load_balancer/models/session_persistence_configuration_details.rb +141 -0
  183. data/lib/oci/load_balancer/models/ssl_configuration.rb +155 -0
  184. data/lib/oci/load_balancer/models/ssl_configuration_details.rb +155 -0
  185. data/lib/oci/load_balancer/models/update_backend_details.rb +178 -0
  186. data/lib/oci/load_balancer/models/update_backend_set_details.rb +165 -0
  187. data/lib/oci/load_balancer/models/update_health_checker_details.rb +222 -0
  188. data/lib/oci/load_balancer/models/update_listener_details.rb +160 -0
  189. data/lib/oci/load_balancer/models/update_load_balancer_details.rb +124 -0
  190. data/lib/oci/load_balancer/models/work_request.rb +229 -0
  191. data/lib/oci/load_balancer/models/work_request_error.rb +145 -0
  192. data/lib/oci/load_balancer/util.rb +58 -0
  193. data/lib/oci/object_storage/models/bucket.rb +216 -0
  194. data/lib/oci/object_storage/models/bucket_summary.rb +175 -0
  195. data/lib/oci/object_storage/models/commit_multipart_upload_details.rb +133 -0
  196. data/lib/oci/object_storage/models/commit_multipart_upload_part_details.rb +131 -0
  197. data/lib/oci/object_storage/models/create_bucket_details.rb +173 -0
  198. data/lib/oci/object_storage/models/create_multipart_upload_details.rb +166 -0
  199. data/lib/oci/object_storage/models/create_preauthenticated_request_details.rb +171 -0
  200. data/lib/oci/object_storage/models/list_objects.rb +146 -0
  201. data/lib/oci/object_storage/models/multipart_upload.rb +164 -0
  202. data/lib/oci/object_storage/models/multipart_upload_part_summary.rb +153 -0
  203. data/lib/oci/object_storage/models/object_summary.rb +153 -0
  204. data/lib/oci/object_storage/models/preauthenticated_request.rb +207 -0
  205. data/lib/oci/object_storage/models/preauthenticated_request_summary.rb +196 -0
  206. data/lib/oci/object_storage/models/update_bucket_details.rb +171 -0
  207. data/lib/oci/object_storage/object_storage.rb +30 -0
  208. data/lib/oci/object_storage/object_storage_client.rb +1185 -0
  209. data/lib/oci/object_storage/util.rb +1 -0
  210. data/lib/oci/regions.rb +43 -0
  211. data/lib/oci/response.rb +80 -0
  212. data/lib/oci/response_headers.rb +144 -0
  213. data/lib/oci/signer.rb +157 -0
  214. data/lib/oci/version.rb +5 -0
  215. data/lib/oci/waiter.rb +101 -0
  216. data/lib/oraclebmc.rb +3 -0
  217. metadata +375 -0
@@ -0,0 +1,235 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class Core::Models::CrossConnect
7
+
8
+ LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_PENDING_CUSTOMER = 'PENDING_CUSTOMER',
9
+ LIFECYCLE_STATE_PROVISIONING = 'PROVISIONING',
10
+ LIFECYCLE_STATE_PROVISIONED = 'PROVISIONED',
11
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE',
12
+ LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
13
+ LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
14
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
15
+
16
+ # The OCID of the compartment containing the cross-connect group.
17
+ # @return [String]
18
+ attr_accessor :compartment_id
19
+
20
+ # The OCID of the cross-connect group this cross-connect belongs to (if any).
21
+ # @return [String]
22
+ attr_accessor :cross_connect_group_id
23
+
24
+ # A user-friendly name. Does not have to be unique, and it's changeable.
25
+ # Avoid entering confidential information.
26
+ #
27
+ # @return [String]
28
+ attr_accessor :display_name
29
+
30
+ # The cross-connect's Oracle ID (OCID).
31
+ # @return [String]
32
+ attr_accessor :id
33
+
34
+ # The cross-connect's current state.
35
+ # @return [String]
36
+ attr_accessor :lifecycle_state
37
+
38
+ # The name of the FastConnect location where this cross-connect is installed.
39
+ # @return [String]
40
+ attr_accessor :location_name
41
+
42
+ # A string identifying the meet-me room port for this cross-connect.
43
+ # @return [String]
44
+ attr_accessor :port_name
45
+
46
+ # The port speed for this cross-connect.
47
+ #
48
+ # Example: `10 Gbps`
49
+ #
50
+ # @return [String]
51
+ attr_accessor :port_speed_shape_name
52
+
53
+ # The date and time the cross-connect was created, in the format defined by RFC3339.
54
+ #
55
+ # Example: `2016-08-25T21:10:29.600Z`
56
+ #
57
+ # @return [DateTime]
58
+ attr_accessor :time_created
59
+
60
+
61
+ # Initializes the object
62
+ # @param [Hash] attributes Model attributes in the form of hash
63
+ def initialize(attributes = {})
64
+ return unless attributes.is_a?(Hash)
65
+
66
+ # convert string to symbol for hash key
67
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
68
+
69
+ if attributes[:'compartmentId']
70
+ self.compartment_id = attributes[:'compartmentId']
71
+ end
72
+
73
+ if attributes[:'crossConnectGroupId']
74
+ self.cross_connect_group_id = attributes[:'crossConnectGroupId']
75
+ end
76
+
77
+ if attributes[:'displayName']
78
+ self.display_name = attributes[:'displayName']
79
+ end
80
+
81
+ if attributes[:'id']
82
+ self.id = attributes[:'id']
83
+ end
84
+
85
+ if attributes[:'lifecycleState']
86
+ self.lifecycle_state = attributes[:'lifecycleState']
87
+ end
88
+
89
+ if attributes[:'locationName']
90
+ self.location_name = attributes[:'locationName']
91
+ end
92
+
93
+ if attributes[:'portName']
94
+ self.port_name = attributes[:'portName']
95
+ end
96
+
97
+ if attributes[:'portSpeedShapeName']
98
+ self.port_speed_shape_name = attributes[:'portSpeedShapeName']
99
+ end
100
+
101
+ if attributes[:'timeCreated']
102
+ self.time_created = attributes[:'timeCreated']
103
+ end
104
+
105
+ end
106
+
107
+ # Custom attribute writer method checking allowed values (enum).
108
+ # @param [Object] lifecycle_state Object to be assigned
109
+ def lifecycle_state=(lifecycle_state)
110
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
111
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
112
+ else
113
+ @lifecycle_state = lifecycle_state
114
+ end
115
+ end
116
+
117
+ # Checks equality by comparing each attribute.
118
+ # @param [Object] other_object to be compared
119
+ def ==(other_object)
120
+ return true if self.equal?(other_object)
121
+ self.class == other_object.class &&
122
+ compartment_id == other_object.compartment_id &&
123
+ cross_connect_group_id == other_object.cross_connect_group_id &&
124
+ display_name == other_object.display_name &&
125
+ id == other_object.id &&
126
+ lifecycle_state == other_object.lifecycle_state &&
127
+ location_name == other_object.location_name &&
128
+ port_name == other_object.port_name &&
129
+ port_speed_shape_name == other_object.port_speed_shape_name &&
130
+ time_created == other_object.time_created
131
+ end
132
+
133
+ # @see the `==` method
134
+ # @param [Object] other_object to be compared
135
+ def eql?(other_object)
136
+ self == other_object
137
+ end
138
+
139
+ # Calculates hash code according to all attributes.
140
+ # @return [Fixnum] Hash code
141
+ def hash
142
+ [compartment_id, cross_connect_group_id, display_name, id, lifecycle_state, location_name, port_name, port_speed_shape_name, time_created].hash
143
+ end
144
+
145
+ # Builds the object from hash
146
+ # @param [Hash] attributes Model attributes in the form of hash
147
+ # @return [Object] Returns the model itself
148
+ def build_from_hash(attributes)
149
+ return nil unless attributes.is_a?(Hash)
150
+ self.class.swagger_types.each_pair do |key, type|
151
+ if type =~ /^Array<(.*)>/i
152
+ # check to ensure the input is an array given that the the attribute
153
+ # is documented as an array but the input is not
154
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
155
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
156
+ end
157
+ elsif !attributes[self.class.attribute_map[key]].nil?
158
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
159
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
160
+ end
161
+
162
+ self
163
+ end
164
+
165
+ # Returns the string representation of the object
166
+ # @return [String] String presentation of the object
167
+ def to_s
168
+ to_hash.to_s
169
+ end
170
+
171
+ # Returns the object in the form of hash
172
+ # @return [Hash] Returns the object in the form of hash
173
+ def to_hash
174
+ hash = {}
175
+ self.class.attribute_map.each_pair do |attr, param|
176
+ value = self.send(attr)
177
+ next if value.nil?
178
+ hash[param] = _to_hash(value)
179
+ end
180
+ hash
181
+ end
182
+
183
+ private
184
+
185
+ # Outputs non-array value in the form of hash
186
+ # For object, use to_hash. Otherwise, just return the value
187
+ # @param [Object] value Any valid value
188
+ # @return [Hash] Returns the value in the form of hash
189
+ def _to_hash(value)
190
+ if value.is_a?(Array)
191
+ value.compact.map{ |v| _to_hash(v) }
192
+ elsif value.is_a?(Hash)
193
+ {}.tap do |hash|
194
+ value.each { |k, v| hash[k] = _to_hash(v) }
195
+ end
196
+ elsif value.respond_to? :to_hash
197
+ value.to_hash
198
+ else
199
+ value
200
+ end
201
+ end
202
+
203
+
204
+
205
+ # Attribute mapping from ruby-style variable name to JSON key.
206
+ def self.attribute_map
207
+ {
208
+ :'compartment_id' => :'compartmentId',
209
+ :'cross_connect_group_id' => :'crossConnectGroupId',
210
+ :'display_name' => :'displayName',
211
+ :'id' => :'id',
212
+ :'lifecycle_state' => :'lifecycleState',
213
+ :'location_name' => :'locationName',
214
+ :'port_name' => :'portName',
215
+ :'port_speed_shape_name' => :'portSpeedShapeName',
216
+ :'time_created' => :'timeCreated'
217
+ }
218
+ end
219
+
220
+ # Attribute type mapping.
221
+ def self.swagger_types
222
+ {
223
+ :'compartment_id' => :'String',
224
+ :'cross_connect_group_id' => :'String',
225
+ :'display_name' => :'String',
226
+ :'id' => :'String',
227
+ :'lifecycle_state' => :'String',
228
+ :'location_name' => :'String',
229
+ :'port_name' => :'String',
230
+ :'port_speed_shape_name' => :'String',
231
+ :'time_created' => :'DateTime'
232
+ }
233
+ end
234
+ end
235
+ end
@@ -0,0 +1,187 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class Core::Models::CrossConnectGroup
7
+
8
+ LIFECYCLE_STATE_ENUM = [LIFECYCLE_STATE_PROVISIONING = 'PROVISIONING',
9
+ LIFECYCLE_STATE_PROVISIONED = 'PROVISIONED',
10
+ LIFECYCLE_STATE_INACTIVE = 'INACTIVE',
11
+ LIFECYCLE_STATE_TERMINATING = 'TERMINATING',
12
+ LIFECYCLE_STATE_TERMINATED = 'TERMINATED',
13
+ LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE = 'UNKNOWN_ENUM_VALUE']
14
+
15
+ # The OCID of the compartment containing the cross-connect group.
16
+ # @return [String]
17
+ attr_accessor :compartment_id
18
+
19
+ # The display name of A user-friendly name. Does not have to be unique, and it's changeable.
20
+ # Avoid entering confidential information.
21
+ #
22
+ # @return [String]
23
+ attr_accessor :display_name
24
+
25
+ # The cross-connect group's Oracle ID (OCID).
26
+ # @return [String]
27
+ attr_accessor :id
28
+
29
+ # The cross-connect group's current state.
30
+ # @return [String]
31
+ attr_accessor :lifecycle_state
32
+
33
+ # The date and time the cross-connect group was created, in the format defined by RFC3339.
34
+ #
35
+ # Example: `2016-08-25T21:10:29.600Z`
36
+ #
37
+ # @return [DateTime]
38
+ attr_accessor :time_created
39
+
40
+
41
+ # Initializes the object
42
+ # @param [Hash] attributes Model attributes in the form of hash
43
+ def initialize(attributes = {})
44
+ return unless attributes.is_a?(Hash)
45
+
46
+ # convert string to symbol for hash key
47
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
48
+
49
+ if attributes[:'compartmentId']
50
+ self.compartment_id = attributes[:'compartmentId']
51
+ end
52
+
53
+ if attributes[:'displayName']
54
+ self.display_name = attributes[:'displayName']
55
+ end
56
+
57
+ if attributes[:'id']
58
+ self.id = attributes[:'id']
59
+ end
60
+
61
+ if attributes[:'lifecycleState']
62
+ self.lifecycle_state = attributes[:'lifecycleState']
63
+ end
64
+
65
+ if attributes[:'timeCreated']
66
+ self.time_created = attributes[:'timeCreated']
67
+ end
68
+
69
+ end
70
+
71
+ # Custom attribute writer method checking allowed values (enum).
72
+ # @param [Object] lifecycle_state Object to be assigned
73
+ def lifecycle_state=(lifecycle_state)
74
+ if lifecycle_state && !LIFECYCLE_STATE_ENUM.include?(lifecycle_state)
75
+ @lifecycle_state = LIFECYCLE_STATE_UNKNOWN_ENUM_VALUE
76
+ else
77
+ @lifecycle_state = lifecycle_state
78
+ end
79
+ end
80
+
81
+ # Checks equality by comparing each attribute.
82
+ # @param [Object] other_object to be compared
83
+ def ==(other_object)
84
+ return true if self.equal?(other_object)
85
+ self.class == other_object.class &&
86
+ compartment_id == other_object.compartment_id &&
87
+ display_name == other_object.display_name &&
88
+ id == other_object.id &&
89
+ lifecycle_state == other_object.lifecycle_state &&
90
+ time_created == other_object.time_created
91
+ end
92
+
93
+ # @see the `==` method
94
+ # @param [Object] other_object to be compared
95
+ def eql?(other_object)
96
+ self == other_object
97
+ end
98
+
99
+ # Calculates hash code according to all attributes.
100
+ # @return [Fixnum] Hash code
101
+ def hash
102
+ [compartment_id, display_name, id, lifecycle_state, time_created].hash
103
+ end
104
+
105
+ # Builds the object from hash
106
+ # @param [Hash] attributes Model attributes in the form of hash
107
+ # @return [Object] Returns the model itself
108
+ def build_from_hash(attributes)
109
+ return nil unless attributes.is_a?(Hash)
110
+ self.class.swagger_types.each_pair do |key, type|
111
+ if type =~ /^Array<(.*)>/i
112
+ # check to ensure the input is an array given that the the attribute
113
+ # is documented as an array but the input is not
114
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
115
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
116
+ end
117
+ elsif !attributes[self.class.attribute_map[key]].nil?
118
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
119
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
120
+ end
121
+
122
+ self
123
+ end
124
+
125
+ # Returns the string representation of the object
126
+ # @return [String] String presentation of the object
127
+ def to_s
128
+ to_hash.to_s
129
+ end
130
+
131
+ # Returns the object in the form of hash
132
+ # @return [Hash] Returns the object in the form of hash
133
+ def to_hash
134
+ hash = {}
135
+ self.class.attribute_map.each_pair do |attr, param|
136
+ value = self.send(attr)
137
+ next if value.nil?
138
+ hash[param] = _to_hash(value)
139
+ end
140
+ hash
141
+ end
142
+
143
+ private
144
+
145
+ # Outputs non-array value in the form of hash
146
+ # For object, use to_hash. Otherwise, just return the value
147
+ # @param [Object] value Any valid value
148
+ # @return [Hash] Returns the value in the form of hash
149
+ def _to_hash(value)
150
+ if value.is_a?(Array)
151
+ value.compact.map{ |v| _to_hash(v) }
152
+ elsif value.is_a?(Hash)
153
+ {}.tap do |hash|
154
+ value.each { |k, v| hash[k] = _to_hash(v) }
155
+ end
156
+ elsif value.respond_to? :to_hash
157
+ value.to_hash
158
+ else
159
+ value
160
+ end
161
+ end
162
+
163
+
164
+
165
+ # Attribute mapping from ruby-style variable name to JSON key.
166
+ def self.attribute_map
167
+ {
168
+ :'compartment_id' => :'compartmentId',
169
+ :'display_name' => :'displayName',
170
+ :'id' => :'id',
171
+ :'lifecycle_state' => :'lifecycleState',
172
+ :'time_created' => :'timeCreated'
173
+ }
174
+ end
175
+
176
+ # Attribute type mapping.
177
+ def self.swagger_types
178
+ {
179
+ :'compartment_id' => :'String',
180
+ :'display_name' => :'String',
181
+ :'id' => :'String',
182
+ :'lifecycle_state' => :'String',
183
+ :'time_created' => :'DateTime'
184
+ }
185
+ end
186
+ end
187
+ end
@@ -0,0 +1,134 @@
1
+ # Copyright (c) 2016, 2017, Oracle and/or its affiliates. All rights reserved.
2
+
3
+ require 'date'
4
+
5
+ module OCI
6
+ class Core::Models::CrossConnectLocation
7
+ # A description of the location.
8
+ # @return [String]
9
+ attr_accessor :description
10
+
11
+ # The name of the location.
12
+ #
13
+ # Example: `CyrusOne, Chandler, AZ`
14
+ #
15
+ # @return [String]
16
+ attr_accessor :name
17
+
18
+
19
+ # Initializes the object
20
+ # @param [Hash] attributes Model attributes in the form of hash
21
+ def initialize(attributes = {})
22
+ return unless attributes.is_a?(Hash)
23
+
24
+ # convert string to symbol for hash key
25
+ attributes = attributes.each_with_object({}){|(k,v), h| h[k.to_sym] = v}
26
+
27
+ if attributes[:'description']
28
+ self.description = attributes[:'description']
29
+ end
30
+
31
+ if attributes[:'name']
32
+ self.name = attributes[:'name']
33
+ end
34
+
35
+ end
36
+
37
+ # Checks equality by comparing each attribute.
38
+ # @param [Object] other_object to be compared
39
+ def ==(other_object)
40
+ return true if self.equal?(other_object)
41
+ self.class == other_object.class &&
42
+ description == other_object.description &&
43
+ name == other_object.name
44
+ end
45
+
46
+ # @see the `==` method
47
+ # @param [Object] other_object to be compared
48
+ def eql?(other_object)
49
+ self == other_object
50
+ end
51
+
52
+ # Calculates hash code according to all attributes.
53
+ # @return [Fixnum] Hash code
54
+ def hash
55
+ [description, name].hash
56
+ end
57
+
58
+ # Builds the object from hash
59
+ # @param [Hash] attributes Model attributes in the form of hash
60
+ # @return [Object] Returns the model itself
61
+ def build_from_hash(attributes)
62
+ return nil unless attributes.is_a?(Hash)
63
+ self.class.swagger_types.each_pair do |key, type|
64
+ if type =~ /^Array<(.*)>/i
65
+ # check to ensure the input is an array given that the the attribute
66
+ # is documented as an array but the input is not
67
+ if attributes[self.class.attribute_map[key]].is_a?(Array)
68
+ self.send("#{key}=", attributes[self.class.attribute_map[key]].map{ |v| OCI::Internal::Util.convert_to_type($1, v) } )
69
+ end
70
+ elsif !attributes[self.class.attribute_map[key]].nil?
71
+ self.send("#{key}=", OCI::Internal::Util.convert_to_type(type, attributes[self.class.attribute_map[key]]))
72
+ end # or else data not found in attributes(hash), not an issue as the data can be optional
73
+ end
74
+
75
+ self
76
+ end
77
+
78
+ # Returns the string representation of the object
79
+ # @return [String] String presentation of the object
80
+ def to_s
81
+ to_hash.to_s
82
+ end
83
+
84
+ # Returns the object in the form of hash
85
+ # @return [Hash] Returns the object in the form of hash
86
+ def to_hash
87
+ hash = {}
88
+ self.class.attribute_map.each_pair do |attr, param|
89
+ value = self.send(attr)
90
+ next if value.nil?
91
+ hash[param] = _to_hash(value)
92
+ end
93
+ hash
94
+ end
95
+
96
+ private
97
+
98
+ # Outputs non-array value in the form of hash
99
+ # For object, use to_hash. Otherwise, just return the value
100
+ # @param [Object] value Any valid value
101
+ # @return [Hash] Returns the value in the form of hash
102
+ def _to_hash(value)
103
+ if value.is_a?(Array)
104
+ value.compact.map{ |v| _to_hash(v) }
105
+ elsif value.is_a?(Hash)
106
+ {}.tap do |hash|
107
+ value.each { |k, v| hash[k] = _to_hash(v) }
108
+ end
109
+ elsif value.respond_to? :to_hash
110
+ value.to_hash
111
+ else
112
+ value
113
+ end
114
+ end
115
+
116
+
117
+
118
+ # Attribute mapping from ruby-style variable name to JSON key.
119
+ def self.attribute_map
120
+ {
121
+ :'description' => :'description',
122
+ :'name' => :'name'
123
+ }
124
+ end
125
+
126
+ # Attribute type mapping.
127
+ def self.swagger_types
128
+ {
129
+ :'description' => :'String',
130
+ :'name' => :'String'
131
+ }
132
+ end
133
+ end
134
+ end