         
         self.httpRequest = request
         
-        let task : URLSessionDataTask = self.httpSession.session.dataTask(with: self.httpRequest, completionHandler: {(data: Data?, response: URLResponse?, error: NSError?) -> Void in
+        let task : URLSessionDataTask = self.httpSession.session.dataTask(with: self.httpRequest, completionHandler: {(data: Data?, response: URLResponse?, error: Error?) -> Void in
             
             var dataResp: Data? = data
             let httpResponse: HTTPURLResponse = response as! HTTPURLResponse

                    errorCallBack(requestResponseError, httpResponse)
                }
            }
        } as! (Data?, URLResponse?, Error?) -> Void)
        
        task.resume()
    }

            
            if let errorCallBack = errorBlock {
                
                if error != nil { // How should this Error be NSError?
                    
                    let nserror = NSError(domain: "Theo Request", code: 1, userInfo: nil)
                    errorCallBack(nserror, httpResponse)
                    return
                }
                
