class SimpleJSONAPIClient::Redirection::Proxy

Public Instance Methods

as_json() click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 27
def as_json
  if internal_object.respond_to?(:as_json)
    internal_object.as_json
  elsif internal_object.is_a?(Array)
    internal_object.map(&:as_json)
  elsif nil?
    nil
  else
    raise "Cannot convert #{inspect} to JSON!"
  end
end
inspect() click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 10
def inspect
  if @internal_object
    @internal_object.inspect
  else
    pseudo_inspect
  end
end
method_missing(meth, *args, &block) click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 18
def method_missing(meth, *args, &block)
  self.class.def_delegator :internal_object, meth
  internal_object.__send__(meth, *args, &block)
end
respond_to_missing?(*args) click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 23
def respond_to_missing?(*args)
  internal_object.__send__(:respond_to?, *args)
end

Private Instance Methods

fetch_internal_object() click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 49
def fetch_internal_object
  raise NotImplementedError
end
internal_object() click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 41
def internal_object
  @internal_object ||= fetch_internal_object
end
pseudo_inspect() click to toggle source
# File lib/simple_jsonapi_client/redirection/proxy.rb, line 45
def pseudo_inspect
  raise NotImplementedError
end