Class: Ghaki::Registry::Service
- Inherits:
-
Object
- Object
- Ghaki::Registry::Service
- Defined in:
- lib/ghaki/registry/service.rb
Instance Attribute Summary collapse
-
#failure ⇒ Object
Returns the value of attribute failure.
-
#feature ⇒ Object
Returns the value of attribute feature.
-
#klass ⇒ Object
Returns the value of attribute klass.
-
#name ⇒ Object
Returns the value of attribute name.
Instance Method Summary collapse
- #assert_can_create! ⇒ Object
- #assert_enabled! ⇒ Object
- #assert_not_failed! ⇒ Object
- #create(*args) ⇒ Object
- #disable(val = true) ⇒ Object
- #enable(val = true) ⇒ Object
- #enabled? ⇒ Boolean
- #failed? ⇒ Boolean
-
#initialize(_feature, _name, _klass) ⇒ Service
constructor
A new instance of Service.
- #to_s ⇒ Object
Constructor Details
#initialize(_feature, _name, _klass) ⇒ Service
Returns a new instance of Service.
12 13 14 15 16 17 18 |
# File 'lib/ghaki/registry/service.rb', line 12 def initialize _feature, _name, _klass @feature = _feature @name = _name @klass = _klass @enabled = true @failure = nil end |
Instance Attribute Details
#failure ⇒ Object
Returns the value of attribute failure.
9 10 11 |
# File 'lib/ghaki/registry/service.rb', line 9 def failure @failure end |
#feature ⇒ Object
Returns the value of attribute feature.
9 10 11 |
# File 'lib/ghaki/registry/service.rb', line 9 def feature @feature end |
#klass ⇒ Object
Returns the value of attribute klass.
9 10 11 |
# File 'lib/ghaki/registry/service.rb', line 9 def klass @klass end |
#name ⇒ Object
Returns the value of attribute name.
9 10 11 |
# File 'lib/ghaki/registry/service.rb', line 9 def name @name end |
Instance Method Details
#assert_can_create! ⇒ Object
46 47 48 49 |
# File 'lib/ghaki/registry/service.rb', line 46 def assert_can_create! assert_not_failed! assert_enabled! end |
#assert_enabled! ⇒ Object
33 34 35 |
# File 'lib/ghaki/registry/service.rb', line 33 def assert_enabled! raise PluginDisabledError.new( @feature, @name ) unless enabled? end |
#assert_not_failed! ⇒ Object
41 42 43 |
# File 'lib/ghaki/registry/service.rb', line 41 def assert_not_failed! raise @failure if failed? end |
#create(*args) ⇒ Object
50 51 52 53 |
# File 'lib/ghaki/registry/service.rb', line 50 def create *args assert_can_create! return @klass.new( *args ) end |
#disable(val = true) ⇒ Object
30 31 32 |
# File 'lib/ghaki/registry/service.rb', line 30 def disable val=true self.enable !val end |
#enable(val = true) ⇒ Object
27 28 29 |
# File 'lib/ghaki/registry/service.rb', line 27 def enable val=true @enabled = val end |
#enabled? ⇒ Boolean
24 25 26 |
# File 'lib/ghaki/registry/service.rb', line 24 def enabled? @enabled end |
#failed? ⇒ Boolean
38 39 40 |
# File 'lib/ghaki/registry/service.rb', line 38 def failed? !@failure.nil? end |
#to_s ⇒ Object
21 |
# File 'lib/ghaki/registry/service.rb', line 21 def to_s; @name.to_s end |