Sha256: 09c39799e36d171933238db7e815c81fe5b20477b02e8c2948e63b31b3e4fa76
Contents?: true
Size: 1004 Bytes
Versions: 24
Compression:
Stored size: 1004 Bytes
Contents
require 'fog/core/collection' require 'fog/cloudstack/models/compute/project' module Fog module Compute class Cloudstack class Projects < Fog::Collection model Fog::Compute::Cloudstack::Project def all(filters={}) options = get_filter_options(filters) data = service.list_projects(options)["listprojectsresponse"]["project"] || [] load(data) end def get(project_id, filters={}) filter_option = get_filter_options(filters) options = filter_option.merge('id' => project_id) if template = service.list_projects(options)["listprojectsresponse"]["project"].first new(template) end rescue Fog::Compute::Cloudstack::BadRequest nil end private def get_filter_options(filters) default_filter = { 'projectfilter' => 'self' } default_filter.merge(filters) end end end end end
Version data entries
24 entries across 22 versions & 3 rubygems