class MultiCloudImageInternal

API 0.1

Public Class Methods

new(params={}) click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 70
def initialize(params={})
  @params = params
  transform_settings
end
resource_plural_name() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 41
def self.resource_plural_name
  "multi_cloud_images"
end
resource_singular_name() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 45
def self.resource_singular_name
  "multi_cloud_image"
end

Public Instance Methods

clone() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 54
def clone
  t = URI.parse(self.href)
  MultiCloudImage.new(:href => connection.post(t.path + "/clone"))
end
commit(message) click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 49
def commit(message)
  t = URI.parse(self.href)
  MultiCloudImage.new(:href => connection.post(t.path + "/commit"))
end
resource_plural_name() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 33
def resource_plural_name
  "multi_cloud_images"
end
resource_singular_name() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 37
def resource_singular_name
  "multi_cloud_image"
end
settings() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 75
def settings
  transform_settings
  @params["multi_cloud_image_cloud_settings"]
end
supported_cloud_ids() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 80
def supported_cloud_ids
  @params["multi_cloud_image_cloud_settings"].map { |mcics| mcics.cloud_id }
end
transform_settings() click to toggle source
# File lib/rest_connection/rightscale/multi_cloud_image_internal.rb, line 59
def transform_settings
  if @params["multi_cloud_image_cloud_settings"] && @params["multi_cloud_image_cloud_settings"].first.is_a?(Hash)
    @params["multi_cloud_image_cloud_settings"].map! { |setting|
      # Have to reject because API0.1 returns all clouds
      next if setting["fingerprint"] || setting["cloud_id"] > 10
      MultiCloudImageCloudSettingInternal.new(setting)
    }
    @params["multi_cloud_image_cloud_settings"].compact!
  end
end