* SPDX-License-Identifier: MulanPSL-2.0
*/
#ifndef FALCON_METADB_META_HANDLE_H
#define FALCON_METADB_META_HANDLE_H
#include <stdbool.h>
#include "metadb/meta_process_info.h"
#include "remote_connection_utils/serialized_data.h"
#define DEFAULT_SUBPART_NUM 100
extern MemoryManager PgMemoryManager;
typedef enum FalconSupportMetaService {
PLAIN_COMMAND,
MKDIR,
MKDIR_SUB_MKDIR,
MKDIR_SUB_CREATE,
CREATE,
STAT,
OPEN,
CLOSE,
UNLINK,
READDIR,
OPENDIR,
RMDIR,
RMDIR_SUB_RMDIR,
RMDIR_SUB_UNLINK,
RENAME,
RENAME_SUB_RENAME_LOCALLY,
RENAME_SUB_CREATE,
UTIMENS,
CHOWN,
CHMOD,
NOT_SUPPORTED
} FalconSupportMetaService;
void FalconMkdirHandle(MetaProcessInfo *infoArray, int count);
void FalconMkdirSubMkdirHandle(MetaProcessInfo *infoArray, int count);
void FalconMkdirSubCreateHandle(MetaProcessInfo *infoArray, int count);
void FalconCreateHandle(MetaProcessInfo *infoArray, int count, bool updateExisted);
void FalconStatHandle(MetaProcessInfo *infoArray, int count);
void FalconOpenHandle(MetaProcessInfo *infoArray, int count);
void FalconCloseHandle(MetaProcessInfo *infoArray, int count);
void FalconUnlinkHandle(MetaProcessInfo *infoArray, int count);
void FalconReadDirHandle(MetaProcessInfo info);
void FalconOpenDirHandle(MetaProcessInfo info);
void FalconRmdirHandle(MetaProcessInfo info);
void FalconRmdirSubRmdirHandle(MetaProcessInfo info);
void FalconRmdirSubUnlinkHandle(MetaProcessInfo info);
void FalconRenameHandle(MetaProcessInfo info);
void FalconRenameSubRenameLocallyHandle(MetaProcessInfo info);
void FalconRenameSubCreateHandle(MetaProcessInfo info);
void FalconUtimeNsHandle(MetaProcessInfo info);
void FalconChownHandle(MetaProcessInfo info);
void FalconChmodHandle(MetaProcessInfo info);
#endif