class Architecture::Copy

Public Class Methods

new(source:, destination:, context: Architecture::EMPTY_CONTEXT) click to toggle source
# File lib/architecture/copy.rb, line 6
def initialize(source:, destination:, context: Architecture::EMPTY_CONTEXT)
  @origin = source
  @clone = destination
  @context = context
end

Public Instance Methods

call() click to toggle source
# File lib/architecture/copy.rb, line 12
def call
  if origin.file? && context.any?
    clone.write(text: data)
  else
    origin.copy(entity: clone)
  end
end

Private Instance Methods

content() click to toggle source
# File lib/architecture/copy.rb, line 20
        def content
  origin.content
end