Module: Notifly::Models::Flyable::ClassMethods

Defined in:
lib/notifly/models/flyable.rb

Instance Attribute Summary collapse

Instance Method Summary collapse

Instance Attribute Details

#default_flyObject (readonly)

Returns the value of attribute default_fly.



9
10
11
# File 'lib/notifly/models/flyable.rb', line 9

def default_fly
  @default_fly
end

#fliesObject (readonly)

Returns the value of attribute flies.



9
10
11
# File 'lib/notifly/models/flyable.rb', line 9

def flies
  @flies
end

#flyable_callbacksObject (readonly)

Returns the value of attribute flyable_callbacks.



9
10
11
# File 'lib/notifly/models/flyable.rb', line 9

def flyable_callbacks
  @flyable_callbacks
end

Instance Method Details

#method_added(method_name) ⇒ Object



28
29
30
31
# File 'lib/notifly/models/flyable.rb', line 28

def method_added(method_name)
  _create_callbacks_for method_name
  super
end

#notifly(options = {}) ⇒ Object



11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# File 'lib/notifly/models/flyable.rb', line 11

def notifly(options = {})
  @flies ||= []
  @flyable_callbacks ||= []

  fly = Notifly::Models::Options::Fly.new options

  if options[:default_values]
    @default_fly = fly
  else
    @flies << fly

    if [:create, :save, :update, :destroy].include? fly.method_name
      _create_callback_for_active_record_from fly
    end
  end
end