resp协议定义, xml定义配置文件
This commit is contained in:
52
common/config.h
Normal file
52
common/config.h
Normal file
@@ -0,0 +1,52 @@
|
||||
#ifndef __CONFIG_H__
|
||||
#define __CONFIG_H__
|
||||
|
||||
#include <stddef.h>
|
||||
|
||||
typedef enum {
|
||||
LOG_LEVEL_DEBUG,
|
||||
LOG_LEVEL_INFO,
|
||||
LOG_LEVEL_ERROR
|
||||
} LogLevel;
|
||||
|
||||
typedef enum {
|
||||
MODE_MASTER,
|
||||
MODE_SLAVE
|
||||
} ServerMode;
|
||||
|
||||
typedef enum {
|
||||
PERSIST_INCREMENTAL,
|
||||
PERSIST_NONE
|
||||
} PersistenceType;
|
||||
|
||||
typedef enum {
|
||||
ALLOC_JEMALLOC,
|
||||
ALLOC_MALLOC,
|
||||
ALLOC_OTHER
|
||||
} AllocatorType;
|
||||
|
||||
typedef struct {
|
||||
char ip[64];
|
||||
int port;
|
||||
ServerMode mode;
|
||||
|
||||
char master_ip[64]; // slave 才需要
|
||||
int master_port; // slave 才需要
|
||||
|
||||
LogLevel log_level;
|
||||
PersistenceType persistence;
|
||||
AllocatorType allocator;
|
||||
} AppConfig;
|
||||
|
||||
/**
|
||||
* 从 XML 文件加载配置
|
||||
* 返回 0 表示成功;非 0 表示失败
|
||||
*/
|
||||
int config_load(const char *filename, AppConfig *out_cfg);
|
||||
|
||||
const char *log_level_to_string(LogLevel lvl);
|
||||
const char *server_mode_to_string(ServerMode mode);
|
||||
const char *persistence_to_string(PersistenceType p);
|
||||
const char *allocator_to_string(AllocatorType a);
|
||||
|
||||
#endif /* CONFIG_H */
|
||||
Reference in New Issue
Block a user