Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public protocol RequestInterceptor: class {
- func startRecording()
- func stopRecording()
- }
- public protocol RequestLogger: class {
- func logRequest(urlRequest: URLRequest)
- }
- @objc public class NetworkInterceptor: NSObject {
- @objc public static let shared = NetworkInterceptor()
- let logger: RequestLogger
- let interceptor: RequestInterceptor
- private override init(){
- interceptor = CustomUrlProtocolRequestInterceptor()
- logger = NetworkLogger()
- }
- }
- extension NetworkInterceptor {
- func logRequest(urlRequest: URLRequest){
- logger.logRequest(urlRequest: urlRequest)
- }
- }
- extension NetworkInterceptor: RequestInterceptor {
- @objc public func startRecording(){
- interceptor.startRecording()
- }
- @objc public func stopRecording(){
- interceptor.stopRecording()
- }
- }
Add Comment
Please, Sign In to add comment