Class: Cisco::SyslogSettings

Inherits:
NodeUtil show all
Defined in:
lib/cisco_node_utils/syslog_settings.rb

Overview

SyslogSettings - node utility class for Syslog Settings configuration management

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from NodeUtil

client, #client, config_get, #config_get, #config_get_default, config_get_default, config_set, #config_set, #get, #ios_xr?, #nexus?, #node, node, platform, #platform, supports?, #supports?

Constructor Details

#initialize(name) ⇒ SyslogSettings

Returns a new instance of SyslogSettings.



27
28
29
30
31
32
33
# File 'lib/cisco_node_utils/syslog_settings.rb', line 27

def initialize(name)
  fail TypeError unless name.is_a?(String)
  fail ArgumentError,
       "This provider only accepts an id of 'default'" \
       unless name.eql?('default')
  @name = name
end

Instance Attribute Details

#nameObject (readonly)

Returns the value of attribute name.



25
26
27
# File 'lib/cisco_node_utils/syslog_settings.rb', line 25

def name
  @name
end

Class Method Details

.syslogsettingsObject



35
36
37
38
39
# File 'lib/cisco_node_utils/syslog_settings.rb', line 35

def self.syslogsettings
  hash = {}
  hash['default'] = SyslogSettings.new('default')
  hash
end

Instance Method Details

#==(other) ⇒ Object



41
42
43
# File 'lib/cisco_node_utils/syslog_settings.rb', line 41

def ==(other)
  name == other.name
end

#consoleObject



49
50
51
52
53
54
55
# File 'lib/cisco_node_utils/syslog_settings.rb', line 49

def console
  console = config_get('syslog_settings', 'console')
  if console.is_a?(Array)
    console = console[0] == 'no' ? 'unset' : console[1]
  end
  console
end

#console=(severity) ⇒ Object



57
58
59
60
61
62
63
64
65
66
67
# File 'lib/cisco_node_utils/syslog_settings.rb', line 57

def console=(severity)
  if severity
    config_set(
      'syslog_settings', 'console',
      state: '', severity: severity)
  else
    config_set(
      'syslog_settings', 'console',
      state: 'no', severity: '')
  end
end

#default_consoleObject



45
46
47
# File 'lib/cisco_node_utils/syslog_settings.rb', line 45

def default_console
  config_get_default('syslog_settings', 'console')
end

#default_monitorObject



69
70
71
# File 'lib/cisco_node_utils/syslog_settings.rb', line 69

def default_monitor
  config_get_default('syslog_settings', 'monitor')
end

#default_source_interfaceObject



93
94
95
# File 'lib/cisco_node_utils/syslog_settings.rb', line 93

def default_source_interface
  config_get_default('syslog_settings', 'source_interface')
end

#monitorObject



73
74
75
76
77
78
79
# File 'lib/cisco_node_utils/syslog_settings.rb', line 73

def monitor
  monitor = config_get('syslog_settings', 'monitor')
  if monitor.is_a?(Array)
    monitor = monitor[0] == 'no' ? 'unset' : monitor[1]
  end
  monitor
end

#monitor=(severity) ⇒ Object



81
82
83
84
85
86
87
88
89
90
91
# File 'lib/cisco_node_utils/syslog_settings.rb', line 81

def monitor=(severity)
  if severity
    config_set(
      'syslog_settings', 'monitor',
      state: '', severity: severity)
  else
    config_set(
      'syslog_settings', 'monitor',
      state: 'no', severity: '')
  end
end

#source_interfaceObject



97
98
99
100
# File 'lib/cisco_node_utils/syslog_settings.rb', line 97

def source_interface
  i = config_get('syslog_settings', 'source_interface')
  i.nil? ? default_source_interface : i.downcase
end

#source_interface=(name) ⇒ Object



102
103
104
105
106
107
108
109
110
111
112
# File 'lib/cisco_node_utils/syslog_settings.rb', line 102

def source_interface=(name)
  if name
    config_set(
      'syslog_settings', 'source_interface',
      state: '', source_interface: name)
  else
    config_set(
      'syslog_settings', 'source_interface',
      state: 'no', source_interface: '')
  end
end

#timestampObject Also known as: time_stamp_units



114
115
116
# File 'lib/cisco_node_utils/syslog_settings.rb', line 114

def timestamp
  config_get('syslog_settings', 'timestamp')
end

#timestamp=(val) ⇒ Object Also known as: time_stamp_units=



118
119
120
121
122
123
124
125
126
127
# File 'lib/cisco_node_utils/syslog_settings.rb', line 118

def timestamp=(val)
  fail TypeError \
    unless %w(seconds milliseconds).include?(val.to_s)

  # There is no unset version as timestamp has a default value
  config_set('syslog_settings',
             'timestamp',
             state: '',
             units: val)
end