From ea321be17a9487f26e1d70676c9a46dc61136196 Mon Sep 17 00:00:00 2001 From: Juliusz Chroboczek Date: Fri, 26 Feb 2021 16:20:13 +0100 Subject: [PATCH] Make Kick part of the Client interface. All clients implement Kick, no need for a separate interface. --- group/client.go | 3 --- group/group.go | 5 +---- rtpconn/webclient.go | 7 +------ 3 files changed, 2 insertions(+), 13 deletions(-) diff --git a/group/client.go b/group/client.go index c0ca285..5e58d2f 100644 --- a/group/client.go +++ b/group/client.go @@ -101,8 +101,5 @@ type Client interface { OverridePermissions(*Group) bool PushConn(g *Group, id string, conn conn.Up, tracks []conn.UpTrack, replace string) error PushClient(id, username string, add bool) error -} - -type Kickable interface { Kick(id, user, message string) error } diff --git a/group/group.go b/group/group.go index 3f7cd2a..1cb8f26 100644 --- a/group/group.go +++ b/group/group.go @@ -586,10 +586,7 @@ func (g *Group) Range(f func(c Client) bool) { func kickall(g *Group, message string) { g.Range(func(c Client) bool { - cc, ok := c.(Kickable) - if ok { - cc.Kick("", "", message) - } + c.Kick("", "", message) return true }) } diff --git a/rtpconn/webclient.go b/rtpconn/webclient.go index 4dd45f4..54b9086 100644 --- a/rtpconn/webclient.go +++ b/rtpconn/webclient.go @@ -1099,12 +1099,7 @@ func kickClient(g *group.Group, id, user, dest string, message string) error { return group.UserError("no such user") } - c, ok := client.(group.Kickable) - if !ok { - return group.UserError("this client is not kickable") - } - - return c.Kick(id, user, message) + return client.Kick(id, user, message) } func handleClientMessage(c *webClient, m clientMessage) error {