summaryrefslogtreecommitdiffstats
path: root/model
diff options
context:
space:
mode:
authorChristopher Speller <crspeller@gmail.com>2017-05-10 11:41:56 -0400
committerCorey Hulen <corey@hulen.com>2017-05-10 08:41:56 -0700
commit4f589e077c82da00dd505319ddcf3565c699d4e6 (patch)
treeeb1e5da4762d66e4a8e6e614ce6ffafa36c9424d /model
parenta67898186175d9986b9e8cd8321afbc6fa84c8c6 (diff)
downloadchat-4f589e077c82da00dd505319ddcf3565c699d4e6.tar.gz
chat-4f589e077c82da00dd505319ddcf3565c699d4e6.tar.bz2
chat-4f589e077c82da00dd505319ddcf3565c699d4e6.zip
Removing channel list alias from apiv4 client (#6383)
Diffstat (limited to 'model')
-rw-r--r--model/channel_list.go11
-rw-r--r--model/client4.go20
2 files changed, 21 insertions, 10 deletions
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)
}
}