Module: LiveActivity::Activity::ClassMethods

Defined in:
lib/live_activity/activity.rb

Instance Method Summary collapse

Instance Method Details

#activity(name, &block) ⇒ Definition

Defines a new Activity2 type and registers a definition

Examples:

Define a new activity

activity(:enquiry) do
  actor :user, :cache => [:full_name]
  act_object :enquiry, :cache => [:subject]
  act_target :listing, :cache => [:title]
end

Parameters:

  • name (String)

    The name of the activity

Returns:

  • (Definition)

    Returns the registered definition



30
31
32
33
34
# File 'lib/live_activity/activity.rb', line 30

def activity(name, &block)
  definition = LiveActivity::DefinitionDSL.new(name)
  definition.instance_eval(&block)
  LiveActivity::Definition.register(definition)
end

#publish(verb, data) ⇒ LiveActivity::Activity2

Publishes an activity using an activity name and data

Parameters:

  • verb (String)

    The verb of the activity

  • data (Hash)

    The data to initialize the activity with.

Returns:

  • (LiveActivity::Activity2)

    An Activity instance with data



42
43
44
# File 'lib/live_activity/activity.rb', line 42

def publish(verb, data)
  new.publish({:verb => verb}.merge(data))
end