Class: Celluloid::IO::TCPServer
- Extended by:
- Forwardable
- Defined in:
- lib/celluloid/io/tcp_server.rb
Overview
TCPServer with combined blocking and evented support
Constant Summary
Constants inherited from Socket
Class Method Summary collapse
-
.from_ruby_server(ruby_server) ⇒ Object
deprecated
Deprecated.
Use .new instead.
Instance Method Summary collapse
- #accept ⇒ TCPSocket
- #accept_nonblock ⇒ TCPSocket
-
#initialize(*args) ⇒ TCPServer
constructor
A new instance of TCPServer.
Methods inherited from Socket
Constructor Details
#initialize(port) ⇒ TCPServer #initialize(hostname, port) ⇒ TCPServer #initialize(socket) ⇒ TCPServer
Returns a new instance of TCPServer.
22 23 24 25 26 27 28 29 30 31 32 |
# File 'lib/celluloid/io/tcp_server.rb', line 22 def initialize(*args) if args.first.kind_of? ::BasicSocket # socket socket = args.first fail ArgumentError, "wrong number of arguments (#{args.size} for 1)" if args.size != 1 fail ArgumentError, "wrong kind of socket (#{socket.class} for TCPServer)" unless socket.kind_of? ::TCPServer super(socket) else super(::TCPServer.new(*args)) end end |
Class Method Details
.from_ruby_server(ruby_server) ⇒ Object
Deprecated.
Use .new instead.
Convert a Ruby TCPServer into a Celluloid::IO::TCPServer
47 48 49 50 51 |
# File 'lib/celluloid/io/tcp_server.rb', line 47 def self.from_ruby_server(ruby_server) warn "#from_ruby_server is deprecated please use .new instead" self.new(ruby_server) end |
Instance Method Details
#accept ⇒ TCPSocket
35 36 37 38 |
# File 'lib/celluloid/io/tcp_server.rb', line 35 def accept Celluloid::IO.wait_readable(to_io) accept_nonblock end |