Skip to content
Snippets Groups Projects
Commit e19dd324 authored by Jono Wenger's avatar Jono Wenger
Browse files

Fix naming and add receiver for database name

parent 539f0698
No related branches found
No related tags found
2 merge requests!67fix for latest client release,!52XX-4382 / Move indexedDb databases to web workers
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
importScripts('wasm_exec.js'); importScripts('wasm_exec.js');
const go = new Go(); const go = new Go();
const binPath = 'channelsIndexedDkWorker.wasm' const binPath = 'xxdk-channelsIndexedDkWorker.wasm'
WebAssembly.instantiateStreaming(fetch(binPath), go.importObject).then((result) => { WebAssembly.instantiateStreaming(fetch(binPath), go.importObject).then((result) => {
go.run(result.instance); go.run(result.instance);
}).catch((err) => { }).catch((err) => {
......
...@@ -15,7 +15,7 @@ import ( ...@@ -15,7 +15,7 @@ import (
) )
func main() { func main() {
fmt.Println("Starting xxDK WebAssembly Database Worker.") fmt.Println("Starting xxDK WebAssembly Channels Database Worker.")
m := &manager{mh: indexedDb.NewMessageHandler()} m := &manager{mh: indexedDb.NewMessageHandler()}
RegisterDatabaseNameStore(m) RegisterDatabaseNameStore(m)
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
importScripts('wasm_exec.js'); importScripts('wasm_exec.js');
const go = new Go(); const go = new Go();
const binPath = 'dmIndexedDbWorker.wasm' const binPath = 'xxdk-dmIndexedDkWorker.wasm'
WebAssembly.instantiateStreaming(fetch(binPath), go.importObject).then((result) => { WebAssembly.instantiateStreaming(fetch(binPath), go.importObject).then((result) => {
go.run(result.instance); go.run(result.instance);
}).catch((err) => { }).catch((err) => {
......
...@@ -15,7 +15,7 @@ import ( ...@@ -15,7 +15,7 @@ import (
) )
func main() { func main() {
fmt.Println("Starting xxDK WebAssembly Database Worker.") fmt.Println("Starting xxDK WebAssembly DM Database Worker.")
m := &manager{mh: indexedDb.NewMessageHandler()} m := &manager{mh: indexedDb.NewMessageHandler()}
m.RegisterHandlers() m.RegisterHandlers()
......
...@@ -68,6 +68,10 @@ func NewWASMEventModel(path string, encryption cryptoChannel.Cipher, ...@@ -68,6 +68,10 @@ func NewWASMEventModel(path string, encryption cryptoChannel.Cipher,
wh.RegisterHandler(indexedDbWorker.EncryptionStatusTag, wh.RegisterHandler(indexedDbWorker.EncryptionStatusTag,
indexedDbWorker.InitID, false, checkDbEncryptionStatusHandler(wh)) indexedDbWorker.InitID, false, checkDbEncryptionStatusHandler(wh))
// Register handler to manage the storage of the database name
wh.RegisterHandler(indexedDbWorker.StoreDatabaseNameTag,
indexedDbWorker.InitID, false, storeDatabaseNameHandler(wh))
encryptionJSON, err := json.Marshal(encryption) encryptionJSON, err := json.Marshal(encryption)
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -172,3 +176,20 @@ func checkDbEncryptionStatusHandler( ...@@ -172,3 +176,20 @@ func checkDbEncryptionStatusHandler(
wh.SendMessage(indexedDbWorker.EncryptionStatusTag, statusData, nil) wh.SendMessage(indexedDbWorker.EncryptionStatusTag, statusData, nil)
} }
} }
// storeDatabaseNameHandler returns a handler that stores the database name to
// storage when it is received from the worker.
func storeDatabaseNameHandler(
wh *indexedDbWorker.WorkerHandler) func(data []byte) {
return func(data []byte) {
var returnData []byte
// Get the database name and save it to storage
jww.ERROR.Printf("*** Storing database name: %s", string(data))
if err := storage.StoreIndexedDb(string(data)); err != nil {
returnData = []byte(err.Error())
}
wh.SendMessage(indexedDbWorker.StoreDatabaseNameTag, returnData, nil)
}
}
...@@ -59,6 +59,10 @@ func NewWASMEventModel(path string, encryption cryptoChannel.Cipher, ...@@ -59,6 +59,10 @@ func NewWASMEventModel(path string, encryption cryptoChannel.Cipher,
wh.RegisterHandler(indexedDbWorker.EncryptionStatusTag, wh.RegisterHandler(indexedDbWorker.EncryptionStatusTag,
indexedDbWorker.InitID, false, checkDbEncryptionStatusHandler(wh)) indexedDbWorker.InitID, false, checkDbEncryptionStatusHandler(wh))
// Register handler to manage the storage of the database name
wh.RegisterHandler(indexedDbWorker.StoreDatabaseNameTag,
indexedDbWorker.InitID, false, storeDatabaseNameHandler(wh))
encryptionJSON, err := json.Marshal(encryption) encryptionJSON, err := json.Marshal(encryption)
if err != nil { if err != nil {
return nil, err return nil, err
...@@ -163,3 +167,19 @@ func checkDbEncryptionStatusHandler( ...@@ -163,3 +167,19 @@ func checkDbEncryptionStatusHandler(
wh.SendMessage(indexedDbWorker.EncryptionStatusTag, statusData, nil) wh.SendMessage(indexedDbWorker.EncryptionStatusTag, statusData, nil)
} }
} }
// storeDatabaseNameHandler returns a handler that stores the database name to
// storage when it is received from the worker.
func storeDatabaseNameHandler(
wh *indexedDbWorker.WorkerHandler) func(data []byte) {
return func(data []byte) {
var returnData []byte
// Get the database name and save it to storage
if err := storage.StoreIndexedDb(string(data)); err != nil {
returnData = []byte(err.Error())
}
wh.SendMessage(indexedDbWorker.StoreDatabaseNameTag, returnData, nil)
}
}
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment