Code Duplication    Length = 25-26 lines in 2 locations

pincer/middleware/channel.py 2 locations

@@ 86-111 (lines=26) @@
83
    return "on_channel_pins_update", [ChannelPinsUpdateEvent.from_dict(payload.data)]
84
85
86
async def channel_update_middleware(self, payload: GatewayDispatch):
87
    """|coro|
88
89
    Middleware for ``on_channel_update`` event.
90
91
    Parameters
92
    ----------
93
    payload : :class:`GatewayDispatch`
94
        The data received from the channel update event.
95
96
    Returns
97
    -------
98
    Tuple[:class:`str`, List[:class:`~pincer.objects.channel.channel.Channel`]]
99
        ``on_channel_update`` and a ``Channel``
100
    """
101
102
    channel = Channel.from_dict(construct_client_dict(self, payload.data))
103
104
    if channel.guild_id in self.guilds.keys():
105
        guild = self.guilds[channel.guild_id]
106
        old = filter(lambda c: c.id == channel.id, guild.channels)
107
        if old:
108
            guild.channels.remove(old)
109
        guild.channels.append(channel)
110
111
    return "on_channel_update", [channel]
112
113
114
def export():
@@ 40-64 (lines=25) @@
37
    ]
38
39
40
async def channel_delete_middleware(self, payload: GatewayDispatch):
41
    """|coro|
42
43
    Middleware for ``on_channel_delete``,
44
45
    Parameters
46
    ----------
47
    payload : :class:`pincer.core.dispatch.GatewayDispatch`
48
        The data received from the channel delete event.
49
50
    Returns
51
    -------
52
    Tuple[:class:`str`, List[:class:`~pincer.objects.guild.channel.Channel`]]
53
        ``on_channel_delete`` and a ``Channel``
54
    """
55
56
    channel = Channel.from_dict(construct_client_dict(self, payload.data))
57
58
    if channel.guild_id in self.guilds:
59
        guild = self.guilds[channel.guild_id]
60
        old = filter(lambda c: c.id == channel.id, guild.channels)
61
        if old:
62
            guild.channels.remove(old)
63
64
    return "on_channel_delete", [channel]
65
66
67
async def channel_pins_update_middleware(self, payload: GatewayDispatch):