Module: Promiscuous::Publisher::Class::ClassMethods

Defined in:
lib/promiscuous/publisher/class.rb

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.publish(options) ⇒ Object



16
17
18
19
# File 'lib/promiscuous/publisher/class.rb', line 16

def self.publish(options)
  super
  setup_class_binding
end

Instance Method Details

#inherited(subclass) ⇒ Object



21
22
23
24
# File 'lib/promiscuous/publisher/class.rb', line 21

def inherited(subclass)
  super
  subclass.setup_class_binding unless options[:class]
end

#klassObject



31
32
33
34
# File 'lib/promiscuous/publisher/class.rb', line 31

def klass
  return nil if name.nil?
  "::#{super ? super : guess_class_name('Publishers')}".constantize
end

#klass=(value) ⇒ Object



26
27
28
29
# File 'lib/promiscuous/publisher/class.rb', line 26

def klass=(value)
  super
  setup_class_binding
end

#setup_class_bindingObject



8
9
10
11
12
13
14
# File 'lib/promiscuous/publisher/class.rb', line 8

def setup_class_binding
  publisher_class = self
  klass.class_eval do
    class_attribute :promiscuous_publisher
    self.promiscuous_publisher = publisher_class
  end if klass
end