From fc5e3a672862e53192dadfd9689dad766772aeea Mon Sep 17 00:00:00 2001 From: Patrick Connolly Date: Wed, 28 Nov 2018 18:04:26 +0800 Subject: [PATCH] Create getChannelsByX functions to make codeclimate happy (slack) (#610) --- bridge/slack/helpers.go | 16 +++++++--------- 1 file changed, 7 insertions(+), 9 deletions(-) diff --git a/bridge/slack/helpers.go b/bridge/slack/helpers.go index 39fbcea7..b0af50f5 100644 --- a/bridge/slack/helpers.go +++ b/bridge/slack/helpers.go @@ -44,23 +44,21 @@ func (b *Bslack) getChannel(channel string) (*slack.Channel, error) { } func (b *Bslack) getChannelByName(name string) (*slack.Channel, error) { - b.channelsMutex.RLock() - defer b.channelsMutex.RUnlock() - - if channel, ok := b.channelsByName[name]; ok { - return channel, nil - } - return nil, fmt.Errorf("%s: channel %s not found", b.Account, name) + return b.getChannelBy(name, b.channelsByName) } func (b *Bslack) getChannelByID(ID string) (*slack.Channel, error) { + return b.getChannelBy(ID, b.channelsByID) +} + +func (b *Bslack) getChannelBy(lookupKey string, lookupMap map[string]*slack.Channel) (*slack.Channel, error) { b.channelsMutex.RLock() defer b.channelsMutex.RUnlock() - if channel, ok := b.channelsByID[ID]; ok { + if channel, ok := lookupMap[lookupKey]; ok { return channel, nil } - return nil, fmt.Errorf("%s: channel %s not found", b.Account, ID) + return nil, fmt.Errorf("%s: channel %s not found", b.Account, lookupKey) } const minimumRefreshInterval = 10 * time.Second