Sha256: 8ada8d33a5f1c88771028ad54fff1a55fb9134c0c79ae6bdba685f6332133557
Contents?: true
Size: 1.27 KB
Versions: 4
Compression:
Stored size: 1.27 KB
Contents
module Fog module AWS class EC2 class Address < Fog::Model attribute :instance_id, 'instanceId' attribute :public_ip, 'publicIp' def addresses @addresses end def initialize(new_attributes = {}) new_attributes = { :instance_id => '' }.merge!(new_attributes) super(new_attributes) end def destroy connection.release_address(@public_ip) true end def instance=(new_instance) if !@public_ip @instance = new_instance elsif new_instance @instance = nil @instance_id = new_instance.instance_id connection.associate_address(@instance_id, @public_ip) end end def reload if new_address = addresses.get(@public_ip) merge_attributes(new_address.attributes) end end def save data = connection.allocate_address @public_ip = data.body['publicIp'] if @instance self.instance = @instance end true end private def addresses=(new_addresses) @addresses = new_addresses end end end end end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
fog-0.0.29 | lib/fog/aws/models/ec2/address.rb |
fog-0.0.28 | lib/fog/aws/models/ec2/address.rb |
fog-0.0.27 | lib/fog/aws/models/ec2/address.rb |
fog-0.0.26 | lib/fog/aws/models/ec2/address.rb |