DataService
protocol DataService : AnyObject, Observable, ServiceProvider
Provides stored data functionality
-
Callback handler type
Declaration
Swift
typealias Completion = (Bool) -> Void -
Beaches
Declaration
Swift
var beaches: [Beach] { get } -
Brands
Declaration
Swift
var brands: [String : String] { get } -
Blocked photos
Declaration
Swift
var blockedPhotos: [Int] { get set } -
Blocked posts
Declaration
Swift
var blockedPosts: [Int] { get set } -
Blocked users
Declaration
Swift
var blockedUsers: [Int] { get set } -
Countries
Declaration
Swift
var countries: [Country] { get } -
Dive sites
Declaration
Swift
var divesites: [DiveSite] { get } -
Dismissed timestamps
Declaration
Swift
var dismissed: Timestamps? { get set } -
Email stash during signup
Declaration
Swift
var email: String { get set } -
If-None-Match cache
Declaration
Swift
var etags: [String : String] { get set } -
Build that last completed the fixUser API
Declaration
Swift
var fixed: String { get set } -
Golf courses
Declaration
Swift
var golfcourses: [GolfCourse] { get } -
Hotels
Declaration
Swift
var hotels: [Hotel] { get } -
Group hotels by brand?
Declaration
Swift
var hotelsGroupBrand: Bool { get set } -
Rankings filter
Declaration
Swift
var lastRankingsQuery: RankingsQuery { get set } -
Locations
Declaration
Swift
var locations: [Location] { get } -
Displayed types
Declaration
Swift
var mapDisplay: ChecklistFlags { get set } -
Get all places
Declaration
Swift
var visibles: [Mappable] { get } -
Notified timestamps
Declaration
Swift
var notified: Timestamps? { get set } -
Restaurants
Declaration
Swift
var restaurants: [Restaurant] { get } -
Login token
Declaration
Swift
var token: String { get set } -
Triggered timestamps
Declaration
Swift
var triggered: Timestamps? { get set } -
UN Countries
Declaration
Swift
var uncountries: [UNCountry] { get } -
Updated timestamps
Declaration
Swift
var updated: Timestamps? { get set } -
User info
Declaration
Swift
var user: UserJSON? { get set } -
User visits
Declaration
Swift
var visited: Checked? { get set } -
WHSs
Declaration
Swift
var whss: [WHS] { get } -
World map
Declaration
Swift
var worldMap: WorldMap { get } -
Block a photo
Declaration
Swift
func block(photo id: Int)Parameters
idPhoto ID
-
Block a post
Declaration
Swift
func block(post id: Int)Parameters
idPost ID
-
Block a user
Declaration
Swift
func block(user id: Int) -> BoolParameters
idUser ID
-
Set user and mark fixed
Parameters
dataAPI results
-
Get country
Declaration
Swift
func get(country id: Int?) -> Country?Parameters
idcountry ID
Return Value
Country if found
-
Get location
Declaration
Swift
func get(location id: Int?) -> Location?Parameters
idlocation ID
Return Value
Location if found
-
Get location photos
Declaration
Swift
func get(locationPhotos id: Int) -> [Photo]Parameters
idlocation ID
Return Value
Photos if found
-
Get location posts
Declaration
Swift
func get(locationPosts id: Int) -> [Post]Parameters
idlocation ID
Return Value
Posts if found
-
Get filtered locations
Parameters
filterFilter
Return Value
Locations if found
-
Get place
Parameters
itemlist and ID
Return Value
Place if found
-
Get visible place
Parameters
itemlist and ID
Return Value
Place if found
-
Get places
Parameters
listChecklist
Return Value
Places in list
-
Get matching places
Parameters
matchingString
Return Value
Places matching
-
Get milestones
Declaration
Swift
func get(milestones list: Checklist) -> Milestones?Parameters
listChecklist
Return Value
Milestones if found
-
Get user photo pages
Declaration
Swift
func getPhotosPages(user id: Int) -> Results<PhotosPageInfo>Parameters
idUser ID
Return Value
Photo pages if found
-
Get photo
Declaration
Swift
func get(photo: Int) -> PhotoParameters
photoID
Return Value
Photo
-
Get post
Declaration
Swift
func get(post: Int) -> Post?Parameters
postID
Return Value
Post if exists
-
Get user posts
Parameters
idUser ID
Return Value
Posts if found
-
Get user photos by location
Parameters
idUser ID
locationLocation
Return Value
Photos if found
-
Get rankings pages
Declaration
Swift
func get(rankings query: RankingsQuery) -> Results<RankingsPageInfo>Parameters
queryFilter query
Return Value
Rankings pages if found
-
Get user scorecard
Parameters
listChecklist
iduserID
Return Value
Scorecard if found
-
Get user
Parameters
idUser ID
Return Value
User if found
-
Get WHS
Declaration
Swift
func get(whs id: Int) -> WHS?Parameters
idWHS ID
Return Value
WHS if found
-
Does WHS have children?
Declaration
Swift
func hasChildren(whs id: Int) -> BoolParameters
idWHS ID
Return Value
Parentage
-
Visited children list
Declaration
Swift
func visitedChildren(whs id: Int) -> [WHS]Parameters
idWHS ID
Return Value
Visited children
-
Set beaches
Declaration
Swift
func set(beaches: [PlaceJSON])Parameters
beachesAPI results
-
Set brands
Declaration
Swift
func set(brands: [BrandJSON])Parameters
brandsAPI results
-
Set countries
Declaration
Swift
func set(countries: [CountryJSON])Parameters
countriesAPI results
-
Set dive sites
Declaration
Swift
func set(divesites: [PlaceJSON])Parameters
divesitesAPI results
-
Set golf courses
Declaration
Swift
func set(golfcourses: [PlaceJSON])Parameters
golfcoursesAPI results
-
Set hotels
Declaration
Swift
func set(hotels: [HotelJSON])Parameters
hotelsAPI results
-
Set places visited state
Declaration
Swift
func set(items: [Checklist.Item], visited: Bool)Parameters
itemsPlaces
visitedVisited state
-
Set locations
Declaration
Swift
func set(locations: [LocationJSON])Parameters
locationsAPI results
-
Set location photos
Declaration
Swift
func set(location id: Int, photos: PhotosInfoJSON)Parameters
idLocation ID
photosAPI results
-
Set location posts
Declaration
Swift
func set(location id: Int, posts: [PostJSON])Parameters
idLocation ID
photosAPI results
-
Set milestones
Declaration
Swift
func set(milestones: SettingsJSON)Parameters
milestonesAPI results
-
Set photo
Declaration
Swift
func set(photo: PhotoReply)Parameters
photoAPI result
-
Set photos page
Declaration
Swift
func set(photos page: Int, user id: Int, info: PhotosPageInfoJSON)Parameters
pageIndex
idUser ID
infoAPI results
-
Set post
Declaration
Swift
func set(post: PostReply)Parameters
postAPI results
-
Set user posts
Declaration
Swift
func set(posts: [PostJSON])Parameters
idLocation ID
postsAPI results
-
Set restaurants
Declaration
Swift
func set(restaurants: [RestaurantJSON])Parameters
restaurantsAPI results
-
Set rankings query
Declaration
Swift
func set(rankings query: RankingsQuery, info: RankingsPageInfoJSON)Parameters
queryQuery
infoAPI results
-
Set scorecard
Declaration
Swift
func set(scorecard: ScorecardWrapperJSON)Parameters
scorecardAPI results
-
Set UN countries
Declaration
Swift
func set(uncountries: [LocationJSON])Parameters
uncountriesAPI results
-
Set user
Parameters
dataAPI results
-
Set WHSs
Declaration
Swift
func set(whss: [WHSJSON])Parameters
whssAPI results
-
Update location features
Declaration
Swift
func set(world map: GeoJSON)Parameters
mapGeoJSON file
-
Delete user photo
Declaration
Swift
func delete(photo photoId: Int)Parameters
photoIdPhoto ID
-
Delete all user photos
Declaration
Swift
func delete(photos userId: Int)Parameters
userIdUser ID
-
Delete user post
Declaration
Swift
func delete(post postId: Int)Parameters
postIdPost ID
-
Delete all user posts
Declaration
Swift
func delete(posts userId: Int)Parameters
userIdUser ID
-
Delete all rankings for checklist
Declaration
Swift
func delete(rankings: Checklist)Parameters
rankingsChecklist
-
Resolve Realm crossthread reference
Parameters
referenceReference
Return Value
Mappable if found
-
Update rankings
Declaration
Swift
func update(rankings: Checklist, then: @escaping Completion)Parameters
rankingsChecklist
thenCompletion
-
Update scorecard
Declaration
Swift
func update(scorecard: Checklist, then: @escaping Completion)Parameters
rankingsChecklist
thenCompletion
-
Update page stamp
Declaration
Swift
func update(stamp: RankingsPageInfo?)Parameters
stampPage
-
isLoggedInExtension methodIs there a logged in user?
Declaration
Swift
var isLoggedIn: Bool { get } -
isVisitsLoadedExtension methodAre visits loaded?
Declaration
Swift
var isVisitsLoaded: Bool { get } -
logOut()Extension methodLog out current user
Declaration
Swift
func logOut() -
statusKeyExtension methodType of change generated
Declaration
Swift
var statusKey: StatusKey { get } -
notificationExtension methodName of change
Declaration
Swift
var notification: Notification.Name { get } -
notify(change:object:)Extension methodNotify change listeners
Declaration
Swift
func notify(change: DataServiceChange, object: Any? = nil)Parameters
changeDataServiceChange
objectAttachment if any
-
observer(of:handler:)Extension methodCreate data change observer
Declaration
Swift
func observer(of change: DataServiceChange, handler: @escaping NotificationHandler) -> ObserverParameters
ofDataServiceChange
handlerHandler
Return Value
Observer
View on GitHub
DataService Protocol Reference