Class: Fog::AWS::EC2::Address
- Inherits:
-
Model
- Object
- Model
- Fog::AWS::EC2::Address
show all
- Defined in:
- lib/fog/aws/models/ec2/address.rb
Instance Method Summary
collapse
Methods inherited from Model
aliases, attribute, attributes, #attributes, #inspect, #merge_attributes
Constructor Details
#initialize(new_attributes = {}) ⇒ Address
Returns a new instance of Address.
14
15
16
17
18
19
|
# File 'lib/fog/aws/models/ec2/address.rb', line 14
def initialize(new_attributes = {})
new_attributes = {
:instance_id => ''
}.merge!(new_attributes)
super(new_attributes)
end
|
Instance Method Details
#addresses ⇒ Object
10
11
12
|
# File 'lib/fog/aws/models/ec2/address.rb', line 10
def addresses
@addresses
end
|
#destroy ⇒ Object
21
22
23
24
|
# File 'lib/fog/aws/models/ec2/address.rb', line 21
def destroy
connection.release_address(@public_ip)
true
end
|
#instance=(new_instance) ⇒ Object
26
27
28
29
|
# File 'lib/fog/aws/models/ec2/address.rb', line 26
def instance=(new_instance)
@instance_id = new_instance.instance_id
connection.associate_address(@instance_id, @public_ip)
end
|
#reload ⇒ Object
31
32
33
34
|
# File 'lib/fog/aws/models/ec2/address.rb', line 31
def reload
new_attributes = addresses.get(@public_ip).attributes
merge_attributes(new_attributes)
end
|
#save ⇒ Object
36
37
38
39
40
|
# File 'lib/fog/aws/models/ec2/address.rb', line 36
def save
data = connection.allocate_address
@public_ip = data.body['publicIp']
true
end
|