CocoaPods trunk is moving to be read-only. Read more on the blog, there are 19 months to go.

BrickRequest 0.5.0

BrickRequest 0.5.0

TestsTested
LangLanguage SwiftSwift
License MIT
ReleasedLast Release Jul 2016
SPMSupports SPM

Maintained by muukii, muukii0803, muukii.



  • By
  • muukii

BrickRequest

Abstruct Framewrok of Request

Requirements

iOS8.0 +, Swift2.2

What’s Brick?

BrickRequest provides protocol only.

You need implement this protocols. Then API request will be clean.

  • RequestContextType
  • RequestType
  • ResponseType
let request = RequestContextType.create { response in
    // Response process
}

request.resume()
public protocol RequestContextType {

}

extension RequestContextType where Self: ResponseType, Self: RequestType {

    public func create(block: Alamofire.Response<SerializedObject, ResponseError> -> Void) -> Alamofire.Request {

        let request = self.createRequest(method: self.method, URLString: self.URLString, manager: self.manager)
        request.response(responseSerializer: self.responseSerializer, completionHandler: block)
        return request
    }
}

public protocol RequestType {

    var method: Alamofire.Method { get }
    var URLString: String { get }
    var manager: Alamofire.Manager { get }
    func createRequest(method method: Alamofire.Method, URLString: String, manager: Alamofire.Manager) -> Alamofire.Request
}

public protocol ResponseType {

    associatedtype SerializedObject
    associatedtype ResponseError: ErrorType

    var responseSerializer: Alamofire.ResponseSerializer<SerializedObject, ResponseError> { get }
}

Installation

BrickRequest is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod "BrickRequest"

Author

muukii, m@muukii.me

License

BrickRequest is available under the MIT license. See the LICENSE file for more info.