Module: Yaps::Publisher::ClassMethods

Defined in:
lib/yaps/publisher.rb

Instance Method Summary collapse

Instance Method Details

#available_optionsObject



40
41
42
# File 'lib/yaps/publisher.rb', line 40

def available_options
  [:only, :except].freeze
end

#include_default_actions(options) ⇒ Object



20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
# File 'lib/yaps/publisher.rb', line 20

def include_default_actions(options)
  defaults = {
    create:  Creation,
    destroy: Destruction,
    update:  Updation
  }

  modules = if options[:except]
    defaults.except(*options[:except])
  elsif options[:only]
    defaults.slice(*options[:only])
  else
    defaults
  end

  modules.each do |key, value|
    include value
  end
end

#published(opts = {}) ⇒ Object



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

def published(opts = {})
  options = opts.clone
  include_default_actions(options)
  nil
end