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