class Umwelt::Command::Convey

Public Instance Methods

call(phase_id:, semantic:, source:, target:) click to toggle source
# File lib/umwelt/command/convey.rb, line 7
def call(phase_id:, semantic:, source:, target:)
  @written_paths = imprint(
    tree(source, phase_id), target, semantic
  )
end

Private Instance Methods

aggregate_history(episodes) click to toggle source
# File lib/umwelt/command/convey.rb, line 40
def aggregate_history(episodes)
  prove(
    Umwelt::History::Aggregate
    .new
    .call(episodes)
  ).fragments
end
follow_history(continuity, source) click to toggle source
# File lib/umwelt/command/convey.rb, line 48
def follow_history(continuity, source)
  prove(
    Umwelt::History::Follow
    .new(path: source)
    .call(continuity)
  ).episodes
end
imprint(tree, target, semantic) click to toggle source
# File lib/umwelt/command/convey.rb, line 28
def imprint(tree, target, semantic)
  prove(
    Umwelt::Tree::Imprint
    .new(tree, location: target)
    .call(semantic)
  ).written_paths
end
restore_history(source) click to toggle source
# File lib/umwelt/command/convey.rb, line 64
def restore_history(source)
  prove(
    Umwelt::History::File::Restore
    .new(path: source)
    .call
  ).struct
end
trace_history(history, phase_id) click to toggle source
# File lib/umwelt/command/convey.rb, line 56
def trace_history(history, phase_id)
  prove(
    Umwelt::History::Trace
    .new
    .call(history, phase_id)
  ).continuity
end
tree(source, phase_id) click to toggle source
# File lib/umwelt/command/convey.rb, line 15
def tree(source, phase_id)
  tree_fill(
    aggregate_history(
      follow_history(
        trace_history(
          restore_history(source),
          phase_id
        ), source
      )
    )
  )
end
tree_fill(fragments) click to toggle source
# File lib/umwelt/command/convey.rb, line 36
def tree_fill(fragments)
  Umwelt::Tree::Fill.new.call(fragments)
end