From 4f589e077c82da00dd505319ddcf3565c699d4e6 Mon Sep 17 00:00:00 2001 From: Christopher Speller Date: Wed, 10 May 2017 11:41:56 -0400 Subject: Removing channel list alias from apiv4 client (#6383) --- model/channel_list.go | 11 +++++++++++ model/client4.go | 20 ++++++++++---------- 2 files changed, 21 insertions(+), 10 deletions(-) (limited to 'model') diff --git a/model/channel_list.go b/model/channel_list.go index 18c726908..d5a4ccb7c 100644 --- a/model/channel_list.go +++ b/model/channel_list.go @@ -50,3 +50,14 @@ func ChannelListFromJson(data io.Reader) *ChannelList { return nil } } + +func ChannelSliceFromJson(data io.Reader) []*Channel { + decoder := json.NewDecoder(data) + var o []*Channel + err := decoder.Decode(&o) + if err == nil { + return o + } else { + return nil + } +} diff --git a/model/client4.go b/model/client4.go index 2e11d98b1..4a01a1f75 100644 --- a/model/client4.go +++ b/model/client4.go @@ -1270,54 +1270,54 @@ func (c *Client4) GetPinnedPosts(channelId string, etag string) (*PostList, *Res } // GetPublicChannelsForTeam returns a list of public channels based on the provided team id string. -func (c *Client4) GetPublicChannelsForTeam(teamId string, page int, perPage int, etag string) (*ChannelList, *Response) { +func (c *Client4) GetPublicChannelsForTeam(teamId string, page int, perPage int, etag string) ([]*Channel, *Response) { query := fmt.Sprintf("?page=%v&per_page=%v", page, perPage) if r, err := c.DoApiGet(c.GetChannelsForTeamRoute(teamId)+query, etag); err != nil { return nil, &Response{StatusCode: r.StatusCode, Error: err} } else { defer closeBody(r) - return ChannelListFromJson(r.Body), BuildResponse(r) + return ChannelSliceFromJson(r.Body), BuildResponse(r) } } // GetDeletedChannelsForTeam returns a list of public channels based on the provided team id string. -func (c *Client4) GetDeletedChannelsForTeam(teamId string, page int, perPage int, etag string) (*ChannelList, *Response) { +func (c *Client4) GetDeletedChannelsForTeam(teamId string, page int, perPage int, etag string) ([]*Channel, *Response) { query := fmt.Sprintf("/deleted?page=%v&per_page=%v", page, perPage) if r, err := c.DoApiGet(c.GetChannelsForTeamRoute(teamId)+query, etag); err != nil { return nil, &Response{StatusCode: r.StatusCode, Error: err} } else { defer closeBody(r) - return ChannelListFromJson(r.Body), BuildResponse(r) + return ChannelSliceFromJson(r.Body), BuildResponse(r) } } // GetPublicChannelsByIdsForTeam returns a list of public channels based on provided team id string -func (c *Client4) GetPublicChannelsByIdsForTeam(teamId string, channelIds []string) (*ChannelList, *Response) { +func (c *Client4) GetPublicChannelsByIdsForTeam(teamId string, channelIds []string) ([]*Channel, *Response) { if r, err := c.DoApiPost(c.GetChannelsForTeamRoute(teamId)+"/ids", ArrayToJson(channelIds)); err != nil { return nil, &Response{StatusCode: r.StatusCode, Error: err} } else { defer closeBody(r) - return ChannelListFromJson(r.Body), BuildResponse(r) + return ChannelSliceFromJson(r.Body), BuildResponse(r) } } // GetChannelsForTeamForUser returns a list channels of on a team for a user. -func (c *Client4) GetChannelsForTeamForUser(teamId, userId, etag string) (*ChannelList, *Response) { +func (c *Client4) GetChannelsForTeamForUser(teamId, userId, etag string) ([]*Channel, *Response) { if r, err := c.DoApiGet(c.GetUserRoute(userId)+c.GetTeamRoute(teamId)+"/channels", etag); err != nil { return nil, &Response{StatusCode: r.StatusCode, Error: err} } else { defer closeBody(r) - return ChannelListFromJson(r.Body), BuildResponse(r) + return ChannelSliceFromJson(r.Body), BuildResponse(r) } } // SearchChannels returns the channels on a team matching the provided search term. -func (c *Client4) SearchChannels(teamId string, search *ChannelSearch) (*ChannelList, *Response) { +func (c *Client4) SearchChannels(teamId string, search *ChannelSearch) ([]*Channel, *Response) { if r, err := c.DoApiPost(c.GetChannelsForTeamRoute(teamId)+"/search", search.ToJson()); err != nil { return nil, &Response{StatusCode: r.StatusCode, Error: err} } else { defer closeBody(r) - return ChannelListFromJson(r.Body), BuildResponse(r) + return ChannelSliceFromJson(r.Body), BuildResponse(r) } } -- cgit v1.2.3-1-g7c22