package events

import (
	"encoding/json"
	"os"
)

type StdoutPublisher struct{}

func NewStdoutPublisher() StdoutPublisher {
	return StdoutPublisher{}
}

func (p StdoutPublisher) Publish(topic string, e Event) error {
	os.Stdout.Write([]byte(topic + ": "))
	enc := json.NewEncoder(os.Stdout)
	return enc.Encode(e)
}
