Class: Jekyll::Contentful::Serializer
- Inherits:
-
Object
- Object
- Jekyll::Contentful::Serializer
- Defined in:
- lib/jekyll-contentful-data-import/serializer.rb
Overview
Serializer class
Transforms the serialized entries to YAML
Instance Attribute Summary collapse
-
#config ⇒ Object
readonly
Returns the value of attribute config.
-
#entries ⇒ Object
readonly
Returns the value of attribute entries.
Instance Method Summary collapse
-
#initialize(entries, config = {}) ⇒ Serializer
constructor
A new instance of Serializer.
- #serialize ⇒ Object
- #to_yaml ⇒ Object
Constructor Details
#initialize(entries, config = {}) ⇒ Serializer
Returns a new instance of Serializer.
12 13 14 15 |
# File 'lib/jekyll-contentful-data-import/serializer.rb', line 12 def initialize(entries, config = {}) @entries = entries @config = config end |
Instance Attribute Details
#config ⇒ Object (readonly)
Returns the value of attribute config.
10 11 12 |
# File 'lib/jekyll-contentful-data-import/serializer.rb', line 10 def config @config end |
#entries ⇒ Object (readonly)
Returns the value of attribute entries.
10 11 12 |
# File 'lib/jekyll-contentful-data-import/serializer.rb', line 10 def entries @entries end |
Instance Method Details
#serialize ⇒ Object
17 18 19 20 21 22 23 24 25 26 |
# File 'lib/jekyll-contentful-data-import/serializer.rb', line 17 def serialize result = {} entries.group_by { |entry| entry.content_type.id }.each do |content_type, entry_list| result[content_type] = entry_list.map do |entry| ::Jekyll::Contentful::Mappers::Base.mapper_for(entry, config).map end end result end |
#to_yaml ⇒ Object
28 29 30 |
# File 'lib/jekyll-contentful-data-import/serializer.rb', line 28 def to_yaml YAML.dump(serialize) end |