1 /*
2  * Copyright (c) 2020 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 
16 #ifndef JS_NATIVE_API_CONFIG_H
17 #define JS_NATIVE_API_CONFIG_H
18 
19 #ifdef __cplusplus
20 #if __cplusplus
21 extern "C" {
22 #endif
23 #endif /* __cplusplus */
24 
25 #define FILE_NAME_MAX_LEN 300
26 #define URI_NAME_MAX_LEN 128
27 #define TEXT_MAX_READ_LEN 4096
28 #define DIR_LEVEL 5
29 #define ERROR_CODE "code"
30 #define TEXT "text"
31 #define FILE_URI "uri"
32 #define FILE_SOURCE_URI "srcUri"
33 #define FILE_DESTINATION_URI "dstUri"
34 #define FILE_LENGTH "length"
35 #define FILE_LAST_MODIFIED_TIME "lastModifiedTime"
36 #define FILE_TYPE "type"
37 #define FILE_POSITION "position"
38 #define FILE_APPEND "append"
39 #define FILE_BUFFER "buffer"
40 #define KV_KEY "key"
41 #define KV_VALUE "value"
42 #define DEFAULT "default"
43 #define FILE_PREFIX "internal://app"
44 #define DEFAULT_FOLDER_PATH "kvstore"
45 #define TYPE_FILE "file"
46 #define TYPE_DIR "dir"
47 #define FILE_LIST "fileList"
48 #define RECURSIVE "recursive"
49 #define SUB_FILES "subFiles"
50 #define ERR_NO_FILE "File or directory not exist"
51 #define ERR_IO_EXCEPTION "I/O error"
52 #define ERR_ILLEGAL_PARAM "Invalid parameter"
53 #define ERR_GENERAL "System error"
54 #define ERR_READ_TOO_LONG "The content of the file to be read exceeds 4KB"
55 
56 #define NATIVE_FEATURE_ON 1
57 #define NATIVE_FEATURE_OFF 0
58 
59 enum ErrorCode {
60     NATIVE_SUCCESS = 0,
61     ERROR_FR_NO_FILE = -2,
62     ERROR_DIR_NOT_EMPTY = -39,
63     ERROR_CODE_GENERAL = -200,
64     ERROR_CODE_PARAM = -202,
65     ERROR_CODE_IO = -300,
66     ERROR_CODE_NO_FILE = -301,
67     ERROR_CODE_READ_TOO_LONG = -302
68 };
69 
70 #ifdef __cplusplus
71 #if __cplusplus
72 }
73 #endif
74 #endif /* __cplusplus */
75 
76 #endif /* JS_NATIVE_API_COMMON_H */