Skip to content

Instantly share code, notes, and snippets.

@diatrevolo
Created March 3, 2016 15:40
Show Gist options
  • Save diatrevolo/7aa6d2d51c9cbf20ab99 to your computer and use it in GitHub Desktop.
Save diatrevolo/7aa6d2d51c9cbf20ab99 to your computer and use it in GitHub Desktop.
import Foundation
import Alamofire
struct MyRESTClient {
let url: NSURL
let manager: Manager
init(url: NSURL, manager: Manager?) {
self.url = url
if let _ = manager {
self.manager = manager!
} else {
self.manager = Manager()
}
}
func getAvailableItems(completion: ((items: [MyItem]?) -> ())) {
self.manager.request(.GET, url.absoluteString + "/items", parameters: nil)
.validate(statusCode: 200..<300)
.validate(contentType: ["application/json"])
.responseJSON { response in
if let JSON = response.result.value as? [String : AnyObject],
items = JSON["items"] as? [String] {
var returnArray = [MyItem]()
for item in items {
returnArray.append(MyItem(name: item))
}
completion(items: returnArray)
} else {
completion(items: nil)
}
}
}
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment