diff options
author | saturneric <[email protected]> | 2024-11-20 15:30:59 +0000 |
---|---|---|
committer | saturneric <[email protected]> | 2024-11-20 15:30:59 +0000 |
commit | 4a60eadd27b6e8fbe2e2b696fff375eefb05bf78 (patch) | |
tree | 2e8f4b9f71848a6168abbd97733708b8adeda98f /src/sdk | |
parent | feat: add ui some restrictions when primary key not exists (diff) | |
download | GpgFrontend-4a60eadd27b6e8fbe2e2b696fff375eefb05bf78.tar.gz GpgFrontend-4a60eadd27b6e8fbe2e2b696fff375eefb05bf78.zip |
feat: enhance cache api
Diffstat (limited to 'src/sdk')
-rw-r--r-- | src/sdk/GFSDKBasic.cpp | 22 | ||||
-rw-r--r-- | src/sdk/GFSDKBasic.h | 33 |
2 files changed, 53 insertions, 2 deletions
diff --git a/src/sdk/GFSDKBasic.cpp b/src/sdk/GFSDKBasic.cpp index 32076cd0..0bc190a9 100644 --- a/src/sdk/GFSDKBasic.cpp +++ b/src/sdk/GFSDKBasic.cpp @@ -28,6 +28,7 @@ #include "GFSDKBasic.h" +#include "core/function/CacheManager.h" #include "core/function/SecureMemoryAllocator.h" #include "core/function/gpg/GpgCommandExecutor.h" #include "core/utils/BuildInfoUtils.h" @@ -117,3 +118,24 @@ auto GFAppRegisterTranslatorReader(const char* id, ? 0 : -1; } + +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheSave(const char* key, + const char* value) -> int { + GpgFrontend::CacheManager::GetInstance().SaveCache(GFUnStrDup(key), + GFUnStrDup(value)); + return 0; +} + +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheGet(const char* key) -> const char* { + auto value = + GpgFrontend::CacheManager::GetInstance().LoadCache(GFUnStrDup(key)); + return GFStrDup(value); +} + +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheSaveWithTTL(const char* key, + const char* value, + int ttl) -> int { + GpgFrontend::CacheManager::GetInstance().SaveCache(GFUnStrDup(key), + GFUnStrDup(value), ttl); + return 0; +} diff --git a/src/sdk/GFSDKBasic.h b/src/sdk/GFSDKBasic.h index f6c80287..c9bf0e59 100644 --- a/src/sdk/GFSDKBasic.h +++ b/src/sdk/GFSDKBasic.h @@ -131,6 +131,35 @@ auto GPGFRONTEND_MODULE_SDK_EXPORT GFAppActiveLocale() -> char*; * @param size * @return auto */ -auto GPGFRONTEND_MODULE_SDK_EXPORT -GFAppRegisterTranslatorReader(const char* id, GFTranslatorDataReader reader) -> int; +auto GPGFRONTEND_MODULE_SDK_EXPORT GFAppRegisterTranslatorReader( + const char* id, GFTranslatorDataReader reader) -> int; + +/** + * @brief + * + * @param key + * @param value + * @return auto + */ +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheSave(const char* key, + const char* value) -> int; + +/** + * @brief + * + * @param key + * @param value + * @return auto + */ +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheSaveWithTTL(const char* key, + const char* value, + int ttl) -> int; + +/** + * @brief + * + * @param key + * @return const char* + */ +auto GPGFRONTEND_MODULE_SDK_EXPORT GFCacheGet(const char* key) -> const char*; }
\ No newline at end of file |