module RightScale::Api::McTaggable

Public Instance Methods

add_tags(*args) click to toggle source
# File lib/rest_connection/rightscale/rightscale_api_mc_taggable.rb, line 31
def add_tags(*args)
  return false if args.empty?
  McTag.set(self.href, args.uniq)
  self.tags(true)
end
remove_tags(*args) click to toggle source
# File lib/rest_connection/rightscale/rightscale_api_mc_taggable.rb, line 37
def remove_tags(*args)
  return false if args.empty?
  McTag.unset(self.href, args.uniq)
  @params["tags"] -= args
  self.tags(true)
end
tags(reload=false) click to toggle source
# File lib/rest_connection/rightscale/rightscale_api_mc_taggable.rb, line 44
def tags(reload=false)
  @params["tags"] ||= []
  @params["tags"].map! { |item| item.is_a?(Hash) ? item["name"] : item }
  @params["tags"].deep_merge!(McTag.search_by_href(self.href).first["tags"].map { |hsh| hsh["name"] }) if reload or @params["tags"].empty?
  @params["tags"]
end