Module: JsonApi

Extended by:
JsonApi
Included in:
JsonApi
Defined in:
lib/json_api_ruby.rb,
lib/json_api_ruby/version.rb,
lib/json_api_ruby/includes.rb,
lib/json_api_ruby/resource.rb,
lib/json_api_ruby/exceptions.rb,
lib/json_api_ruby/serializer.rb,
lib/json_api_ruby/association.rb,
lib/json_api_ruby/configuration.rb,
lib/json_api_ruby/resources/dsl.rb,
lib/json_api_ruby/resources/base.rb,
lib/json_api_ruby/associations/meta.rb,
lib/json_api_ruby/associations/to_one.rb,
lib/json_api_ruby/resources/discovery.rb,
lib/json_api_ruby/associations/to_many.rb

Defined Under Namespace

Modules: ArrayPadder, Associations, Resources Classes: ArrayTransposer, Association, CollectionSerializer, Configuration, Includes, ObjectSerializer, Resource, Serializer

Constant Summary collapse

VERSION =
'0.5.0'
ResourceNotFound =
Class.new(StandardError)

Class Attribute Summary collapse

Instance Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



19
20
21
# File 'lib/json_api_ruby/configuration.rb', line 19

def configuration
  @configuration
end

Instance Method Details

#serialize(object, options = {}) ⇒ Object



11
12
13
14
15
16
17
18
19
20
# File 'lib/json_api_ruby/serializer.rb', line 11

def serialize(object, options = {})
  options.stringify_keys!
  # assume it's a collection
  if !object.nil? && object.respond_to?(:to_a)
    serializer = CollectionSerializer.new(object, options)
  else
    serializer = ObjectSerializer.new(object, options)
  end
  serializer.to_hash
end

#serialize_errors(*errors) ⇒ Object



4
5
6
7
8
9
# File 'lib/json_api_ruby/serializer.rb', line 4

def serialize_errors(*errors)
  resource_hashes = errors.flatten.map do |error|
    ErrorResource.new(error).to_hash
  end
  { errors: resource_hashes }
end