Class: Sensu::Extension::Base

Inherits:
Object
  • Object
show all
Defined in:
lib/sensu/extensions.rb

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeBase

Returns a new instance of Base.



101
102
103
104
105
# File 'lib/sensu/extensions.rb', line 101

def initialize
  EM::next_tick do
    post_init
  end
end

Instance Attribute Details

#loggerObject

Returns the value of attribute logger.



99
100
101
# File 'lib/sensu/extensions.rb', line 99

def logger
  @logger
end

#settingsObject

Returns the value of attribute settings.



99
100
101
# File 'lib/sensu/extensions.rb', line 99

def settings
  @settings
end

Class Method Details

.descendantsObject



150
151
152
153
154
# File 'lib/sensu/extensions.rb', line 150

def self.descendants
  ObjectSpace.each_object(Class).select do |klass|
    klass < self
  end
end

Instance Method Details

#[](key) ⇒ Object



134
135
136
# File 'lib/sensu/extensions.rb', line 134

def [](key)
  definition[key.to_sym]
end

#definitionObject



115
116
117
118
119
120
# File 'lib/sensu/extensions.rb', line 115

def definition
  {
    :type => 'extension',
    :name => name
  }
end

#descriptionObject



111
112
113
# File 'lib/sensu/extensions.rb', line 111

def description
  'extension description (change me)'
end

#has_key?(key) ⇒ Boolean

Returns:

  • (Boolean)


138
139
140
# File 'lib/sensu/extensions.rb', line 138

def has_key?(key)
  definition.has_key?(key.to_sym)
end

#nameObject



107
108
109
# File 'lib/sensu/extensions.rb', line 107

def name
  'base'
end

#post_initObject



122
123
124
# File 'lib/sensu/extensions.rb', line 122

def post_init
  true
end

#run(data = nil, &block) ⇒ Object



126
127
128
# File 'lib/sensu/extensions.rb', line 126

def run(data=nil, &block)
  block.call('noop', 0)
end

#safe_run(data = nil, &block) ⇒ Object



142
143
144
145
146
147
148
# File 'lib/sensu/extensions.rb', line 142

def safe_run(data=nil, &block)
  begin
    data ? run(data.dup, &block) : run(&block)
  rescue => error
    block.call(error.to_s, 2)
  end
end

#stop(&block) ⇒ Object



130
131
132
# File 'lib/sensu/extensions.rb', line 130

def stop(&block)
  block.call
end