mirror of
https://github.com/wailsapp/wails.git
synced 2025-05-02 19:01:02 +08:00
36 lines
696 B
Go
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
|
|
}
|