7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
|
# File 'lib/em-websocket-client.rb', line 7
def parse(string)
return nil unless string.is_a?(String)
uri = Addressable::URI.parse(string)
scheme = uri.scheme
return nil unless scheme
self.secure = true if scheme.match(/ss\Z/m)
host = uri.host
host = '/' unless host && host != ''
self.host = host
self.port = uri.port.to_s if uri.port
request_uri = uri.path
request_uri = '/' unless request_uri && request_uri != ''
request_uri += "?" + uri.query if uri.query
self.resource_name = request_uri
return self
end
|