20 lines
557 B
Go
20 lines
557 B
Go
|
|
package evidence
|
||
|
|
|
||
|
|
import (
|
||
|
|
"context"
|
||
|
|
|
||
|
|
"github.com/tegwick/fluid-core/internal/contract"
|
||
|
|
)
|
||
|
|
|
||
|
|
// TelemetrySink adapts a Store to the runtime's telemetry sink.
|
||
|
|
//
|
||
|
|
// It is a separate type so the data plane depends on the narrow sink interface
|
||
|
|
// rather than on the whole evidence store: the gateway should not be able to
|
||
|
|
// read hypotheses.
|
||
|
|
type TelemetrySink struct{ Store Store }
|
||
|
|
|
||
|
|
// Write implements the runtime Sink interface.
|
||
|
|
func (s TelemetrySink) Write(ctx context.Context, ev contract.FluidTelemetry) error {
|
||
|
|
return s.Store.WriteTelemetry(ctx, ev)
|
||
|
|
}
|