class AWS::EC2::ElasticIp

@attr_reader [String,nil] instance_id Returns the instance id if

assigned to an EC2 instance, nil otherwise.

Attributes

ip_address[R]

@return [String] The public IP address.

public_ip[R]

@return [String] The public IP address.

Public Class Methods

new(public_ip, options = {}) click to toggle source
# File lib/aws/ec2/elastic_ip.rb, line 23
def initialize public_ip, options = {}
  @public_ip = public_ip
  super
end

Protected Class Methods

describe_call_name() click to toggle source

@private

# File lib/aws/ec2/elastic_ip.rb, line 102
def self.describe_call_name
  :describe_addresses
end

Public Instance Methods

associated?() click to toggle source

@return [Boolean] Returns true if this IP address is attached to

an EC2 instance.
# File lib/aws/ec2/elastic_ip.rb, line 41
def associated?
  !!instance_id
end
Also aliased as: attached?
attached?() click to toggle source
Alias for: associated?
delete() click to toggle source

Releases the elastic IP address.

(For non-VPC elastic ips) Releasing an IP address automatically disassociates it from any instance it’s associated with.

@return [nil]

# File lib/aws/ec2/elastic_ip.rb, line 61
def delete
  client.release_address(resource_options)
  nil
end
Also aliased as: release
disassociate() click to toggle source

Disassociates this elastic IP address from an EC2 instance. Raises an exception if this elastic IP is not currently associated with an instance. @return [nil]

# File lib/aws/ec2/elastic_ip.rb, line 72
def disassociate
  client.disassociate_address(resource_options)
  nil
end
instance() click to toggle source

@return [Instance,nil] If associated, returns the {Instance} this

elastic IP address is associated to, nil otherwise.
# File lib/aws/ec2/elastic_ip.rb, line 49
def instance
  if instance_id = self.instance_id
    Instance.new(instance_id, :config => config)
  end
end
release() click to toggle source
Alias for: delete
to_s() click to toggle source

@return [String] Returns the public IP address

# File lib/aws/ec2/elastic_ip.rb, line 78
def to_s
  public_ip.to_s
end

Protected Instance Methods

describe_call_name() click to toggle source

@private

# File lib/aws/ec2/elastic_ip.rb, line 96
def describe_call_name
  :describe_addresses
end
resource_id_method() click to toggle source

@private

# File lib/aws/ec2/elastic_ip.rb, line 84
def resource_id_method
  :public_ip
end
response_id_method() click to toggle source

@private

# File lib/aws/ec2/elastic_ip.rb, line 90
def response_id_method
  :public_ip
end