AFHTTPSessionManager 子类单例,配置在 Swift

AFHTTPSessionManager Subclass Singleton with Configuration in Swift

我正在尝试使用 Swift 创建 AFHTTPSessionManager 的子类。根据文档,建议为子类创建一个单例实例。我了解如何在 Swift 中创建单例,但我需要能够使用基础 URL.

初始化我的单例
class ZRUserAuthenticationHTTPSessionManager: AFHTTPSessionManager {
  class var sharedManager: ZRUserAuthenticationHTTPSessionManager {

    struct StaticManager {
      static var instance: ZRUserAuthenticationHTTPSessionManager? = nil
      static var onceToken: dispatch_once_t = 0
    }

    if (StaticManager.instance == nil) {
      dispatch_once(&StaticManager.onceToken) {
        StaticManager.instance = ZRUserAuthenticationHTTPSessionManager(baseURL: myURL)
      }
    }

    return StaticManager.instance!
  }
}

如何允许使用可配置参数初始化我的单例实例?

谢谢

我已经知道怎么做了。

public class func createSharedManager(baseURL: NSURL!) -> ZRUserAuthenticationHTTPSessionManager {
  StaticManager.instance = ZRUserAuthenticationHTTPSessionManager(baseURL: baseURL)

  return StaticManager.instance!
}

public class var sharedManager: ZRUserAuthenticationHTTPSessionManager? {
  return StaticManager.instance
}

private struct StaticManager {
 static var instance: ZRUserAuthenticationHTTPSessionManager? = nil
}