0001 // 0002 // ConfigProtocol.swift 0003 // pelias-ios-sdk 0004 // 0005 // Created by Matt on 12/2/15. 0006 // Copyright © 2015 Mapzen. All rights reserved. 0007 // 0008 0009 import Foundation 0010 0011 struct SearchBoundaryRect: Equatable { 0012 let minLatLong
ConfigProtocol.swift:21 func ==(lhs: SearchBoundaryRect, rhs: SearchBoundaryRect) -> Bool {ConfigProtocol.swift:21 func ==(lhs: SearchBoundaryRect, rhs: SearchBoundaryRect) -> Bool {ConfigProtocol.swift:111 var boundaryRect: SearchBoundaryRect? { get set }PeliasSearchConfigObject.swift:51 var boundaryRect: SearchBoundaryRect? {: GeoPoint 0013 let maxLatLong
ConfigProtocol.swift:16 self.minLatLong = minLatLongConfigProtocol.swift:22 return ((lhs.minLatLong == rhs.minLatLong) && (lhs.maxLatLong == rhs.maxLatLong))ConfigProtocol.swift:22 return ((lhs.minLatLong == rhs.minLatLong) && (lhs.maxLatLong == rhs.maxLatLong))PeliasSearchConfigObject.swift:54 appendQueryItem("boundary.rect.min_lat", value: String(rect.minLatLong.latitude))PeliasSearchConfigObject.swift:55 appendQueryItem("boundary.rect.min_lon", value: String(rect.minLatLong.longitude)): GeoPoint 0014 0015 init(minLatLong: GeoPoint, maxLatLong: GeoPoint) { 0016 self.minLatLong = minLatLong 0017 self.maxLatLong = maxLatLong 0018 } 0019 } 0020 0021 func ==(lhs: SearchBoundaryRect, rhs: SearchBoundaryRect) -> Bool { 0022 return ((lhs.minLatLong == rhs.minLatLong) && (lhs.maxLatLong == rhs.maxLatLong)) 0023 } 0024 0025 struct SearchBoundaryCircle
ConfigProtocol.swift:17 self.maxLatLong = maxLatLongConfigProtocol.swift:22 return ((lhs.minLatLong == rhs.minLatLong) && (lhs.maxLatLong == rhs.maxLatLong))ConfigProtocol.swift:22 return ((lhs.minLatLong == rhs.minLatLong) && (lhs.maxLatLong == rhs.maxLatLong))PeliasSearchConfigObject.swift:56 appendQueryItem("boundary.rect.max_lat", value: String(rect.maxLatLong.latitude))PeliasSearchConfigObject.swift:57 appendQueryItem("boundary.rect.max_lon", value: String(rect.maxLatLong.longitude)): Equatable { 0026 let center
ConfigProtocol.swift:35 func ==(lhs: SearchBoundaryCircle, rhs: SearchBoundaryCircle) -> Bool {ConfigProtocol.swift:35 func ==(lhs: SearchBoundaryCircle, rhs: SearchBoundaryCircle) -> Bool {ConfigProtocol.swift:112 var boundaryCircle: SearchBoundaryCircle? { get set }PeliasSearchConfigObject.swift:62 var boundaryCircle: SearchBoundaryCircle? {: GeoPoint 0027 let radius
ConfigProtocol.swift:30 self.center = centerConfigProtocol.swift:36 return (lhs.radius == rhs.radius && lhs.center == rhs.center)ConfigProtocol.swift:36 return (lhs.radius == rhs.radius && lhs.center == rhs.center)PeliasSearchConfigObject.swift:65 appendQueryItem("boundary.cirle.lat", value: String(circle.center.latitude))PeliasSearchConfigObject.swift:66 appendQueryItem("boundary.circle.lon", value: String(circle.center.longitude)): Double 0028 0029 init(center: GeoPoint, radius: Double) { 0030 self.center = center 0031 self.radius = radius 0032 } 0033 } 0034 0035 func ==(lhs: SearchBoundaryCircle, rhs: SearchBoundaryCircle) -> Bool { 0036 return (lhs.radius == rhs.radius && lhs.center == rhs.center) 0037 } 0038 0039 struct GeoPoint
ConfigProtocol.swift:31 self.radius = radiusConfigProtocol.swift:36 return (lhs.radius == rhs.radius && lhs.center == rhs.center)ConfigProtocol.swift:36 return (lhs.radius == rhs.radius && lhs.center == rhs.center)PeliasSearchConfigObject.swift:67 appendQueryItem("boundary.circle.radius", value: String(circle.radius)): Equatable { 0040 let latitude
ConfigProtocol.swift:12 let minLatLong: GeoPointConfigProtocol.swift:13 let maxLatLong: GeoPointConfigProtocol.swift:15 init(minLatLong: GeoPoint, maxLatLong: GeoPoint) {ConfigProtocol.swift:15 init(minLatLong: GeoPoint, maxLatLong: GeoPoint) {ConfigProtocol.swift:26 let center: GeoPointConfigProtocol.swift:29 init(center: GeoPoint, radius: Double) {ConfigProtocol.swift:49 func ==(lhs: GeoPoint, rhs: GeoPoint) -> Bool {ConfigProtocol.swift:49 func ==(lhs: GeoPoint, rhs: GeoPoint) -> Bool {ConfigProtocol.swift:103 var focusPoint: GeoPoint { get set }ConfigProtocol.swift:108 var focusPoint: GeoPoint? { get set }ConfigProtocol.swift:118 var point: GeoPoint { get set }PeliasAutocompleteConfig.swift:13 var focusPoint: GeoPoint {PeliasAutocompleteConfig.swift:39 init(searchText: String, focusPoint: GeoPoint, completionHandler: (PeliasResponse) -> Void){PeliasReverseGeoConfig.swift:26 var point: GeoPoint {PeliasReverseGeoConfig.swift:66 init(point: GeoPoint, completionHandler: (PeliasResponse) -> Void){PeliasSearchConfigObject.swift:72 var focusPoint: GeoPoint? {: Double 0041 let longitude
ConfigProtocol.swift:44 self.latitude = latitudeConfigProtocol.swift:50 return ((lhs.longitude == rhs.longitude) && (lhs.latitude == rhs.latitude))ConfigProtocol.swift:50 return ((lhs.longitude == rhs.longitude) && (lhs.latitude == rhs.latitude))PeliasAutocompleteConfig.swift:15 appendQueryItem("focus.point.lat", value: String(focusPoint.latitude))PeliasAutocompleteConfig.swift:48 appendQueryItem("focus.point.lat", value: String(focusPoint.latitude))PeliasReverseGeoConfig.swift:28 appendQueryItem("point.lat", value: String(point.latitude))PeliasReverseGeoConfig.swift:72 appendQueryItem("point.lat", value: String(point.latitude))PeliasSearchConfigObject.swift:54 appendQueryItem("boundary.rect.min_lat", value: String(rect.minLatLong.latitude))PeliasSearchConfigObject.swift:56 appendQueryItem("boundary.rect.max_lat", value: String(rect.maxLatLong.latitude))PeliasSearchConfigObject.swift:65 appendQueryItem("boundary.cirle.lat", value: String(circle.center.latitude))PeliasSearchConfigObject.swift:75 appendQueryItem("focus.point.lat", value: String(point.latitude)): Double 0042 0043 init(latitude: Double, longitude: Double) { 0044 self.latitude = latitude 0045 self.longitude = longitude 0046 } 0047 } 0048 0049 func ==(lhs: GeoPoint, rhs: GeoPoint) -> Bool { 0050 return ((lhs.longitude == rhs.longitude) && (lhs.latitude == rhs.latitude)) 0051 } 0052 0053 enum SearchSource
ConfigProtocol.swift:45 self.longitude = longitudeConfigProtocol.swift:50 return ((lhs.longitude == rhs.longitude) && (lhs.latitude == rhs.latitude))ConfigProtocol.swift:50 return ((lhs.longitude == rhs.longitude) && (lhs.latitude == rhs.latitude))PeliasAutocompleteConfig.swift:16 appendQueryItem("focus.point.lon", value: String(focusPoint.longitude))PeliasAutocompleteConfig.swift:49 appendQueryItem("focus.point.lon", value: String(focusPoint.longitude))PeliasReverseGeoConfig.swift:29 appendQueryItem("point.lon", value: String(point.longitude))PeliasReverseGeoConfig.swift:73 appendQueryItem("point.lon", value: String(point.longitude))PeliasSearchConfigObject.swift:55 appendQueryItem("boundary.rect.min_lon", value: String(rect.minLatLong.longitude))PeliasSearchConfigObject.swift:57 appendQueryItem("boundary.rect.max_lon", value: String(rect.maxLatLong.longitude))PeliasSearchConfigObject.swift:66 appendQueryItem("boundary.circle.lon", value: String(circle.center.longitude))PeliasSearchConfigObject.swift:76 appendQueryItem("focus.point.lon", value: String(point.longitude)): String { 0054 case OpenStreetMap = "osm" 0055 case OpenAddresses = "oa" 0056 case Quattroshapes = "qs" 0057 case GeoNames = "gn" 0058 0059 static func dataSourceString
ConfigProtocol.swift:59 static func dataSourceString(sourceList: [SearchSource]) -> String {ConfigProtocol.swift:113 var dataSources: [SearchSource]? { get set }ConfigProtocol.swift:120 var dataSources: [SearchSource]? { get set }ConfigProtocol.swift:131 var dataSource: SearchSource { get set }PeliasPlaceConfig.swift:63 var dataSource: SearchSourcePeliasPlaceConfig.swift:66 init(placeId: String, dataSource: SearchSource, layer: LayerFilter) {PeliasReverseGeoConfig.swift:54 appendQueryItem("sources", value: SearchSource.dataSourceString(sources))PeliasReverseGeoConfig.swift:51 var dataSources: [SearchSource]? {PeliasSearchConfigObject.swift:84 appendQueryItem("sources", value: SearchSource.dataSourceString(sources))PeliasSearchConfigObject.swift:81 var dataSources: [SearchSource]? {(sourceList: [SearchSource]) -> String { 0060 return sourceList.map{$0.rawValue}.joinWithSeparator(",") 0061 } 0062 } 0063 0064 enum LayerFilter
PeliasReverseGeoConfig.swift:54 appendQueryItem("sources", value: SearchSource.dataSourceString(sources))PeliasSearchConfigObject.swift:84 appendQueryItem("sources", value: SearchSource.dataSourceString(sources)): String { 0065 case venue, address, country, region, county, locality, localadmin, neighbourhood, coarse 0066 0067 static func layerString
ConfigProtocol.swift:67 static func layerString(layers: [LayerFilter]) -> String {ConfigProtocol.swift:114 var layers: [LayerFilter]? { get set }ConfigProtocol.swift:122 var layers: [LayerFilter]? { get set }ConfigProtocol.swift:132 var layer: LayerFilter { get set }PeliasPlaceConfig.swift:64 var layer: LayerFilterPeliasPlaceConfig.swift:66 init(placeId: String, dataSource: SearchSource, layer: LayerFilter) {PeliasReverseGeoConfig.swift:62 appendQueryItem("layers", value: LayerFilter.layerString(layerArray))PeliasReverseGeoConfig.swift:59 var layers: [LayerFilter]? {PeliasSearchConfigObject.swift:92 appendQueryItem("layers", value: LayerFilter.layerString(layerArray))PeliasSearchConfigObject.swift:89 var layers: [LayerFilter]? {(layers: [LayerFilter]) -> String { 0068 return layers.map{$0.rawValue}.joinWithSeparator(",") 0069 } 0070 } 0071 0072 protocol APIConfigData
PeliasReverseGeoConfig.swift:62 appendQueryItem("layers", value: LayerFilter.layerString(layerArray))PeliasSearchConfigObject.swift:92 appendQueryItem("layers", value: LayerFilter.layerString(layerArray)){ 0073 var urlEndpoint
ConfigProtocol.swift:82 extension APIConfigData {ConfigProtocol.swift:98 protocol GenericSearchAPIConfigData : APIConfigData {ConfigProtocol.swift:117 protocol ReverseAPIConfigData: APIConfigData {ConfigProtocol.swift:125 protocol PlaceAPIConfigData: APIConfigData {PeliasSearchManager.swift:51 private func executeOperation(config: APIConfigData) -> PeliasOperation {PeliasSearchManager.swift:98 let config: APIConfigDataPeliasSearchManager.swift:100 init(config: APIConfigData) {: NSURL { get } 0074 var apiKey: String? { get } 0075 var queryItems
ConfigProtocol.swift:92 let urlComponents = NSURLComponents(URL: urlEndpoint, resolvingAgainstBaseURL: true): [String:NSURLQueryItem] { get set } 0076 var completionHandler
ConfigProtocol.swift:86 queryItems[name] = queryItem;ConfigProtocol.swift:93 urlComponents?.queryItems = Array(queryItems.values): (PeliasResponse) -> Void { get set } 0077 0078 func searchUrl
PeliasSearchManager.swift:117 self.config.completionHandler(searchResponse)() -> NSURL 0079 mutating func appendQueryItem(name: String, value: String?) 0080 } 0081 0082 extension APIConfigData { 0083 mutating func appendQueryItem
PeliasSearchManager.swift:108 NSURLSession.sharedSession().dataTaskWithURL(config.searchUrl()) { (data: NSData?, response: NSURLResponse?, error: NSError?) -> Void in(name: String, value: String?) { 0084 if let queryValue = value where queryValue.isEmpty == false{ 0085 let queryItem = NSURLQueryItem(name: name, value: queryValue) 0086 queryItems[name] = queryItem; 0087 0088 } 0089 } 0090 0091 func searchUrl() -> NSURL { 0092 let urlComponents = NSURLComponents(URL: urlEndpoint, resolvingAgainstBaseURL: true) 0093 urlComponents?.queryItems = Array(queryItems.values) 0094 return urlComponents!.URL! 0095 } 0096 } 0097 0098 protocol GenericSearchAPIConfigData
PeliasAutocompleteConfig.swift:15 appendQueryItem("focus.point.lat", value: String(focusPoint.latitude))PeliasAutocompleteConfig.swift:16 appendQueryItem("focus.point.lon", value: String(focusPoint.longitude))PeliasAutocompleteConfig.swift:23 appendQueryItem("text", value: searchText)PeliasAutocompleteConfig.swift:30 appendQueryItem("api_key", value: key)PeliasAutocompleteConfig.swift:46 appendQueryItem("text", value: searchText)PeliasAutocompleteConfig.swift:47 appendQueryItem("api_key", value: apiKey)PeliasAutocompleteConfig.swift:48 appendQueryItem("focus.point.lat", value: String(focusPoint.latitude))PeliasAutocompleteConfig.swift:49 appendQueryItem("focus.point.lon", value: String(focusPoint.longitude))PeliasPlaceConfig.swift:20 appendQueryItem("api_key", value: key)PeliasPlaceConfig.swift:38 appendQueryItem("api_key", value: apiKey)PeliasPlaceConfig.swift:57 appendQueryItem("ids", value: queryString)PeliasReverseGeoConfig.swift:17 appendQueryItem("api_key", value: key)PeliasReverseGeoConfig.swift:28 appendQueryItem("point.lat", value: String(point.latitude))PeliasReverseGeoConfig.swift:29 appendQueryItem("point.lon", value: String(point.longitude))PeliasReverseGeoConfig.swift:38 appendQueryItem("size", value: String(size))PeliasReverseGeoConfig.swift:46 appendQueryItem("boundary.country", value: country)PeliasReverseGeoConfig.swift:54 appendQueryItem("sources", value: SearchSource.dataSourceString(sources))PeliasReverseGeoConfig.swift:62 appendQueryItem("layers", value: LayerFilter.layerString(layerArray))PeliasReverseGeoConfig.swift:72 appendQueryItem("point.lat", value: String(point.latitude))PeliasReverseGeoConfig.swift:73 appendQueryItem("point.lon", value: String(point.longitude))PeliasReverseGeoConfig.swift:74 appendQueryItem("api_key", value: apiKey)PeliasSearchConfigObject.swift:17 appendQueryItem("text", value: searchText)PeliasSearchConfigObject.swift:28 appendQueryItem("api_key", value: key)PeliasSearchConfigObject.swift:38 appendQueryItem("size", value: String(size))PeliasSearchConfigObject.swift:46 appendQueryItem("boundary.country", value: country)PeliasSearchConfigObject.swift:54 appendQueryItem("boundary.rect.min_lat", value: String(rect.minLatLong.latitude))PeliasSearchConfigObject.swift:55 appendQueryItem("boundary.rect.min_lon", value: String(rect.minLatLong.longitude))PeliasSearchConfigObject.swift:56 appendQueryItem("boundary.rect.max_lat", value: String(rect.maxLatLong.latitude))PeliasSearchConfigObject.swift:57 appendQueryItem("boundary.rect.max_lon", value: String(rect.maxLatLong.longitude))PeliasSearchConfigObject.swift:65 appendQueryItem("boundary.cirle.lat", value: String(circle.center.latitude))PeliasSearchConfigObject.swift:66 appendQueryItem("boundary.circle.lon", value: String(circle.center.longitude))PeliasSearchConfigObject.swift:67 appendQueryItem("boundary.circle.radius", value: String(circle.radius))PeliasSearchConfigObject.swift:75 appendQueryItem("focus.point.lat", value: String(point.latitude))PeliasSearchConfigObject.swift:76 appendQueryItem("focus.point.lon", value: String(point.longitude))PeliasSearchConfigObject.swift:84 appendQueryItem("sources", value: SearchSource.dataSourceString(sources))PeliasSearchConfigObject.swift:92 appendQueryItem("layers", value: LayerFilter.layerString(layerArray))PeliasSearchConfigObject.swift:103 appendQueryItem("text", value: searchText)PeliasSearchConfigObject.swift:104 appendQueryItem("api_key", value: apiKey): APIConfigData { 0099 var searchText: String { get set } 0100 } 0101 0102 protocol AutocompleteAPIConfigData
ConfigProtocol.swift:102 protocol AutocompleteAPIConfigData: GenericSearchAPIConfigData {ConfigProtocol.swift:106 protocol SearchAPIConfigData : GenericSearchAPIConfigData {: GenericSearchAPIConfigData { 0103 var focusPoint: GeoPoint { get set } 0104 } 0105 0106 protocol SearchAPIConfigData
PeliasAutocompleteConfig.swift:11 public struct PeliasAutocompleteConfig : AutocompleteAPIConfigData {: GenericSearchAPIConfigData { 0107 0108 var focusPoint: GeoPoint? { get set } 0109 var numberOfResults: Int? { get set } 0110 var boundaryCountry: String? { get set } 0111 var boundaryRect: SearchBoundaryRect? { get set } 0112 var boundaryCircle: SearchBoundaryCircle? { get set } 0113 var dataSources: [SearchSource]? { get set } 0114 var layers: [LayerFilter]? { get set } 0115 } 0116 0117 protocol ReverseAPIConfigData
PeliasSearchConfigObject.swift:11 public struct PeliasSearchConfig : SearchAPIConfigData {: APIConfigData { 0118 var point: GeoPoint { get set } 0119 var numberOfResults: Int? { get set } 0120 var dataSources: [SearchSource]? { get set } 0121 var boundaryCountry: String? { get set } 0122 var layers: [LayerFilter]? { get set } 0123 } 0124 0125 protocol PlaceAPIConfigData
PeliasReverseGeoConfig.swift:11 public struct PeliasReverseConfig : ReverseAPIConfigData {: APIConfigData { 0126 var places: [PlaceAPIQueryItem] { get set } 0127 } 0128 0129 protocol PlaceAPIQueryItem
PeliasPlaceConfig.swift:11 public struct PeliasPlaceConfig : PlaceAPIConfigData {{ 0130 var placeId
ConfigProtocol.swift:126 var places: [PlaceAPIQueryItem] { get set }PeliasPlaceConfig.swift:25 var places: [PlaceAPIQueryItem] {PeliasPlaceConfig.swift:31 init(places: [PlaceAPIQueryItem], completionHandler: (PeliasResponse) -> Void){PeliasPlaceConfig.swift:61 public struct PeliasPlaceQueryItem : PlaceAPIQueryItem {: String { get set } 0131 var dataSource
PeliasPlaceConfig.swift:49 let addition = "\(place.dataSource.rawValue):\(place.layer.rawValue):\(place.placeId)": SearchSource { get set } 0132 var layer
PeliasPlaceConfig.swift:49 let addition = "\(place.dataSource.rawValue):\(place.layer.rawValue):\(place.placeId)": LayerFilter { get set } 0133 } 0134 0135 protocol APIResponse
PeliasPlaceConfig.swift:49 let addition = "\(place.dataSource.rawValue):\(place.layer.rawValue):\(place.placeId)"{ 0136 var data: NSData? { get } 0137 var response: NSURLResponse? { get } 0138 var error: NSError? { get } 0139 }
PeliasSearchManager.swift:123 public class PeliasResponse: APIResponse {