Class: TivoHMO::Adapters::Settings::ResetDefaultsItem

Inherits:
Object
  • Object
show all
Includes:
GemLogger::LoggerSupport, MonitorMixin, TivoHMO::API::Item
Defined in:
lib/tivohmo/adapters/settings/reset_defaults_item.rb

Overview

An Item for toggling boolean bvalue

Instance Attribute Summary

Attributes included from TivoHMO::API::Item

#file, #subtitle

Attributes included from TivoHMO::API::Node

#app, #children, #content_type, #created_at, #identifier, #modified_at, #parent, #root, #source_format, #title

Instance Method Summary collapse

Methods included from TivoHMO::API::Item

#to_s, #transcoder

Methods included from TivoHMO::API::Node

#add_child, #app?, #find, #root?, #title_path, #to_s, #tree_string

Constructor Details

#initializeResetDefaultsItem

Returns a new instance of ResetDefaultsItem.



14
15
16
17
# File 'lib/tivohmo/adapters/settings/reset_defaults_item.rb', line 14

def initialize()
  super('reset_all')
  self.title = "Reset Defaults"
end

Instance Method Details

#metadataObject



19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
# File 'lib/tivohmo/adapters/settings/reset_defaults_item.rb', line 19

def 
  md = super

  md.description = "All runtime config has now been reset to defaults, hit back to return"

  md.item_detail_callback = Proc.new do
    logger.info("Resetting defaults")
    Config.instance.known_config.each do |key, spec|
      Config.instance.set(key, spec[:default_value])
    end
    parent.children.clear
  end

  md
end