• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (c) 2025 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16sequenceable OHOS.IRemoteObject;
17sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.AssetInfoObj;
18sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.CleanFileInfoObj;
19sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.CleanOptions;
20sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.DentryFileInfoObj;
21sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.OptimizeSpaceOptions;
22sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.SwitchDataObj;
23sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.CloudFileInfo;
24sequenceable cloud_sync_common..OHOS.FileManagement.CloudSync.HistoryVersion;
25option_stub_hooks on;
26
27interface OHOS.FileManagement.CloudSync.ICloudSyncService
28{
29    void UnRegisterCallbackInner([in] String bundleName);
30    void UnRegisterFileSyncCallbackInner([in] String bundleName);
31    void RegisterCallbackInner([in] IRemoteObject remoteObject, [in] String bundleName);
32    void RegisterFileSyncCallbackInner([in] IRemoteObject remoteObject, [in] String bundleName);
33    void StartSyncInner([in] boolean forceFlag, [in] String bundleName);
34    void StartFileSyncInner([in] boolean forceFlag, [in] String bundleName);
35    void TriggerSyncInner([in] String bundleName, [in] int userId);
36    void StopSyncInner([in] String bundleName, [in] boolean forceFlag);
37    void StopFileSyncInner([in] String bundleName, [in] boolean forceFlag);
38    void ResetCursor([in] String bundleName);
39    void ChangeAppSwitch([in] String accoutId, [in] String bundleName, [in] boolean status);
40    void OptimizeStorage([in] OptimizeSpaceOptions optimizeOptions, [in] boolean isCallbackValid,
41                         [in] IRemoteObject optimizeCallback);
42    void StopOptimizeStorage();
43    void Clean([in] String accountId, [in] CleanOptions cleanOptions);
44    void NotifyDataChange([in] String accoutId, [in] String bundleName);
45    void NotifyEventChange([in] int userId, [in] String eventId, [in] String extraData);
46    void EnableCloud([in] String accoutId, [in] SwitchDataObj switchData);
47    void DisableCloud([in] String accoutId);
48    void StartDownloadFile([in] String uri, [in] IRemoteObject downloadCallback, [out] long downloadId);
49    void StartFileCache([in] String[] uriVec, [out] long downloadId, [in] int fieldkey,
50                        [in] IRemoteObject downloadCallback, [in] int timeout);
51    void StopDownloadFile([in] long downloadId, [in] boolean needClean);
52    void StopFileCache([in] long downloadId, [in] boolean needClean, [in] int timeout);
53    void DownloadThumb();
54    void UploadAsset([in] int userId, [in] String request, [out] String resultStr);
55    void DownloadFile([in] int userId, [in] String bundleName, [in] AssetInfoObj assetInfoObj);
56    void DownloadFiles([in] int userId, [in] String bundleName, [in] AssetInfoObj[] assetInfoObj,
57                       [out] boolean[] assetResultMap, [in] int connectTime);
58    void DownloadAsset([in] unsigned long taskId, [in] int userId, [in] String bundleName, [in] String networkId,
59                       [in] AssetInfoObj assetInfoObj);
60    void RegisterDownloadAssetCallback([in] IRemoteObject remoteObject);
61    void DeleteAsset([in] int userId, [in] String uri);
62    void GetSyncTimeInner([out] long syncTime, [in] String bundleName);
63    void CleanCacheInner([in] String uri);
64    void CleanFileCacheInner([in] String uri);
65    void BatchCleanFile([in] CleanFileInfoObj[] fileInfo, [out] String[] failCloudId);
66    void BatchDentryFileInsert([in] DentryFileInfoObj[] fileInfo, [out] String[] failCloudId);
67    void StartDowngrade([in] String bundleName, [in] IRemoteObject downloadCallback);
68    void StopDowngrade([in] String bundleName);
69    void GetCloudFileInfo([in] String bundleName, [out] CloudFileInfo cloudFileInfo);
70    // file version
71    void GetHistoryVersionList([in] String uri, [in] int versionNumLimit,
72                               [out] HistoryVersion[] historyVersionList);
73    void DownloadHistoryVersion([in] String uri, [out] long downloadId, [in] unsigned long versionId,
74                                [in] IRemoteObject downloadCallback,
75                                [out]String versionUri);
76    void ReplaceFileWithHistoryVersion([in] String uri, [in] String versionUri);
77    void IsFileConflict([in] String uri, [out] boolean isConflict);
78    void ClearFileConflict([in] String uri);
79}