1
0
mirror of https://github.com/netsampler/goflow2.git synced 2024-05-06 15:54:52 +00:00
2023-08-09 19:47:20 -07:00

33 lines
528 B
Go

package json
import (
"encoding/json"
"github.com/netsampler/goflow2/v2/format"
)
type JsonDriver struct {
}
func (d *JsonDriver) Prepare() error {
return nil
}
func (d *JsonDriver) Init() error {
return nil
}
func (d *JsonDriver) Format(data interface{}) ([]byte, []byte, error) {
var key []byte
if dataIf, ok := data.(interface{ Key() []byte }); ok {
key = dataIf.Key()
}
output, err := json.Marshal(data)
return key, output, err
}
func init() {
d := &JsonDriver{}
format.RegisterFormatDriver("json", d)
}