Module: Telnet
- Defined in:
- lib/telnet/config.rb,
lib/telnet/server.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_client.rb,
lib/telnet_server.rb,
lib/telnet/version.rb,
lib/telnet/argument_parser.rb,
lib/telnet/instance_methods.rb
Overview
The Telnet module
Defined Under Namespace
Modules: ClientInitializationMethods, ClientInstanceMethods, InstanceMethods, Listenable Classes: ArgumentsParser, Client, ClientChannelInitializer, ConsoleHandler, ModularHandler, Server
Constant Summary collapse
- DEFAULT_PORT =
21- DEFAULT_PROMPT =
'>'.freeze
- CHANNEL_TYPE =
Java::io.netty.channel.socket.nio.NioSocketChannel.java_class
- VERSION =
'1.1.3'.freeze
Class Method Summary collapse
Instance Method Summary collapse
-
#main(args = parse_arguments) ⇒ Object
rubocop: disable Metrics/AbcSize.
-
#parse_arguments(arguments_parser = ::Telnet::ArgumentsParser.new) ⇒ Object
class ArgumentsParser.
Class Method Details
.client_config ⇒ Object
32 33 34 35 36 37 38 39 40 41 42 |
# File 'lib/telnet_client.rb', line 32 def client_config @client_config ||= { host: '0.0.0.0', port: 21, ssl: false, log_level: Logger::INFO, quit_commands: i[bye cease desist exit leave quit stop terminate], max_frame_length: 8192, delimiter: Java::io.netty.handler.codec.Delimiters.nulDelimiter } end |
.server_config ⇒ Object
18 19 20 21 22 23 24 25 |
# File 'lib/telnet/config.rb', line 18 def server_config @server_config ||= ::Server.server_config.merge( { port: DEFAULT_PORT, prompt: DEFAULT_PROMPT } ) end |
Instance Method Details
#main(args = parse_arguments) ⇒ Object
rubocop: disable Metrics/AbcSize
506 507 508 509 510 511 512 513 514 515 516 |
# File 'lib/telnet_client.rb', line 506 def main(args = parse_arguments) Logging.log_level = args[:log_level] ::Telnet::Client.new(options: args, handlers: ::Telnet::ConsoleHandler.new) rescue Interrupt => e warn "\n#{e.class}" exit rescue StandardError => e ::Telnet::Client.log.fatal "Unexpected error: #{e.class}: #{e.message}" e.backtrace.each { |t| log.debug t } if Logging.log_level == Logger::DEBUG exit 1 end |
#parse_arguments(arguments_parser = ::Telnet::ArgumentsParser.new) ⇒ Object
class ArgumentsParser
475 476 477 478 479 480 481 482 483 484 485 486 |
# File 'lib/telnet_client.rb', line 475 def parse_arguments(arguments_parser = ArgumentsParser.new) arguments_parser.parser.parse!(ARGV) arguments_parser.parse_positional_arguments! arguments_parser. rescue OptionParser::InvalidArgument, OptionParser::InvalidOption, OptionParser::MissingArgument, OptionParser::NeedlessArgument => e puts e. puts parser exit rescue OptionParser::AmbiguousOption => e abort e. end |