1
0
mirror of https://github.com/redis/go-redis.git synced 2025-07-19 11:43:14 +03:00
Files
go-redis/push_notifications.go
2025-07-05 02:52:40 +03:00

40 lines
1.4 KiB
Go

package redis
import (
"github.com/redis/go-redis/v9/push"
)
// Push notification constants for cluster operations
const (
// MOVING indicates a slot is being moved to a different node
PushNotificationMoving = "MOVING"
// MIGRATING indicates a slot is being migrated from this node
PushNotificationMigrating = "MIGRATING"
// MIGRATED indicates a slot has been migrated to this node
PushNotificationMigrated = "MIGRATED"
// FAILING_OVER indicates a failover is starting
PushNotificationFailingOver = "FAILING_OVER"
// FAILED_OVER indicates a failover has completed
PushNotificationFailedOver = "FAILED_OVER"
)
// NewPushNotificationProcessor creates a new push notification processor
// This processor maintains a registry of handlers and processes push notifications
// It is used for RESP3 connections where push notifications are available
func NewPushNotificationProcessor() push.NotificationProcessor {
return push.NewProcessor()
}
// NewVoidPushNotificationProcessor creates a new void push notification processor
// This processor does not maintain any handlers and always returns nil for all operations
// It is used for RESP2 connections where push notifications are not available
// It can also be used to disable push notifications for RESP3 connections, where
// it will discard all push notifications without processing them
func NewVoidPushNotificationProcessor() push.NotificationProcessor {
return push.NewVoidProcessor()
}