use pattern matching, thanks @NachoSoto
This commit is contained in:
parent
bb26ae8637
commit
ccad13a1ed
@ -60,41 +60,41 @@ public enum SocketIOClientOption: ClientOption {
|
|||||||
}
|
}
|
||||||
|
|
||||||
static func keyValueToSocketIOClientOption(key: String, value: AnyObject) -> SocketIOClientOption? {
|
static func keyValueToSocketIOClientOption(key: String, value: AnyObject) -> SocketIOClientOption? {
|
||||||
switch key {
|
switch (key, value) {
|
||||||
case "connectParams" where value is [String: AnyObject]:
|
case ("connectParams", let params as [String: AnyObject]):
|
||||||
return .ConnectParams(value as! [String: AnyObject])
|
return .ConnectParams(params)
|
||||||
case "reconnects" where value is Bool:
|
case ("reconnects", let reconnects as Bool):
|
||||||
return .Reconnects(value as! Bool)
|
return .Reconnects(reconnects)
|
||||||
case "reconnectAttempts" where value is Int:
|
case ("reconnectAttempts", let attempts as Int):
|
||||||
return .ReconnectAttempts(value as! Int)
|
return .ReconnectAttempts(attempts)
|
||||||
case "reconnectWait" where value is Int:
|
case ("reconnectWait", let wait as Int):
|
||||||
return .ReconnectWait(value as! Int)
|
return .ReconnectWait(wait)
|
||||||
case "forceNew" where value is Bool:
|
case ("forceNew", let force as Bool):
|
||||||
return .ForceNew(value as! Bool)
|
return .ForceNew(force)
|
||||||
case "forcePolling" where value is Bool:
|
case ("forcePolling", let force as Bool):
|
||||||
return .ForcePolling(value as! Bool)
|
return .ForcePolling(force)
|
||||||
case "forceWebsockets" where value is Bool:
|
case ("forceWebsockets", let force as Bool):
|
||||||
return .ForceWebsockets(value as! Bool)
|
return .ForceWebsockets(force)
|
||||||
case "nsp" where value is String:
|
case ("nsp", let nsp as String):
|
||||||
return .Nsp(value as! String)
|
return .Nsp(nsp)
|
||||||
case "cookies" where value is [NSHTTPCookie]:
|
case ("cookies", let cookies as [NSHTTPCookie]):
|
||||||
return .Cookies(value as! [NSHTTPCookie])
|
return .Cookies(cookies)
|
||||||
case "log" where value is Bool:
|
case ("log", let log as Bool):
|
||||||
return .Log(value as! Bool)
|
return .Log(log)
|
||||||
case "logger" where value is SocketLogger:
|
case ("logger", let logger as SocketLogger):
|
||||||
return .Logger(value as! SocketLogger)
|
return .Logger(logger)
|
||||||
case "sessionDelegate" where value is NSURLSessionDelegate:
|
case ("sessionDelegate", let delegate as NSURLSessionDelegate):
|
||||||
return .SessionDelegate(value as! NSURLSessionDelegate)
|
return .SessionDelegate(delegate)
|
||||||
case "path" where value is String:
|
case ("path", let path as String):
|
||||||
return .Path(value as! String)
|
return .Path(path)
|
||||||
case "extraHeaders" where value is [String: String]:
|
case ("extraHeaders", let headers as [String: String]):
|
||||||
return .ExtraHeaders(value as! [String: String])
|
return .ExtraHeaders(headers)
|
||||||
case "handleQueue" where value is dispatch_queue_t:
|
case ("handleQueue", let queue as dispatch_queue_t):
|
||||||
return .HandleQueue(value as! dispatch_queue_t)
|
return .HandleQueue(queue)
|
||||||
case "voipEnabled" where value is Bool:
|
case ("voipEnabled", let enable as Bool):
|
||||||
return .VoipEnabled(value as! Bool)
|
return .VoipEnabled(enable)
|
||||||
case "secure" where value is Bool:
|
case ("secure", let secure as Bool):
|
||||||
return .Secure(value as! Bool)
|
return .Secure(secure)
|
||||||
default:
|
default:
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user