Class: Asciidoctor::Diagram::Extensions::FileSource
- Inherits:
-
BasicSource
- Object
- BasicSource
- Asciidoctor::Diagram::Extensions::FileSource
- Defined in:
- lib/asciidoctor-diagram/extensions.rb
Overview
A diagram source that retrieves the code for a diagram from an external source file.
Instance Attribute Summary
Attributes inherited from BasicSource
Instance Method Summary collapse
- #code ⇒ Object
- #image_name ⇒ Object
-
#initialize(file_name, attributes) ⇒ FileSource
constructor
A new instance of FileSource.
- #should_process?(image_file, image_metadata) ⇒ Boolean
Methods inherited from BasicSource
#checksum, #compute_checksum, #create_image_metadata
Methods included from DiagramSource
Constructor Details
#initialize(file_name, attributes) ⇒ FileSource
Returns a new instance of FileSource.
351 352 353 354 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 351 def initialize(file_name, attributes) super(attributes) @file_name = file_name end |
Instance Method Details
#code ⇒ Object
368 369 370 371 372 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 368 def code lines = File.readlines(@file_name) lines = ::Asciidoctor::Helpers.normalize_lines(lines) @code ||= lines.join("\n") end |
#image_name ⇒ Object
356 357 358 359 360 361 362 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 356 def image_name if @attributes['target'] super else File.basename(@file_name, File.extname(@file_name)) end end |
#should_process?(image_file, image_metadata) ⇒ Boolean
364 365 366 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 364 def should_process?(image_file, ) File.mtime(@file_name) > File.mtime(image_file) || super end |