MQTT: make Monitor first-read cancellable via context (#31116)

This commit is contained in:
andig 2026-06-22 11:32:56 +02:00 • committed by GitHub
parent aa7b5103dd
commit 2294066b27
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 44 additions and 3 deletions

View file

@ -1,11 +1,14 @@
package plugin
import (
"context"
"github.com/evcc-io/evcc/plugin/pipeline"
"github.com/evcc-io/evcc/util"
)
type msgHandler struct {
ctx context.Context
topic string
pipeline *pipeline.Pipeline
val *util.Monitor[string]
@ -17,7 +20,7 @@ func (h *msgHandler) receive(payload string) {
// hasValue returned the received and processed payload as string
func (h *msgHandler) hasValue() (string, error) {
payload, err := h.val.Get()
payload, err := h.val.GetContext(h.ctx)
if err != nil {
return "", err
}