Class: SockJS::Examples::ProtocolConformanceTest

Inherits:
Object
  • Object
show all
Defined in:
lib/sockjs/examples/protocol_conformance_test.rb

Defined Under Namespace

Classes: CloseSession, EchoSession, MyHelloWorld

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Constructor Details

#initialize(options = nil) ⇒ ProtocolConformanceTest

Returns a new instance of ProtocolConformanceTest.



33
34
35
# File 'lib/sockjs/examples/protocol_conformance_test.rb', line 33

def initialize(options = nil)
  @options = options || {}
end

Instance Attribute Details

#optionsObject

Returns the value of attribute options.



37
38
39
# File 'lib/sockjs/examples/protocol_conformance_test.rb', line 37

def options
  @options
end

Class Method Details

.build_app(*args) ⇒ Object



29
30
31
# File 'lib/sockjs/examples/protocol_conformance_test.rb', line 29

def self.build_app(*args)
  self.new(*args).to_app
end

Instance Method Details

#to_appObject



53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
# File 'lib/sockjs/examples/protocol_conformance_test.rb', line 53

def to_app
  options = self.options
  ::Rack::Builder.new do
    map '/echo' do
      run ::Rack::SockJS.new(EchoSession, options)
    end

    map '/disabled_websocket_echo' do
      run ::Rack::SockJS.new(EchoSession, options.merge(:websocket => false))
    end

    map '/close' do
      run ::Rack::SockJS.new(CloseSession, options)
    end

    run MyHelloWorld.new
  end.to_app
end