Class: SSHake::BaseSession

Inherits:
Object
  • Object
show all
Defined in:
lib/sshake/base_session.rb

Direct Known Subclasses

Mock::Session, Session

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(*args) ⇒ BaseSession

Returns a new instance of BaseSession.



22
23
24
# File 'lib/sshake/base_session.rb', line 22

def initialize(*args)
  @id = SecureRandom.hex(4)
end

Instance Attribute Details

#idString (readonly)

An ID for this session

Returns:

  • (String)


15
16
17
# File 'lib/sshake/base_session.rb', line 15

def id
  @id
end

#loggerLogger?

A logger for this session

Returns:

  • (Logger, nil)


10
11
12
# File 'lib/sshake/base_session.rb', line 10

def logger
  @logger
end

#raise_on_errorBoolean

Specify the default behaviour for raising erors

Returns:

  • (Boolean)


20
21
22
# File 'lib/sshake/base_session.rb', line 20

def raise_on_error
  @raise_on_error
end

Instance Method Details

#connectvoid

This method returns an undefined value.

Connect to the SSH server



29
30
31
# File 'lib/sshake/base_session.rb', line 29

def connect
  raise "Override #connect in sub-sessions"
end

#connected?Boolean

Is there an established SSH connection

Returns:

  • (Boolean)


36
37
38
# File 'lib/sshake/base_session.rb', line 36

def connected?
  raise "Override #connected? in sub-sessions"
end

#disconnectvoid

This method returns an undefined value.

Disconnect the underlying SSH connection



43
44
45
# File 'lib/sshake/base_session.rb', line 43

def disconnect
  raise "Override #disconnect in sub-sessions"
end

#execute(commands, options = nil, &block) ⇒ Object

Execute a command



54
55
56
# File 'lib/sshake/base_session.rb', line 54

def execute(commands, options = nil, &block)
  raise "Override #execute in sub-sessions"
end

#kill!Object

Kill the underlying connection



48
49
50
# File 'lib/sshake/base_session.rb', line 48

def kill!
  raise "Override #kill! in sub-sessions"
end

#write_data(path, data, options = nil, &block) ⇒ Object



58
59
60
# File 'lib/sshake/base_session.rb', line 58

def write_data(path, data, options = nil, &block)
  raise "Override #write_data in sub-sessions"
end