Class: Synqa::FileContent
- Inherits:
-
Object
- Object
- Synqa::FileContent
- Defined in:
- lib/synqa.rb
Overview
An object representing the content of a file within a ContentTree. The file may be marked for copying (if it’s in a source ContentTree) or for deletion (if it’s in a destination ContentTree)
Instance Attribute Summary collapse
-
#copyDestination ⇒ Object
readonly
The destination to which the file should be copied.
-
#hash ⇒ Object
readonly
The hash value of the file’s contents.
-
#name ⇒ Object
readonly
The name of the file.
-
#parentPathElements ⇒ Object
readonly
The components of the relative path where the file is found.
-
#toBeDeleted ⇒ Object
readonly
Should this file be deleted.
Instance Method Summary collapse
-
#initialize(name, hash, parentPathElements) ⇒ FileContent
constructor
A new instance of FileContent.
-
#markToCopy(destinationDirectory) ⇒ Object
Mark this file to be copied to a destination directory (from a destination content tree).
-
#markToDelete ⇒ Object
Mark this file to be deleted.
-
#relativePath ⇒ Object
The relative name of this file in the content tree (relative to the base dir).
- #to_s ⇒ Object
Constructor Details
#initialize(name, hash, parentPathElements) ⇒ FileContent
Returns a new instance of FileContent.
435 436 437 438 439 440 441 |
# File 'lib/synqa.rb', line 435 def initialize(name, hash, parentPathElements) @name = name @hash = hash @parentPathElements = parentPathElements @copyDestination = nil @toBeDeleted = false end |
Instance Attribute Details
#copyDestination ⇒ Object (readonly)
The destination to which the file should be copied
430 431 432 |
# File 'lib/synqa.rb', line 430 def copyDestination @copyDestination end |
#hash ⇒ Object (readonly)
The hash value of the file’s contents
424 425 426 |
# File 'lib/synqa.rb', line 424 def hash @hash end |
#name ⇒ Object (readonly)
The name of the file
421 422 423 |
# File 'lib/synqa.rb', line 421 def name @name end |
#parentPathElements ⇒ Object (readonly)
The components of the relative path where the file is found
427 428 429 |
# File 'lib/synqa.rb', line 427 def parentPathElements @parentPathElements end |
#toBeDeleted ⇒ Object (readonly)
Should this file be deleted
433 434 435 |
# File 'lib/synqa.rb', line 433 def toBeDeleted @toBeDeleted end |
Instance Method Details
#markToCopy(destinationDirectory) ⇒ Object
Mark this file to be copied to a destination directory (from a destination content tree)
444 445 446 |
# File 'lib/synqa.rb', line 444 def markToCopy(destinationDirectory) @copyDestination = destinationDirectory end |
#markToDelete ⇒ Object
Mark this file to be deleted
449 450 451 |
# File 'lib/synqa.rb', line 449 def markToDelete @toBeDeleted = true end |
#relativePath ⇒ Object
The relative name of this file in the content tree (relative to the base dir)
458 459 460 |
# File 'lib/synqa.rb', line 458 def relativePath return (parentPathElements + [name]).join("/") end |
#to_s ⇒ Object
453 454 455 |
# File 'lib/synqa.rb', line 453 def to_s return "#{name} (#{hash})" end |