Class: S41C::Client
Instance Method Summary collapse
-
#disconnect ⇒ Object
Отключиться от сервера.
-
#errors ⇒ Array
Возвращает массив ошибок.
-
#eval(code) ⇒ String
Выполнить на сервере строку.
-
#initialize(host = 'localhost', port = 1421) ⇒ Client
constructor
Создать инстанс клиента.
-
#login(username, password = nil) ⇒ Object
Задать данные для авторизации.
-
#ping ⇒ Object
Проверка соединения с сервером.
-
#request(vars = {}, &block) ⇒ String
Выполнить на сервере блок кода.
-
#shutdown ⇒ Object
Остановить сервер и отключиться от него.
Methods included from Utils
Constructor Details
#initialize(host = 'localhost', port = 1421) ⇒ Client
Создать инстанс клиента
13 14 15 16 17 18 19 20 21 |
# File 'lib/s41c/client.rb', line 13 def initialize(host='localhost', port=1421) require 'net/telnet' require 's41c/parser' @host, @port = host, port @prompt = /^\+OK/n @errors = [] end |
Instance Method Details
#disconnect ⇒ Object
Отключиться от сервера
47 48 49 |
# File 'lib/s41c/client.rb', line 47 def disconnect cmd "disconnect" end |
#errors ⇒ Array
Возвращает массив ошибок
37 38 39 |
# File 'lib/s41c/client.rb', line 37 def errors @errors end |
#eval(code) ⇒ String
Выполнить на сервере строку
74 75 76 |
# File 'lib/s41c/client.rb', line 74 def eval(code) cmd "eval\0\n#{code}\nend_of_code" end |
#login(username, password = nil) ⇒ Object
Задать данные для авторизации
27 28 29 30 31 32 |
# File 'lib/s41c/client.rb', line 27 def login(username, password = nil) @login = username.nil? || username.empty? ? nil : username @password = password self end |
#ping ⇒ Object
Проверка соединения с сервером
42 43 44 |
# File 'lib/s41c/client.rb', line 42 def ping cmd "ping" end |
#request(vars = {}, &block) ⇒ String
Выполнить на сервере блок кода
62 63 64 65 66 67 |
# File 'lib/s41c/client.rb', line 62 def request(vars = {}, &block) code = S41C::Parser.new(block).parse dump = Marshal.dump({vars: vars, code: code}) self.eval dump end |
#shutdown ⇒ Object
Остановить сервер и отключиться от него
52 53 54 |
# File 'lib/s41c/client.rb', line 52 def shutdown cmd "shutdown" end |