module Rudy::AWS::EC2::Zones
Public Class Methods
from_hash(h)
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 40 def self.from_hash(h) zone = Rudy::AWS::EC2::Zone.new zone.name = h['zoneName'] zone.region = h['regionName'] zone.state = h['zoneState'] zone end
Public Instance Methods
any?()
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 48 def any? zones = list || [] !zones.empty? end
get(name)
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 53 def get(name) zones = list(name) || [] return if zones.empty? zones.first end
list(*names)
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 21 def list(*names) zones = list_as_hash(names) zones &&= zones.values zones end
list_as_hash(*names)
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 27 def list_as_hash(*names) names = names.flatten zlist = @@ec2.describe_availability_zones(:zone_name => names) return unless zlist['availabilityZoneInfo'].is_a?(Hash) zones = {} zlist['availabilityZoneInfo']['item'].each do |zhash| zon = Zones.from_hash(zhash) zones[zon.name] = zon end zones = nil if zones.empty? zones end
zone?(name)
click to toggle source
# File lib/rudy/aws/ec2/zone.rb, line 59 def zone?(name) begin kp = get(name) kp.is_a?(Rudy::AWS::EC2::Zone) rescue => ex false end end