From f48f9cccc654d41b43d693360bda31752f36b369 Mon Sep 17 00:00:00 2001 From: Andrea Maria Piana Date: Mon, 27 Nov 2023 11:08:17 +0000 Subject: [PATCH] feat_: Allow to set light client --- nodecfg/node_config.go | 5 +++++ protocol/messenger_settings.go | 10 ++++++++++ protocol/requests/set_light_client.go | 5 +++++ services/ext/api.go | 4 ++++ 4 files changed, 24 insertions(+) create mode 100644 protocol/messenger_settings.go create mode 100644 protocol/requests/set_light_client.go diff --git a/nodecfg/node_config.go b/nodecfg/node_config.go index 42b59e4ba..f678ebd07 100644 --- a/nodecfg/node_config.go +++ b/nodecfg/node_config.go @@ -786,3 +786,8 @@ func GetNodeConfigFromDB(db *sql.DB) (*params.NodeConfig, error) { return loadNodeConfig(tx) } + +func SetLightClient(db *sql.DB, enabled bool) error { + _, err := db.Exec(`UPDATE wakuv2_config SET light_client = ?`, enabled) + return err +} diff --git a/protocol/messenger_settings.go b/protocol/messenger_settings.go new file mode 100644 index 000000000..44ec475ed --- /dev/null +++ b/protocol/messenger_settings.go @@ -0,0 +1,10 @@ +package protocol + +import ( + "github.com/status-im/status-go/nodecfg" + "github.com/status-im/status-go/protocol/requests" +) + +func (m *Messenger) SetLightClient(request *requests.SetLightClient) error { + return nodecfg.SetLightClient(m.database, request.Enabled) +} diff --git a/protocol/requests/set_light_client.go b/protocol/requests/set_light_client.go new file mode 100644 index 000000000..f0eb9bc5a --- /dev/null +++ b/protocol/requests/set_light_client.go @@ -0,0 +1,5 @@ +package requests + +type SetLightClient struct { + Enabled bool `json:"enabled"` +} diff --git a/services/ext/api.go b/services/ext/api.go index 3083df7b1..449ebee82 100644 --- a/services/ext/api.go +++ b/services/ext/api.go @@ -1685,6 +1685,10 @@ func (api *PublicAPI) SyncChat(request *requests.SyncChat) error { return api.service.messenger.SyncChat(request) } +func (api *PublicAPI) SetLightClient(request *requests.SetLightClient) error { + return api.service.messenger.SetLightClient(request) +} + // ----- // HELPER // -----