Module: ActivityEngine

Extended by:
ActiveSupport::Autoload
Defined in:
lib/activity_engine.rb,
lib/activity_engine/engine.rb,
lib/activity_engine/version.rb,
lib/activity_engine/exceptions.rb,
app/models/activity_engine/activity.rb,
lib/activity_engine/context_builder.rb,
app/models/activity_engine/statistic.rb,
lib/activity_engine/activity_builder.rb,
lib/activity_engine/activity_sweeper.rb,
lib/activity_engine/activity_data_structure.rb,
app/helpers/activity_engine/application_helper.rb,
lib/generators/activity_engine/install_generator.rb,
lib/generators/activity_engine/register_generator.rb,
app/controllers/activity_engine/application_controller.rb

Defined Under Namespace

Modules: ApplicationHelper, Generators Classes: Activity, ActivityBuilder, ActivityDataStructure, ActivitySweeper, ApplicationController, ContextBuilder, Engine, Statistic, UnpersistedSubjectError

Constant Summary collapse

VERSION =
"0.0.8"

Class Method Summary collapse

Class Method Details

.extract_subject_id(object) ⇒ Object



20
21
22
# File 'lib/activity_engine.rb', line 20

def extract_subject_id(object)
  Array(object.to_key).join(":")
end

.register(class_name, method_name, activity_receiver = Activity, &config_block) ⇒ Object



14
15
16
17
18
# File 'lib/activity_engine.rb', line 14

def register(class_name, method_name, activity_receiver = Activity, &config_block)
  context_builder = ContextBuilder.new(class_name, method_name)
  activity_builder = ActivityBuilder.new(activity_receiver, config_block)
  context_builder.wrap!(activity_builder)
end

.register_controller(controller_name, actions) ⇒ Object



8
9
10
11
12
# File 'lib/activity_engine.rb', line 8

def register_controller(controller_name, actions)
  controller_name.constantize.module_exec(actions) do |swept_actions|
    cache_sweeper ActivitySweeper, only: swept_actions
  end
end

.register_models(*models) ⇒ Object



4
5
6
# File 'lib/activity_engine.rb', line 4

def register_models(*models)
  ActivitySweeper.observe(*models)
end