Class: Puppet::Util::NetworkDevice::Transport::Telnet

Inherits:
Base
  • Object
show all
Defined in:
lib/vendor/puppet/util/network_device/transport/telnet.rb

Instance Attribute Summary

Attributes inherited from Base

#default_prompt, #host, #password, #port, #timeout, #user

Instance Method Summary collapse

Constructor Details

#initializeTelnet

Returns a new instance of Telnet.



7
8
9
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 7

def initialize
  super
end

Instance Method Details

#closeObject



21
22
23
24
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 21

def close
  @telnet.close if @telnet
  @telnet = nil
end

#command(cmd, options = {}) ⇒ Object



32
33
34
35
36
37
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 32

def command(cmd, options = {})
  send(cmd)
  expect(options[:prompt] || default_prompt) do |output|
    yield output if block_given?
  end
end

#connectObject



15
16
17
18
19
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 15

def connect
  @telnet = Net::Telnet::new("Host" => host, "Port" => port || 23,
                             "Timeout" => 10,
                             "Prompt" => default_prompt)
end

#expect(prompt) ⇒ Object



26
27
28
29
30
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 26

def expect(prompt)
  @telnet.waitfor(prompt) do |out|
    yield out if block_given?
  end
end

#handles_login?Boolean

Returns:

  • (Boolean)


11
12
13
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 11

def handles_login?
  false
end

#send(line) ⇒ Object



39
40
41
# File 'lib/vendor/puppet/util/network_device/transport/telnet.rb', line 39

def send(line)
  @telnet.puts(line)
end