Class: Asciidoctor::Diagram::Extensions::BasicSource

Inherits:
Object
  • Object
show all
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

FileSource, ReaderSource

Instance Attribute Summary collapse

Instance Method Summary collapse

Methods included from DiagramSource

#code, #to_s

Constructor Details

#initialize(attributes) ⇒ BasicSource

Returns a new instance of BasicSource.



319
320
321
# File 'lib/asciidoctor-diagram/extensions.rb', line 319

def initialize(attributes)
  @attributes = attributes
end

Instance Attribute Details

#attributesObject (readonly)

Returns the value of attribute attributes.



317
318
319
# File 'lib/asciidoctor-diagram/extensions.rb', line 317

def attributes
  @attributes
end

Instance Method Details

#checksumObject



335
336
337
# File 'lib/asciidoctor-diagram/extensions.rb', line 335

def checksum
  @checksum ||= compute_checksum(code)
end

#create_image_metadataObject



331
332
333
# File 'lib/asciidoctor-diagram/extensions.rb', line 331

def 
  {'checksum' => checksum}
end

#image_nameObject



323
324
325
# File 'lib/asciidoctor-diagram/extensions.rb', line 323

def image_name
  @attributes['target'] || ('diag-' + checksum)
end

#should_process?(image_file, image_metadata) ⇒ Boolean

Returns:

  • (Boolean)


327
328
329
# File 'lib/asciidoctor-diagram/extensions.rb', line 327

def should_process?(image_file, )
  ['checksum'] != checksum
end