Class: Contentful::Converter::MarkupConverter

Inherits:
Object
  • Object
show all
Defined in:
lib/converters/markup_converter.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(config) ⇒ MarkupConverter

Returns a new instance of MarkupConverter.



10
11
12
13
# File 'lib/converters/markup_converter.rb', line 10

def initialize(config)
  @config = config
  @logger = Logger.new(STDOUT)
end

Instance Attribute Details

#configObject (readonly)

Returns the value of attribute config.



8
9
10
# File 'lib/converters/markup_converter.rb', line 8

def config
  @config
end

#loggerObject (readonly)

Returns the value of attribute logger.



8
9
10
# File 'lib/converters/markup_converter.rb', line 8

def logger
  @logger
end

Instance Method Details

#convert_markup_to_markdownObject



15
16
17
18
19
20
# File 'lib/converters/markup_converter.rb', line 15

def convert_markup_to_markdown
  Dir.glob("#{config.entries_dir}/post/*") do |post_file_path|
    logger.info("Converting #{post_file_path} markups...")
    convert_post_content(post_file_path)
  end
end

#convert_post_content(post_file_path) ⇒ Object



22
23
24
25
26
# File 'lib/converters/markup_converter.rb', line 22

def convert_post_content(post_file_path)
  post_data = JSON.parse(File.read(post_file_path))
  post_data['content'] = ReverseMarkdown.convert post_data['content']
  overwrite_file(post_file_path, post_data)
end

#overwrite_file(path, data) ⇒ Object



28
29
30
31
32
# File 'lib/converters/markup_converter.rb', line 28

def overwrite_file(path, data)
  File.open(path, 'w') do |file|
    file.write(JSON.pretty_generate(data))
  end
end