5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-03 03:40:12 +08:00
wails/lib/ipc/call.go
2019-10-08 06:12:08 +11:00

36 lines
696 B
Go

package ipc
import (
"fmt"
"github.com/wailsapp/wails/lib/messages"
)
func init() {
messageProcessors["call"] = processCallData
}
func processCallData(message *ipcMessage) (*ipcMessage, error) {
var payload messages.CallData
// Decode binding call data
payloadMap := message.Payload.(map[string]interface{})
// Check for binding name
if payloadMap["bindingName"] == nil {
return nil, fmt.Errorf("bindingName not given in call")
}
payload.BindingName = payloadMap["bindingName"].(string)
// Check for data
if payloadMap["data"] != nil {
payload.Data = payloadMap["data"].(string)
}
// Reassign payload to decoded data
message.Payload = &payload
return message, nil
}