Sha256: 1c7e5867ec95e6c67765dc39202ac7ad583f20ca98f5fac5ae8c1e1729e27cd7
Contents?: true
Size: 1.71 KB
Versions: 1
Compression:
Stored size: 1.71 KB
Contents
require 'keen' module Pushpop class Keen < Step PLUGIN_NAME = 'keen' attr_accessor :_event_collection attr_accessor :_analysis_type attr_accessor :_timeframe attr_accessor :_target_property attr_accessor :_group_by attr_accessor :_interval attr_accessor :_filters attr_accessor :_steps attr_accessor :_analyses def run(last_response=nil, step_responses=nil) self.configure(last_response, step_responses) ::Keen.send(self._analysis_type, self._event_collection, self.to_analysis_options) end def configure(last_response=nil, step_responses=nil) self.instance_exec(last_response, step_responses, &block) end def to_analysis_options { timeframe: self._timeframe, target_property: self._target_property, group_by: self._group_by, interval: self._interval, filters: self._filters, analyses: self._analyses, steps: self._steps }.delete_if { |_, v| v.nil? } end def event_collection(event_collection) self._event_collection = event_collection end def analysis_type(analysis_type) self._analysis_type = analysis_type end def timeframe(timeframe) self._timeframe = timeframe end def target_property(target_property) self._target_property = target_property end def group_by(group_by) self._group_by = group_by end def interval(interval) self._interval = interval end def filters(filters) self._filters = filters end def steps(steps) self._steps = steps end def analyses(analyses) self._analyses = analyses end end Pushpop::Job.register_plugin(Keen::PLUGIN_NAME, Keen) end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
pushpop-0.1.0 | lib/plugins/keen.rb |