Sha256: 66958d23d03a7d34be8346f80527e8b89f96a0ce28724fd68f9b70b1e1d8f0e7
Contents?: true
Size: 735 Bytes
Versions: 2
Compression:
Stored size: 735 Bytes
Contents
module Hcloud class IsoResource < AbstractResource include Enumerable def all Oj.load(request("isos").run.body)["isos"].map do |x| Iso.new(x, self, client) end end def [](arg) case arg when Integer begin find(arg) rescue Error::NotFound end when String find_by(name: arg) end end def find(id) Iso.new( Oj.load(request("isos/#{id.to_i}").run.body)["iso"], self, client ) end def find_by(name:) j = Oj.load(request("isos", q: {name: name}).run.body)["isos"] return if j.none? j.each do |x| return Iso.new(x, self, client) end end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
hcloud-0.1.0.pre.alpha4 | lib/hcloud/iso_resource.rb |
hcloud-0.1.0.pre.alpha3 | lib/hcloud/iso_resource.rb |