module Servitude::PrettyPrint
Public Class Methods
configuration_lines( config, pre='', filters=[] )
click to toggle source
# File lib/servitude/pretty_print.rb, line 4 def self.configuration_lines( config, pre='', filters=[] ) return [] if config.nil? || config.empty? formatted = format_configuration( config ) formatted.map do |line_parts| if !filters.nil? && !filters.empty? && filters.include?( line_parts.first ) nil else [pre, line_parts.join( ': ' )].join end end.reject( &:nil? ) end
format_configuration( config, path=[], result=[] )
click to toggle source
# File lib/servitude/pretty_print.rb, line 18 def self.format_configuration( config, path=[], result=[] ) config.each do |element| key, value = *element cur_path = path + [key] if value.is_a?( Hash ) format_configuration( value, cur_path, result ) elsif value.is_a?( Array ) result << [cur_path.map( &:to_s ).join( '.' ), value.inspect] else result << [cur_path.map( &:to_s ).join( '.' ), value] end end result end