Class: Fog::AWS::RDS::Server
- Defined in:
- lib/rackspace-fog/aws/models/rds/server.rb
Instance Attribute Summary collapse
-
#parameter_group_name ⇒ Object
Returns the value of attribute parameter_group_name.
-
#password ⇒ Object
Returns the value of attribute password.
-
#port ⇒ Object
Returns the value of attribute port.
-
#security_group_names ⇒ Object
Returns the value of attribute security_group_names.
Attributes inherited from Model
Instance Method Summary collapse
-
#attributes_to_params ⇒ Object
Converts attributes to a parameter hash suitable for requests.
- #create_read_replica(replica_id, options = {}) ⇒ Object
- #destroy(snapshot_identifier = nil) ⇒ Object
- #modify(immediately, options) ⇒ Object
- #ready? ⇒ Boolean
- #reboot ⇒ Object
- #save ⇒ Object
- #snapshots ⇒ Object
Methods inherited from Model
#initialize, #inspect, #reload, #symbolize_keys, #to_json, #wait_for
Methods included from Fog::Attributes::ClassMethods
#_load, #aliases, #attribute, #attributes, #identity, #ignore_attributes, #ignored_attributes
Methods included from Fog::Attributes::InstanceMethods
#_dump, #attributes, #dup, #identity, #identity=, #merge_attributes, #new_record?, #requires, #requires_one
Constructor Details
This class inherits a constructor from Fog::Model
Instance Attribute Details
#parameter_group_name ⇒ Object
Returns the value of attribute parameter_group_name.
33 34 35 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 33 def parameter_group_name @parameter_group_name end |
#password ⇒ Object
Returns the value of attribute password.
33 34 35 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 33 def password @password end |
#port ⇒ Object
Returns the value of attribute port.
33 34 35 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 33 def port @port end |
#security_group_names ⇒ Object
Returns the value of attribute security_group_names.
33 34 35 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 33 def security_group_names @security_group_names end |
Instance Method Details
#attributes_to_params ⇒ Object
Converts attributes to a parameter hash suitable for requests
84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 84 def attributes_to_params = { 'AllocatedStorage' => allocated_storage, 'AutoMinorVersionUpgrade' => auto_minor_version_upgrade, 'BackupRetentionPeriod' => backup_retention_period, 'DBName' => db_name, 'DBParameterGroupName' => parameter_group_name || attributes['DBParameterGroupName'], 'DBSecurityGroups' => security_group_names, 'DBInstanceIdentifier' => id, 'AvailabilityZone' => availability_zone, 'DBInstanceClass' => flavor_id, 'Port' => port || attributes['Port'], 'Engine' => engine, 'EngineVersion' => engine_version, 'MasterUsername' => master_username, 'MasterUserPassword' => password || attributes['MasterUserPassword'], 'PreferredMaintenanceWindow' => preferred_maintenance_window, 'PreferredBackupWindow' => preferred_backup_window, 'MultiAZ' => multi_az, 'LicenseModel' => license_model } .delete_if {|key, value| value.nil?} end |
#create_read_replica(replica_id, options = {}) ⇒ Object
35 36 37 38 39 40 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 35 def create_read_replica(replica_id, ={}) [:security_group_names] ||= ['DBSecurityGroups'] params = self.class.new().attributes_to_params connection.create_db_instance_read_replica(replica_id, id, params) connection.servers.get(replica_id) end |
#destroy(snapshot_identifier = nil) ⇒ Object
46 47 48 49 50 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 46 def destroy(snapshot_identifier=nil) requires :id connection.delete_db_instance(id, snapshot_identifier, snapshot_identifier.nil?) true end |
#modify(immediately, options) ⇒ Object
62 63 64 65 66 67 68 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 62 def modify(immediately, ) [:security_group_names] ||= ['DBSecurityGroups'] params = self.class.new().attributes_to_params data = connection.modify_db_instance(id, immediately, params) merge_attributes(data.body['ModifyDBInstanceResult']['DBInstance']) true end |
#ready? ⇒ Boolean
42 43 44 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 42 def ready? state == 'available' end |
#reboot ⇒ Object
52 53 54 55 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 52 def reboot connection.reboot_db_instance(id) true end |
#save ⇒ Object
70 71 72 73 74 75 76 77 78 79 80 81 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 70 def save requires :engine requires :allocated_storage requires :master_username requires :password self.flavor_id ||= 'db.m1.small' data = connection.create_db_instance(id, attributes_to_params) merge_attributes(data.body['CreateDBInstanceResult']['DBInstance']) true end |
#snapshots ⇒ Object
57 58 59 60 |
# File 'lib/rackspace-fog/aws/models/rds/server.rb', line 57 def snapshots requires :id connection.snapshots(:server => self) end |