Skip to content
Snippets Groups Projects
Commit 465bbd14 authored by Malte Bauch's avatar Malte Bauch
Browse files

Add `UnmarshalJSON` to plugin

parent 52013a12
No related branches found
No related tags found
1 merge request!416Resolve "Refactor how PNDs are implemented in the code"
Pipeline #137734 failed
package plugin package plugin
import ( import (
"encoding/json"
"fmt" "fmt"
"net" "net"
"os" "os"
...@@ -149,6 +150,29 @@ func (lp *LoadedPlugin) UnmarshalBSON(data []byte) error { ...@@ -149,6 +150,29 @@ func (lp *LoadedPlugin) UnmarshalBSON(data []byte) error {
return nil return nil
} }
func (lp *LoadedPlugin) UnmarshalJSON(data []byte) error {
loadedPluginHelper := new(LoadedPluginHelper)
if err := json.Unmarshal(data, loadedPluginHelper); err != nil {
return err
}
lp.ID = loadedPluginHelper.ID
lp.Manifest = loadedPluginHelper.Manifest
lp.State = loadedPluginHelper.State
lp.ReattachConfig = hcplugin.ReattachConfig{
Protocol: hcplugin.Protocol(loadedPluginHelper.ReattachConfig.Protocol),
ProtocolVersion: loadedPluginHelper.ReattachConfig.ProtocolVersion,
Addr: &net.UnixAddr{
Name: loadedPluginHelper.ReattachConfig.Addr.Name,
Net: loadedPluginHelper.ReattachConfig.Addr.Net,
},
Pid: loadedPluginHelper.ReattachConfig.Pid,
Test: loadedPluginHelper.ReattachConfig.Test,
}
return nil
}
type LoadedPluginHelper struct { type LoadedPluginHelper struct {
ID string `json:"id" bson:"_id"` ID string `json:"id" bson:"_id"`
Manifest Manifest `json:"manifest" bson:"manifest"` Manifest Manifest `json:"manifest" bson:"manifest"`
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment