why is `WebsocketMultiplexer.group_send` a class method?

13 views
Skip to first unread message

Richard Tier

unread,
Nov 30, 2017, 6:01:02 PM11/30/17
to Django users
why is `WebsocketMultiplexer.group_send` a class method?  

Currently it's the following:

    @classmethod
    def group_send(cls, name, stream, payload, close=False):
        message = cls.encode(stream, payload)
        if close:
            message["close"] = True
        Group(name).send(message)


what is to stop it being the following?

    def group_send(self, name, payload, close=False):
        message = cls.encode(self.stream, payload)
        if close:
            message["close"] = True
        Group(name).send(message)


`group_send` being a class method makes call more verbose than it appears neccisary


multiplexer.group_send(name='my-group', stream=multiplexer.stream, payload={})

https://github.com/django/channels/blob/8e2bbebe6d62850f0c5072b1541d96d9b932c472/channels/generic/websockets.py#L215
Reply all
Reply to author
Forward
0 new messages