Sha256: 0e16a6b238d11337131f53f60b60e8b4e7abd11e3653dcdb65e0d172e9100c0b
Contents?: true
Size: 1.13 KB
Versions: 2
Compression:
Stored size: 1.13 KB
Contents
import org.jboss.netty.channel.Channels import org.jboss.netty.channel.ChannelPipelineFactory import org.jboss.netty.handler.ssl.SslHandler require_relative 'security' require_relative 'netty_connection' module Foxbat class Pipeline include ChannelPipelineFactory HANDLER = "handler" SSL_HANDLER = "ssl" def initialize(handler, group, client, options={}, ssl_context=nil, &block) @options = options @handler = handler @client_mode = client if handler.class == Module @handler = Class.new(EM::Connection) @handler.send(:include, handler) end @group = group @block = block @context = ssl_context end def getPipeline pipeline = Channels.pipeline if @context engine = Security.create_ssl_engine(@context, @client_mode) pipeline.addLast(SSL_HANDLER, SslHandler.new(engine)) end h = @handler.new(@options) @block.call(h) if @block connection = NettyConnection.new(h, @group) pipeline.addLast(HANDLER, connection) pipeline end def releaseExternalResources # todo end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
foxbat-0.2.6 | lib/foxbat/pipeline.rb |
foxbat-0.2.5 | lib/foxbat/pipeline.rb |