• 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 FileAccessExtensionInfo..OHOS.FileAccessFwk.Result;
17sequenceable FileAccessExtensionInfo..OHOS.FileAccessFwk.FileInfo;
18sequenceable FileFilter..OHOS.FileAccessFwk.FileFilter;
19sequenceable FileInfoSharedMemory..OHOS.FileAccessFwk.SharedMemoryInfo;
20sequenceable FileAccessExtensionInfo..OHOS.FileAccessFwk.RootInfo;
21sequenceable UriExt..OHOS.FileAccessFwk.Urie;
22interface OHOS.FileAccessFwk.IFileAccessExtBase {
23    [ipccode 1] void OpenFile([in] Urie uri, [in] int flags, [out] FileDescriptor fd);
24    [ipccode 2] void CreateFile([in] Urie parent, [in] String displayName, [out] Urie newFile);
25    [ipccode 3] void Mkdir([in] Urie parent, [in] String displayName, [out] Urie newFile);
26    [ipccode 4] void Delete([in] Urie sourceFile);
27    [ipccode 5] void Move([in] Urie sourceFile, [in] Urie targetParent, [out] Urie newFile);
28    [ipccode 6] void Copy([in] Urie sourceUri, [in] Urie destUri, [out] Result[] copyResult,
29        [out] int retCode, [in] boolean force);
30    [ipccode 17] void CopyFile([in] Urie sourceUri, [in] Urie destUri, [in] String fileName,
31        [out] Urie newFileUri);
32    [ipccode 7] void Rename([in] Urie sourceFile, [in] String displayName, [out] Urie newFile);
33    [ipccode 8] void ListFile([in] FileInfo fileInfo, [in] long offset, [in] FileFilter filter,
34        [inout] SharedMemoryInfo meminfo);
35    [ipccode 9] void ScanFile([in] FileInfo fileInfo, [in] long offset, [in] long maxCount,
36        [in] FileFilter filter, [out] FileInfo[] fileInfoVec);
37    [ipccode 12] void Query([in] Urie uri, [in] List<String> columns, [out] List<String> results);
38    [ipccode 15] void GetFileInfoFromUri([in] Urie selectFile, [out] FileInfo fileInfo);
39    [ipccode 16] void GetFileInfoFromRelativePath([in] String selectFile, [out] FileInfo fileInfo);
40    [ipccode 13] void GetRoots([out] List<RootInfo> rootInfoVec);
41    [ipccode 14] void Access([in] Urie uri, [out] boolean isExist);
42    [ipccode 10] void StartWatcher([in] Urie uri);
43    [ipccode 11] void StopWatcher([in] Urie uri);
44    [ipccode 18] void MoveItem([in] Urie sourceFile, [in] Urie targetParent, [out] Result[] moveResult,
45        [out] int retCode, [in] boolean force);
46    [ipccode 19] void MoveFile([in] Urie sourceFile, [in] Urie targetParent, [in] String fileName, [out] Urie newFile);
47}
48