class DaisybillApi::Ext::Links::Link

Attributes

href[RW]
klass[R]
name[R]

Public Class Methods

new(name, klass, options = {}) click to toggle source
# File lib/daisybill_api/ext/links/link.rb, line 8
def initialize(name, klass, options = {})
  @name = name
  @klass = klass
  @options = options
end

Public Instance Methods

foreign_id() click to toggle source
# File lib/daisybill_api/ext/links/link.rb, line 29
def foreign_id
  href.split("/").last
end
foreign_key() click to toggle source
# File lib/daisybill_api/ext/links/link.rb, line 21
def foreign_key
  @foreign_key ||= @options.has_key?(:foreign_key) ? @options[:foreign_key] : "#{name}_id"
end
foreign_key?() click to toggle source
# File lib/daisybill_api/ext/links/link.rb, line 25
def foreign_key?
  !@options.has_key?(:foreign_key) || !!@options[:foreign_key]
end
value() click to toggle source
# File lib/daisybill_api/ext/links/link.rb, line 14
def value
  return unless href
  default_path = DaisybillApi::Data::Url::DEFAULT_PATH
  c = DaisybillApi::Data::Client.build(:get, href.gsub(default_path, ""))
  klass.constantize.new(c.response) if c.success?
end