(v interface{})
| 15 | } |
| 16 | |
| 17 | func (w *JSONWriter) Write(v interface{}) error { |
| 18 | if !w.enabled { |
| 19 | return nil |
| 20 | } |
| 21 | |
| 22 | data, err := json.Marshal(v) |
| 23 | if err != nil { |
| 24 | return fmt.Errorf("failed to marshal json output: %w", err) |
| 25 | } |
| 26 | |
| 27 | if _, err := fmt.Fprintln(os.Stdout, string(data)); err != nil { |
| 28 | return fmt.Errorf("failed to write json output: %w", err) |
| 29 | } |
| 30 | return nil |
| 31 | } |
| 32 | |
| 33 | func (w *JSONWriter) IsEnabled() bool { |
| 34 | return w.enabled |