Class: SoarStatus::Status
- Inherits:
-
Object
- Object
- SoarStatus::Status
- Defined in:
- lib/soar_status/status.rb
Constant Summary collapse
- @@detailed_status_providers =
{}
- @@release =
{}
- @@configuration =
{}
- @@environment =
{}
Class Method Summary collapse
- .clear_functional_status_providers ⇒ Object
- .configuration ⇒ Object
- .configuration=(configuration) ⇒ Object
- .detailed_status ⇒ Object
- .environment ⇒ Object
- .environment=(environment) ⇒ Object
- .functional_status ⇒ Object
- .functional_status_providers ⇒ Object
- .register_detailed_status_provider(name, provider) ⇒ Object
- .register_functional_status_provider(provider) ⇒ Object
- .release ⇒ Object
- .release=(release) ⇒ Object
Class Method Details
.clear_functional_status_providers ⇒ Object
47 48 49 |
# File 'lib/soar_status/status.rb', line 47 def self.clear_functional_status_providers @functional_status_providers = [] end |
.configuration ⇒ Object
15 16 17 |
# File 'lib/soar_status/status.rb', line 15 def self.configuration @@configuration end |
.configuration=(configuration) ⇒ Object
11 12 13 |
# File 'lib/soar_status/status.rb', line 11 def self.configuration=(configuration) @@configuration = configuration end |
.detailed_status ⇒ Object
57 58 59 60 61 62 63 64 65 |
# File 'lib/soar_status/status.rb', line 57 def self.detailed_status { 'release' => @@release, 'configuration' => @@configuration, 'environment' => @@environment, 'functional' => self.functional_status, 'detail' => self.aggregate_detailed_statuses } end |
.environment ⇒ Object
23 24 25 |
# File 'lib/soar_status/status.rb', line 23 def self.environment @@environment end |
.environment=(environment) ⇒ Object
19 20 21 |
# File 'lib/soar_status/status.rb', line 19 def self.environment=(environment) @@environment = environment end |
.functional_status ⇒ Object
51 52 53 54 55 |
# File 'lib/soar_status/status.rb', line 51 def self.functional_status return 'no registered functional status provider' if @functional_status_providers.empty? return '0' if @functional_status_providers.any? { |provider| provider.functional_status != '100' } '100' end |
.functional_status_providers ⇒ Object
43 44 45 |
# File 'lib/soar_status/status.rb', line 43 def self.functional_status_providers @functional_status_providers end |
.register_detailed_status_provider(name, provider) ⇒ Object
35 36 37 |
# File 'lib/soar_status/status.rb', line 35 def self.register_detailed_status_provider(name,provider) @@detailed_status_providers[name] = provider end |
.register_functional_status_provider(provider) ⇒ Object
39 40 41 |
# File 'lib/soar_status/status.rb', line 39 def self.register_functional_status_provider(provider) @functional_status_providers << provider unless @functional_status_providers.any? {|p| p.class == provider.class } end |
.release ⇒ Object
31 32 33 |
# File 'lib/soar_status/status.rb', line 31 def self.release @@release end |
.release=(release) ⇒ Object
27 28 29 |
# File 'lib/soar_status/status.rb', line 27 def self.release=(release) @@release = release end |