diff options
| author | Paul Berry <paul@puppetlabs.com> | 2010-12-29 14:35:58 -0800 |
|---|---|---|
| committer | Paul Berry <paul@puppetlabs.com> | 2010-12-30 11:52:18 -0800 |
| commit | e4a2e049dc9f77569a2dac042e9e847ef34f037d (patch) | |
| tree | 2c5cc5d0cd6ac224e25c2a202898614a89d8d831 | |
| parent | 71db5be0ecc5ab591e01974ba109f621348fdea0 (diff) | |
| download | puppet-e4a2e049dc9f77569a2dac042e9e847ef34f037d.tar.gz puppet-e4a2e049dc9f77569a2dac042e9e847ef34f037d.tar.xz puppet-e4a2e049dc9f77569a2dac042e9e847ef34f037d.zip | |
(#5715) Made the report "calculate" methods strictly functional.
These methods previously stored the metrics as a side effect; now they
simply compute the metrics and return them.
| -rw-r--r-- | lib/puppet/transaction/report.rb | 17 |
1 files changed, 8 insertions, 9 deletions
diff --git a/lib/puppet/transaction/report.rb b/lib/puppet/transaction/report.rb index 16b854afc..f78b5aa21 100644 --- a/lib/puppet/transaction/report.rb +++ b/lib/puppet/transaction/report.rb @@ -44,10 +44,10 @@ class Puppet::Transaction::Report end def finalize_report - calculate_resource_metrics - calculate_time_metrics - calculate_change_metric - calculate_event_metrics + add_metric(:resources, calculate_resource_metrics) + add_metric(:time, calculate_time_metrics) + add_metric(:changes, {:total => calculate_change_metric}) + add_metric(:events, calculate_event_metrics) end def initialize(kind, configuration_version=nil) @@ -108,8 +108,7 @@ class Puppet::Transaction::Report private def calculate_change_metric - total = resource_statuses.map { |name, status| status.change_count || 0 }.inject(0) { |a,b| a+b } - add_metric(:changes, {:total => total}) + resource_statuses.map { |name, status| status.change_count || 0 }.inject(0) { |a,b| a+b } end def calculate_event_metrics @@ -122,7 +121,7 @@ class Puppet::Transaction::Report end end - add_metric(:events, metrics) + metrics end def calculate_resource_metrics @@ -136,7 +135,7 @@ class Puppet::Transaction::Report end end - add_metric(:resources, metrics) + metrics end def calculate_time_metrics @@ -152,6 +151,6 @@ class Puppet::Transaction::Report metrics["total"] = metrics.values.inject(0) { |a,b| a+b } - add_metric(:time, metrics) + metrics end end |
