Map Doc  1.0
iOS-引擎SDK-开放平台
MBDataStore.h
浏览该文件的文档.
1 //
2 // MBDatastore.h
3 // iNaviCore
4 //
5 // Created by renzc on 2017/8/25.
6 // Copyright © 2017年 Mapbar. All rights reserved.
7 //
8 
9 #import "MBObject.h"
10 
12 
13 typedef NS_ENUM(NSInteger, MBDatastoreErrCode) {
19 };
20 
24 @protocol MBDatastoreDelegate <NSObject>
25  @optional
26 - (void)datastoreRefreshed:(MBDatastore *)ds;
27 - (void)datastoreRefreshCanceled:(MBDatastore *)ds;
28 - (void)datastoreRefreshFailed:(MBDatastore *)ds;
29 
30 - (void)datastoreDataItemQueryFileListSucceeded:(MBDatastore *)ds itemId:(NSString *)itemId andTask:(MBDataUpdateTask *)task;
31 - (void)datastoreDataItemQueryFileListFailed:(MBDatastore *)ds itemId:(NSString *)itemId andErrCode:(MBDatastoreErrCode)code;
32 
33 - (void)datastoreDownloadingDataItemBegan:(MBDatastore *)ds itemId:(NSString *)itemId;
34 - (void)datastoreDownloadingDataItemProgressUpdated:(MBDatastore *)ds itemId:(NSString *)itemId withPercent:(CGFloat)percent;
35 - (void)datastoreDownloadingDataItemCompleted:(MBDatastore *)ds itemId:(NSString *)itemId;
36 - (void)datastoreDownloadingDataItemFailed:(MBDatastore *) ds itemId:(NSString *)itemId withErrCode:(MBDatastoreErrCode)code;
37 
38 - (void)datastoreInstallDataItemBegan:(MBDatastore *)ds itemId:(NSString *)itemId;
39 // 增量更新时的安装进度
40 - (void)datastoreInstallDataItemProgressUpdated:(MBDatastore *) ds itemId:(NSString *)itemId withPercent:(CGFloat)percent;
41 - (void)datastoreInstallDataItemFinished:(MBDatastore *)ds itemId:(NSString *)itemId;
42 - (void)datastoreInstallDataItemFailed:(MBDatastore *)ds itemId:(NSString *)itemId withErrCode:(MBDatastoreErrCode)code;
43 
44 - (void)dataItemStateChanged:(MBDatastore *)ds itemId:(NSString *)itemId;
45 
46 @end
47 
51 @interface MBDatastore : MBObject
52 
53 @property (nonatomic, readonly, copy) NSString *serverUrl;
54 @property (nonatomic, readonly, copy) NSString *localDataPath;
55 @property (nonatomic, readonly, strong) MBDatastoreItem *root;
56 @property (nonatomic, readwrite, weak) id<MBDatastoreDelegate> delegate;
57 
63 - (instancetype)initWithUrl:(NSString*)url localPath:(NSString*)path;
64 - (instancetype)initWithUrl:(NSString*)url;
68 - (void)setNeedsRefresh;
69 - (void)cancelRefreshing;
73 - (NSInteger)currentVersion;
74 - (NSInteger)latestVersion;
75 - (void)setDataVersion:(NSInteger) version;
76 // save datastore local_data.json
77 - (void)saveLocalDataToJson;
81 - (MBDataUpdateTask *)dataUpdateTaskWithId:(NSString *)itemId;
82 - (MBDatastoreItem *)itemWithId:(NSString *)itemId;
83 - (BOOL)createUpdateTaskForItem:(NSString *)itemId;
84 - (BOOL)resumeDataItem:(NSString *)itemId;
85 - (BOOL)pauseDataItem:(NSString *)itemId;
86 // 取消下载的临时文件夹中对应itemId的数据项,并删除
87 - (BOOL)cancelDataItem:(NSString *)itemId;
88 // 删除本地文件夹和临时文件夹对应itemId的数据项
89 - (void)deleteDataItem:(NSString *)itemId;
90 - (void)retryDataItem:(NSString *)itemId;
91 
92 @end
Definition: MBDataUpdateTask.h:28
Definition: MBDataStore.h:14
void setNeedsRefresh()
Definition: MBDataStore.h:17
Definition: MBDatastoreItem.h:20
void cancelRefreshing()
id< MBDatastoreDelegate > delegate
Definition: MBDataStore.h:56
Definition: MBDataStore.h:18
void saveLocalDataToJson()
NSString * serverUrl
Definition: MBDataStore.h:53
NSInteger currentVersion()
Definition: MBDataStore.h:51
Definition: MBDataStore.h:16
MBDatastoreErrCode
Definition: MBDataStore.h:13
NSString * localDataPath
Definition: MBDataStore.h:54
Definition: MBDataStore.h:15
Definition: MBObject.h:16
NSInteger latestVersion()
MBDatastoreItem * root
Definition: MBDataStore.h:55