aboutsummaryrefslogtreecommitdiffstats
path: root/src/sdk
diff options
context:
space:
mode:
authorsaturneric <[email protected]>2024-11-20 15:30:59 +0000
committersaturneric <[email protected]>2024-11-20 15:30:59 +0000
commit4a60eadd27b6e8fbe2e2b696fff375eefb05bf78 (patch)
tree2e8f4b9f71848a6168abbd97733708b8adeda98f /src/sdk
parentfeat: add ui some restrictions when primary key not exists (diff)
downloadGpgFrontend-4a60eadd27b6e8fbe2e2b696fff375eefb05bf78.tar.gz
GpgFrontend-4a60eadd27b6e8fbe2e2b696fff375eefb05bf78.zip
feat: enhance cache api
Diffstat (limited to 'src/sdk')
-rw-r--r--src/sdk/GFSDKBasic.cpp22
-rw-r--r--src/sdk/GFSDKBasic.h33
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