Class: Jekyll::Documents::TextStaticFile

Inherits:
StaticFile
  • Object
show all
Defined in:
lib/jekyll/documents/utils.rb

Overview

A tiny StaticFile subclass for writing text files during build.

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(site, base, rel_dest, content) ⇒ TextStaticFile

Returns a new instance of TextStaticFile.



9
10
11
12
13
14
15
16
17
# File 'lib/jekyll/documents/utils.rb', line 9

def initialize(site, base, rel_dest, content)
  @site = site
  @base = base
  @dir  = File.dirname(rel_dest)
  @name = File.basename(rel_dest)
  @content = content
  @data = { "sitemap" => false }
  super(site, base, @dir, @name)
end

Instance Attribute Details

#dataObject (readonly)

Returns the value of attribute data.



7
8
9
# File 'lib/jekyll/documents/utils.rb', line 7

def data
  @data
end

Instance Method Details

#write(dest) ⇒ Object



19
20
21
22
23
24
25
26
27
# File 'lib/jekyll/documents/utils.rb', line 19

def write(dest)
  dest_path = destination(dest)
  FileUtils.mkdir_p(File.dirname(dest_path))
  File.write(dest_path, @content)
  true
rescue StandardError => e
  Jekyll.logger.error "jekyll-documents", "Failed to write #{dest_path}: #{e.message}"
  false
end