Class: Renogen::ChangeLog::Writer

Inherits:
Object
  • Object
show all
Defined in:
lib/renogen/change_log/writer.rb

Overview

Writes out the change log

Instance Method Summary collapse

Constructor Details

#initialize(formatter) ⇒ Writer

Returns a new instance of Writer.



5
6
7
# File 'lib/renogen/change_log/writer.rb', line 5

def initialize(formatter)
  @formatter = formatter
end

Instance Method Details

#write!(changelog) ⇒ Object

Writes out the change log

Parameters:



12
13
14
15
16
17
18
19
20
# File 'lib/renogen/change_log/writer.rb', line 12

def write!(changelog)
  puts formatter.write_header(formatter.header(changelog)) unless formatter.write_header(formatter.header(changelog)).nil?
  if formatter.table_formatter?
    write_by_table!(changelog)
  else
    write_by_group!(changelog)
  end
  puts formatter.write_footer(changelog) unless formatter.write_footer(changelog).nil?
end

#write_by_group!(changelog) ⇒ Object

Writes out the change log by group

Parameters:



25
26
27
# File 'lib/renogen/change_log/writer.rb', line 25

def write_by_group!(changelog)
  output_groups(changelog.groups)
end

#write_by_table!(changelog) ⇒ Object

Writes out the change log by item

Parameters:



32
33
34
35
36
# File 'lib/renogen/change_log/writer.rb', line 32

def write_by_table!(changelog)
  changelog.tickets.each do |_, ticket|
    puts formatter.write_change(ticket)
  end
end