class McAuditEntry

API 1.5

Public Class Methods

filters() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 49
def self.filters
  [:auditee_href, :user_email]
end
find_all(start_date=nil, end_date=nil, limit=1000) click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 53
def self.find_all(start_date=nil, end_date=nil, limit=1000)
  start_date ||= (Time.now.utc - (60*60*24*31)).strftime(RightScale::Api::DATETIME_FMT)
  end_date ||= Time.now.utc.strftime(RightScale::Api::DATETIME_FMT)
  index(start_date, end_date, limit)
end
find_with_filter(start_date, end_date, limit, filter) click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 59
def self.find_with_filter(start_date, end_date, limit, filter)
  index(start_date, end_date, limit, filter)
end
index(start_date, end_date, limit=1000, filter={}) click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 63
def self.index(start_date, end_date, limit=1000, filter={})
  # Validate index params
  ex_fmt = "2011/06/25 00:00:00 +0000"
  regex = /^(\d{4})\/(\d{2})\/(\d{2}) (\d{2}):(\d{2}):(\d{2}) ([+-]\d{4})$/
  unless start_date =~ regex
    raise ArgumentError.new("start_date doesn't match format. e.g., #{ex_fmt}")
  end
  unless end_date =~ regex
    raise ArgumentError.new("end_date doesn't match format. e.g., #{ex_fmt}")
  end
  unless (1..1000) === limit.to_i
    raise ArgumentError.new("limit is not within the range of 1..1000")
  end
  filter_params = []
  filter.each { |key,val|
    unless self.filters.include?(key.to_sym)
      raise ArgumentError.new("#{key} is not a valid filter for resource #{self.resource_singular_name}")
    end
    filter_params << "#{key}==#{val}"
  }

  a = Array.new
  url = self.resource_plural_name
  if filter_params.empty?
    connection.get(url).each do |object|
      a << self.new(object)
    end
  else
    connection.get(url, :filter => filter_params).each do |object|
      a << self.new(object)
    end
  end

  return a
end
resource_plural_name() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 41
def self.resource_plural_name
  "audit_entries"
end
resource_singular_name() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 45
def self.resource_singular_name
  "audit_entry"
end

Public Instance Methods

append(detail, offset) click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 99
def append(detail, offset)
  uri = URI.parse(self.href)
  connection.post(uri.path + "/append", 'detail' => detail, 'offset' => offset)
end
detail() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 104
def detail
  uri = URI.parse(self.href)
  res = connection.post(uri.path + "/detail")
  return res.body
end
resource_plural_name() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 33
def resource_plural_name
  "audit_entries"
end
resource_singular_name() click to toggle source
# File lib/rest_connection/rightscale/mc_audit_entry.rb, line 37
def resource_singular_name
  "audit_entry"
end