Class: Fog::Compute::Google::GlobalAddresses

Inherits:
Fog::Collection
  • Object
show all
Defined in:
lib/fog/compute/google/models/global_addresses.rb

Instance Method Summary collapse

Instance Method Details

#all(options = {}) ⇒ Object



7
8
9
10
# File 'lib/fog/compute/google/models/global_addresses.rb', line 7

def all(options = {})
  data = service.list_global_addresses(options).to_h[:items] || []
  load(data)
end

#get(identity) ⇒ Object



12
13
14
15
16
17
18
19
20
# File 'lib/fog/compute/google/models/global_addresses.rb', line 12

def get(identity)
  if identity
    address = service.get_global_address(identity).to_h
    return new(address)
  end
rescue ::Google::Apis::ClientError => e
  raise e unless e.status_code == 404
  nil
end

#get_by_ip_address(ip_address) ⇒ Object



22
23
24
25
26
27
28
29
# File 'lib/fog/compute/google/models/global_addresses.rb', line 22

def get_by_ip_address(ip_address)
  data = service.list_global_addresses(:filter => "address eq #{ip_address}")
  if data.nil? || data.items.nil?
    nil
  else
    new(data.items.first.to_h)
  end
end

#get_by_ip_address_or_name(ip_address_or_name) ⇒ Object



40
41
42
# File 'lib/fog/compute/google/models/global_addresses.rb', line 40

def get_by_ip_address_or_name(ip_address_or_name)
  get_by_ip_address(ip_address_or_name) || get_by_name(ip_address_or_name)
end

#get_by_name(ip_name) ⇒ Object



31
32
33
34
35
36
37
38
# File 'lib/fog/compute/google/models/global_addresses.rb', line 31

def get_by_name(ip_name)
  data = service.list_global_addresses(:filter => "name eq #{ip_name}")
  if data.nil? || data.items.nil?
    nil
  else
    new(data.items.first.to_h)
  end
end