Class: Cisco::NtpServer
Overview
NtpServer - node utility class for NTP Server configuration management
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(ntpserver_id, prefer, instantiate = true) ⇒ NtpServer
Returns a new instance of NtpServer.
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 25
def initialize(ntpserver_id, prefer, instantiate=true)
@ntpserver_id = ntpserver_id.to_s
@ntpserver_prefer = prefer
unless @ntpserver_id =~ /^[a-zA-Z0-9\.\:]*$/
fail ArgumentError,
'Invalid value (IPv4/IPv6 address contains invalid characters)'
end
begin
IPAddr.new(@ntpserver_id)
rescue
raise ArgumentError,
'Invalid value (Name is not a valid single IPv4/IPv6 address)'
end
unless @ntpserver_prefer == true ||
@ntpserver_prefer == false ||
@ntpserver_prefer.nil?
fail ArgumentError, 'Invalid value(prefer must be true or false)'
end
create if instantiate
end
|
Class Method Details
.ntpservers ⇒ Object
49
50
51
52
53
54
55
56
57
58
59
60
61
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 49
def self.ntpservers
hash = {}
ntpservers_list = config_get('ntp_server', 'server')
return hash if ntpservers_list.empty?
preferred_servers = config_get('ntp_server', 'prefer')
ntpservers_list.each do |id|
hash[id] = NtpServer.new(id, preferred_servers.include?(id), false)
end
hash
end
|
Instance Method Details
#==(other) ⇒ Object
63
64
65
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 63
def ==(other)
name == other.name && prefer == other.prefer
end
|
#create ⇒ Object
67
68
69
70
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 67
def create
config_set('ntp_server', 'server', state: '', ip: @ntpserver_id,
prefer: @ntpserver_prefer ? 'prefer' : '')
end
|
#destroy ⇒ Object
72
73
74
75
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 72
def destroy
config_set('ntp_server', 'server',
state: 'no', ip: @ntpserver_id, prefer: '')
end
|
#name ⇒ Object
77
78
79
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 77
def name
@ntpserver_id
end
|
#prefer ⇒ Object
81
82
83
|
# File 'lib/cisco_node_utils/ntp_server.rb', line 81
def prefer
@ntpserver_prefer
end
|