diff options
| author | alex <[email protected]> | 2026-07-12 14:09:36 +0200 |
|---|---|---|
| committer | alex <[email protected]> | 2026-07-12 14:09:36 +0200 |
| commit | ce9d9f8b2183bc0a31bfa40e780ae07182bc7cf8 (patch) | |
| tree | 73eefd7228bb3ba820c618777495b60a3fb6860f /pkg/commands/unsubscribe.go | |
| parent | 89b3019a3ab77a3e72720342fc0e5bea996fa4f2 (diff) | |
| download | redis-clone-command-registry.tar.xz redis-clone-command-registry.zip | |
added pubsub command registrycommand-registry
Diffstat (limited to 'pkg/commands/unsubscribe.go')
| -rw-r--r-- | pkg/commands/unsubscribe.go | 19 |
1 files changed, 19 insertions, 0 deletions
diff --git a/pkg/commands/unsubscribe.go b/pkg/commands/unsubscribe.go new file mode 100644 index 0000000..9ca502d --- /dev/null +++ b/pkg/commands/unsubscribe.go @@ -0,0 +1,19 @@ +package commands + +import ( + "net" + "redisClone/pkg/core" + "redisClone/pkg/pubsub" +) + +func Unsubscribe(hub *pubsub.Hub, conn net.Conn, args []string) interface{}{ + channels := args[1:] + results := hub.Unsubscribe(conn, channels) + + for channel, remainingCount := range results { + resp := core.SerializeRESP([]interface{}{"unsubscribe", channel, remainingCount}) + conn.Write(resp) + } + + return nil +}
\ No newline at end of file |
