fc08c26025
* WIP: Spawn backend plugins v2 * Add test for plugin version * Fix support for SDK plugins Co-authored-by: Kyle Brandt <kyle@kbrandt.com> Co-authored-by: Marcus Olsson <olsson.e.marcus@gmail.com> Co-authored-by: Marcus Efraimsson <marcus.efraimsson@gmail.com> * WIP: Draft PR for fork of V2 sdk / bi-directional support (#19890) * temporary use export-datasource-plugin branch of grafana-plugin-sdk * fix failing test * remove debug (spew) lines * misc cleanup * add expressions feature toggle * use latest grafana-plugin-sdk-go
24 lines
530 B
Go
24 lines
530 B
Go
package flatbuffers
|
|
|
|
// Codec implements gRPC-go Codec which is used to encode and decode messages.
|
|
var Codec = "flatbuffers"
|
|
|
|
type FlatbuffersCodec struct{}
|
|
|
|
func (FlatbuffersCodec) Marshal(v interface{}) ([]byte, error) {
|
|
return v.(*Builder).FinishedBytes(), nil
|
|
}
|
|
|
|
func (FlatbuffersCodec) Unmarshal(data []byte, v interface{}) error {
|
|
v.(flatbuffersInit).Init(data, GetUOffsetT(data))
|
|
return nil
|
|
}
|
|
|
|
func (FlatbuffersCodec) String() string {
|
|
return Codec
|
|
}
|
|
|
|
type flatbuffersInit interface {
|
|
Init(data []byte, i UOffsetT)
|
|
}
|