Sha256: eab8c3201cce95177d8b1bba7adc1aaf631c55cb0ae1389ff4e82462facab9b2

Contents?: true

Size: 733 Bytes

Versions: 20

Compression:

Stored size: 733 Bytes

Contents

module MCollective
  class Aggregate
    class Average < Base
      # Before function is run processing
      def startup_hook
        @result[:value] = 0
        @result[:type] = :numeric

        @count = 0

        # Set default aggregate_function if it is undefined
        @aggregate_format ||= "Average of #{@result[:output]}: %f"
      end

      # Determines the average of a set of numerical values
      def process_result(value, reply)
        @result[:value] += value
        @count += 1
      end

      # Stops execution of the function and returns a ResultObject
      def summarize
        @result[:value] /= @count

        result_class(:numeric).new(@result, @aggregate_format, @action)
      end
    end
  end
end

Version data entries

20 entries across 20 versions & 1 rubygems

Version Path
choria-mcorpc-support-2.26.5 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.26.4 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.26.3 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.26.2 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.26.1 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.26.0 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.25.3 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.25.2 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.25.1 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.25.0 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.24.4 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.24.3 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.24.2 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.24.1 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.24.0 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.23.3 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.23.2 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.23.1 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.23.0 lib/mcollective/aggregate/average.rb
choria-mcorpc-support-2.23.0.pre lib/mcollective/aggregate/average.rb