You've already forked pgbackrest
mirror of
https://github.com/pgbackrest/pgbackrest.git
synced 2025-07-09 00:45:49 +02:00
Add macros to create constant Variant types.
These work almost exactly like the String constant macros. However, a struct per variant type was required which meant custom constructors and destructors for each type. Propagate the variant constants out into the codebase wherever they are useful.
This commit is contained in:
@ -788,37 +788,37 @@ testRun(void)
|
||||
KeyValue *stanzaInfo = kvNew();
|
||||
VariantList *dbSection = varLstNew();
|
||||
Variant *pgInfo = varNewKv();
|
||||
kvPut(varKv(pgInfo), varNewStr(DB_KEY_ID_STR), varNewUInt64(1));
|
||||
kvPut(varKv(pgInfo), varNewStr(DB_KEY_SYSTEM_ID_STR), varNewUInt64(6625633699176220261));
|
||||
kvPut(varKv(pgInfo), varNewStr(DB_KEY_VERSION_STR), varNewStr(pgVersionToStr(90500)));
|
||||
kvPut(varKv(pgInfo), DB_KEY_ID_VAR, varNewUInt64(1));
|
||||
kvPut(varKv(pgInfo), DB_KEY_SYSTEM_ID_VAR, varNewUInt64(6625633699176220261));
|
||||
kvPut(varKv(pgInfo), DB_KEY_VERSION_VAR, VARSTR(pgVersionToStr(90500)));
|
||||
|
||||
varLstAdd(dbSection, pgInfo);
|
||||
|
||||
// Add the database history, backup and archive sections to the stanza info
|
||||
kvPut(stanzaInfo, varNewStr(STANZA_KEY_DB_STR), varNewVarLst(dbSection));
|
||||
kvPut(stanzaInfo, STANZA_KEY_DB_VAR, varNewVarLst(dbSection));
|
||||
|
||||
VariantList *backupSection = varLstNew();
|
||||
Variant *backupInfo = varNewKv();
|
||||
|
||||
kvPut(varKv(backupInfo), varNewStr(BACKUP_KEY_LABEL_STR), varNewStr(strNew("20181119-152138F")));
|
||||
kvPut(varKv(backupInfo), varNewStr(BACKUP_KEY_TYPE_STR), varNewStr(strNew("full")));
|
||||
kvPutKv(varKv(backupInfo), varNewStr(KEY_ARCHIVE_STR));
|
||||
KeyValue *infoInfo = kvPutKv(varKv(backupInfo), varNewStr(BACKUP_KEY_INFO_STR));
|
||||
kvPut(infoInfo, varNewStr(KEY_SIZE_STR), varNewUInt64(0));
|
||||
kvPut(infoInfo, varNewStr(KEY_DELTA_STR), varNewUInt64(0));
|
||||
KeyValue *repoInfo = kvPutKv(infoInfo, varNewStr(INFO_KEY_REPOSITORY_STR));
|
||||
kvAdd(repoInfo, varNewStr(KEY_SIZE_STR), varNewUInt64(0));
|
||||
kvAdd(repoInfo, varNewStr(KEY_DELTA_STR), varNewUInt64(0));
|
||||
KeyValue *databaseInfo = kvPutKv(varKv(backupInfo), varNewStr(KEY_DATABASE_STR));
|
||||
kvAdd(databaseInfo, varNewStr(DB_KEY_ID_STR), varNewUInt64(1));
|
||||
KeyValue *timeInfo = kvPutKv(varKv(backupInfo), varNewStr(BACKUP_KEY_TIMESTAMP_STR));
|
||||
kvAdd(timeInfo, varNewStr(KEY_START_STR), varNewUInt64(1542383276));
|
||||
kvAdd(timeInfo, varNewStr(KEY_STOP_STR), varNewUInt64(1542383289));
|
||||
kvPut(varKv(backupInfo), BACKUP_KEY_LABEL_VAR, VARSTRDEF("20181119-152138F"));
|
||||
kvPut(varKv(backupInfo), BACKUP_KEY_TYPE_VAR, VARSTRDEF("full"));
|
||||
kvPutKv(varKv(backupInfo), KEY_ARCHIVE_VAR);
|
||||
KeyValue *infoInfo = kvPutKv(varKv(backupInfo), BACKUP_KEY_INFO_VAR);
|
||||
kvPut(infoInfo, KEY_SIZE_VAR, varNewUInt64(0));
|
||||
kvPut(infoInfo, KEY_DELTA_VAR, varNewUInt64(0));
|
||||
KeyValue *repoInfo = kvPutKv(infoInfo, INFO_KEY_REPOSITORY_VAR);
|
||||
kvAdd(repoInfo, KEY_SIZE_VAR, varNewUInt64(0));
|
||||
kvAdd(repoInfo, KEY_DELTA_VAR, varNewUInt64(0));
|
||||
KeyValue *databaseInfo = kvPutKv(varKv(backupInfo), KEY_DATABASE_VAR);
|
||||
kvAdd(databaseInfo, DB_KEY_ID_VAR, varNewUInt64(1));
|
||||
KeyValue *timeInfo = kvPutKv(varKv(backupInfo), BACKUP_KEY_TIMESTAMP_VAR);
|
||||
kvAdd(timeInfo, KEY_START_VAR, varNewUInt64(1542383276));
|
||||
kvAdd(timeInfo, KEY_STOP_VAR, varNewUInt64(1542383289));
|
||||
|
||||
varLstAdd(backupSection, backupInfo);
|
||||
|
||||
kvPut(stanzaInfo, varNewStr(STANZA_KEY_BACKUP_STR), varNewVarLst(backupSection));
|
||||
kvPut(stanzaInfo, varNewStr(KEY_ARCHIVE_STR), varNewVarLst(varLstNew()));
|
||||
kvPut(stanzaInfo, STANZA_KEY_BACKUP_VAR, varNewVarLst(backupSection));
|
||||
kvPut(stanzaInfo, KEY_ARCHIVE_VAR, varNewVarLst(varLstNew()));
|
||||
|
||||
String *result = strNew("");
|
||||
formatTextDb(stanzaInfo, result);
|
||||
|
Reference in New Issue
Block a user