Class: Asciidoctor::Diagram::Extensions::BasicSource
- Inherits:
-
Object
- Object
- Asciidoctor::Diagram::Extensions::BasicSource
- Includes:
- DiagramSource
- Defined in:
- lib/asciidoctor-diagram/extensions.rb
Overview
Base class for diagram source implementations that uses an md5 checksum of the source code of a diagram to determine if it has been updated or not.
Direct Known Subclasses
Instance Attribute Summary collapse
-
#attributes ⇒ Object
readonly
Returns the value of attribute attributes.
Instance Method Summary collapse
- #checksum ⇒ Object
- #compute_checksum(code) ⇒ Object
- #create_image_metadata ⇒ Object
- #image_name ⇒ Object
-
#initialize(attributes) ⇒ BasicSource
constructor
A new instance of BasicSource.
- #should_process?(image_file, image_metadata) ⇒ Boolean
Methods included from DiagramSource
Constructor Details
#initialize(attributes) ⇒ BasicSource
Returns a new instance of BasicSource.
308 309 310 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 308 def initialize(attributes) @attributes = attributes end |
Instance Attribute Details
#attributes ⇒ Object (readonly)
Returns the value of attribute attributes.
306 307 308 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 306 def attributes @attributes end |
Instance Method Details
#checksum ⇒ Object
324 325 326 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 324 def checksum @checksum ||= compute_checksum(code) end |
#compute_checksum(code) ⇒ Object
328 329 330 331 332 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 328 def compute_checksum(code) md5 = Digest::MD5.new md5 << code md5.hexdigest end |
#create_image_metadata ⇒ Object
320 321 322 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 320 def {'checksum' => checksum} end |
#image_name ⇒ Object
312 313 314 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 312 def image_name @attributes['target'] || ('diag-' + checksum) end |
#should_process?(image_file, image_metadata) ⇒ Boolean
316 317 318 |
# File 'lib/asciidoctor-diagram/extensions.rb', line 316 def should_process?(image_file, ) ['checksum'] != checksum end |