Class: Aws::RDS::DBEngineVersion
- Inherits:
-
Object
- Object
- Aws::RDS::DBEngineVersion
- Extended by:
- Deprecations
- Defined in:
- lib/aws-sdk-rds/db_engine_version.rb
Defined Under Namespace
Classes: Collection
Read-Only Attributes collapse
-
#db_engine_description ⇒ String
The description of the database engine.
-
#db_engine_version_description ⇒ String
The description of the database engine version.
-
#db_parameter_group_family ⇒ String
The name of the DB parameter group family for the database engine.
-
#default_character_set ⇒ Types::CharacterSet
The default character set for new instances of this engine version, if the ‘CharacterSetName` parameter of the CreateDBInstance API is not specified.
- #engine_name ⇒ String (also: #engine)
-
#exportable_log_types ⇒ Array<String>
The types of logs that the database engine has available for export to CloudWatch Logs.
-
#supported_character_sets ⇒ Array<Types::CharacterSet>
A list of the character sets supported by this engine for the ‘CharacterSetName` parameter of the `CreateDBInstance` action.
-
#supported_engine_modes ⇒ Array<String>
A list of the supported DB engine modes.
-
#supported_timezones ⇒ Array<Types::Timezone>
A list of the time zones supported by this engine for the ‘Timezone` parameter of the `CreateDBInstance` action.
-
#supports_log_exports_to_cloudwatch_logs ⇒ Boolean
A value that indicates whether the engine version supports exporting the log types specified by ExportableLogTypes to CloudWatch Logs.
-
#supports_read_replica ⇒ Boolean
Indicates whether the database engine version supports read replicas.
-
#valid_upgrade_target ⇒ Array<Types::UpgradeTarget>
A list of engine versions that this database engine version can be upgraded to.
- #version ⇒ String (also: #engine_version)
Associations collapse
- #identifiers ⇒ Object deprecated private Deprecated.
- #option_group_options(options = {}) ⇒ OptionGroupOption::Collection
- #option_groups(options = {}) ⇒ OptionGroup::Collection
- #parameter_group_family ⇒ DBParameterGroupFamily?
Instance Method Summary collapse
- #client ⇒ Client
-
#data ⇒ Types::DBEngineVersion
Returns the data for this DBEngineVersion.
-
#data_loaded? ⇒ Boolean
Returns ‘true` if this resource is loaded.
-
#initialize(*args) ⇒ DBEngineVersion
constructor
A new instance of DBEngineVersion.
-
#load ⇒ self
(also: #reload)
Loads, or reloads #data for the current DBEngineVersion.
-
#wait_until(options = {}, &block) ⇒ Resource
deprecated
Deprecated.
Use [Aws::RDS::Client] #wait_until instead
Constructor Details
#initialize(engine_name, version, options = {}) ⇒ DBEngineVersion #initialize(options = {}) ⇒ DBEngineVersion
Returns a new instance of DBEngineVersion.
21 22 23 24 25 26 27 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 21 def initialize(*args) = Hash === args.last ? args.pop.dup : {} @engine_name = extract_engine_name(args, ) @version = extract_version(args, ) @data = .delete(:data) @client = .delete(:client) || Client.new() end |
Instance Method Details
#client ⇒ Client
119 120 121 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 119 def client @client end |
#data ⇒ Types::DBEngineVersion
Returns the data for this Aws::RDS::DBEngineVersion. Calls Client#describe_db_engine_versions if #data_loaded? is ‘false`.
142 143 144 145 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 142 def data load unless @data @data end |
#data_loaded? ⇒ Boolean
150 151 152 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 150 def data_loaded? !!@data end |
#db_engine_description ⇒ String
The description of the database engine.
51 52 53 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 51 def db_engine_description data[:db_engine_description] end |
#db_engine_version_description ⇒ String
The description of the database engine version.
57 58 59 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 57 def db_engine_version_description data[:db_engine_version_description] end |
#db_parameter_group_family ⇒ String
The name of the DB parameter group family for the database engine.
45 46 47 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 45 def db_parameter_group_family data[:db_parameter_group_family] end |
#default_character_set ⇒ Types::CharacterSet
The default character set for new instances of this engine version, if the ‘CharacterSetName` parameter of the CreateDBInstance API is not specified.
65 66 67 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 65 def default_character_set data[:default_character_set] end |
#engine_name ⇒ String Also known as: engine
32 33 34 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 32 def engine_name @engine_name end |
#exportable_log_types ⇒ Array<String>
The types of logs that the database engine has available for export to CloudWatch Logs.
93 94 95 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 93 def exportable_log_types data[:exportable_log_types] end |
#identifiers ⇒ Object
This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.
349 350 351 352 353 354 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 349 def identifiers { engine_name: @engine_name, version: @version } end |
#load ⇒ self Also known as: reload
Loads, or reloads #data for the current Aws::RDS::DBEngineVersion. Returns ‘self` making it possible to chain methods.
db_engine_version.reload.data
129 130 131 132 133 134 135 136 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 129 def load resp = @client.describe_db_engine_versions( engine: @engine_name, engine_version: @version ) @data = resp.db_engine_versions[0] self end |
#option_group_options(options = {}) ⇒ OptionGroupOption::Collection
273 274 275 276 277 278 279 280 281 282 283 284 285 286 287 288 289 290 291 292 293 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 273 def ( = {}) batches = Enumerator.new do |y| = .merge( engine_name: @engine, major_engine_version: @version ) resp = @client.() resp.each_page do |page| batch = [] page.data..each do |o| batch << OptionGroupOption.new( name: o.name, data: o, client: @client ) end y.yield(batch) end end OptionGroupOption::Collection.new(batches) end |
#option_groups(options = {}) ⇒ OptionGroup::Collection
313 314 315 316 317 318 319 320 321 322 323 324 325 326 327 328 329 330 331 332 333 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 313 def option_groups( = {}) batches = Enumerator.new do |y| = .merge( engine_name: @engine, major_engine_version: @version ) resp = @client.describe_option_groups() resp.each_page do |page| batch = [] page.data.option_groups_list.each do |o| batch << OptionGroup.new( name: o.option_group_name, data: o, client: @client ) end y.yield(batch) end end OptionGroup::Collection.new(batches) end |
#parameter_group_family ⇒ DBParameterGroupFamily?
336 337 338 339 340 341 342 343 344 345 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 336 def parameter_group_family if data[:db_parameter_group_family] DBParameterGroupFamily.new( name: data[:db_parameter_group_family], client: @client ) else nil end end |
#supported_character_sets ⇒ Array<Types::CharacterSet>
A list of the character sets supported by this engine for the ‘CharacterSetName` parameter of the `CreateDBInstance` action.
72 73 74 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 72 def supported_character_sets data[:supported_character_sets] end |
#supported_engine_modes ⇒ Array<String>
A list of the supported DB engine modes.
112 113 114 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 112 def supported_engine_modes data[:supported_engine_modes] end |
#supported_timezones ⇒ Array<Types::Timezone>
A list of the time zones supported by this engine for the ‘Timezone` parameter of the `CreateDBInstance` action.
86 87 88 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 86 def supported_timezones data[:supported_timezones] end |
#supports_log_exports_to_cloudwatch_logs ⇒ Boolean
A value that indicates whether the engine version supports exporting the log types specified by ExportableLogTypes to CloudWatch Logs.
100 101 102 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 100 def supports_log_exports_to_cloudwatch_logs data[:supports_log_exports_to_cloudwatch_logs] end |
#supports_read_replica ⇒ Boolean
Indicates whether the database engine version supports read replicas.
106 107 108 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 106 def supports_read_replica data[:supports_read_replica] end |
#valid_upgrade_target ⇒ Array<Types::UpgradeTarget>
A list of engine versions that this database engine version can be upgraded to.
79 80 81 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 79 def valid_upgrade_target data[:valid_upgrade_target] end |
#version ⇒ String Also known as: engine_version
38 39 40 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 38 def version @version end |
#wait_until(options = {}, &block) ⇒ Resource
Use [Aws::RDS::Client] #wait_until instead
The waiting operation is performed on a copy. The original resource remains unchanged
Waiter polls an API operation until a resource enters a desired state.
## Basic Usage
Waiter will polls until it is successful, it fails by entering a terminal state, or until a maximum number of attempts are made.
# polls in a loop until condition is true
resource.wait_until() {|resource| condition}
## Example
instance.wait_until(max_attempts:10, delay:5) {|instance| instance.state.name == 'running' }
## Configuration
You can configure the maximum number of polling attempts, and the delay (in seconds) between each polling attempt. The waiting condition is set by passing a block to #wait_until:
# poll for ~25 seconds
resource.wait_until(max_attempts:5,delay:5) {|resource|...}
## Callbacks
You can be notified before each polling attempt and before each delay. If you throw ‘:success` or `:failure` from these callbacks, it will terminate the waiter.
started_at = Time.now
# poll for 1 hour, instead of a number of attempts
proc = Proc.new do |attempts, response|
throw :failure if Time.now - started_at > 3600
end
# disable max attempts
instance.wait_until(before_wait:proc, max_attempts:nil) {...}
## Handling Errors
When a waiter is successful, it returns the Resource. When a waiter fails, it raises an error.
begin
resource.wait_until(...)
rescue Aws::Waiters::Errors::WaiterFailed
# resource did not enter the desired state in time
end
attempts attempt in seconds invoked before each attempt invoked before each wait
232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 |
# File 'lib/aws-sdk-rds/db_engine_version.rb', line 232 def wait_until( = {}, &block) self_copy = self.dup attempts = 0 [:max_attempts] = 10 unless .key?(:max_attempts) [:delay] ||= 10 [:poller] = Proc.new do attempts += 1 if block.call(self_copy) [:success, self_copy] else self_copy.reload unless attempts == [:max_attempts] :retry end end Aws::Waiters::Waiter.new().wait({}) end |