restpack-group-client 0.0.2 → 0.0.3

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,13 @@
1
+ require_relative 'restpack_client'
2
+
3
+ module RestPack
4
+ module Group
5
+ module Client
6
+ class Api < RestPackClientApi
7
+ def group_api
8
+ @group_api ||= GroupApi.new(@options)
9
+ end
10
+ end
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,26 @@
1
+ class RestPack::Group::Client::GroupApi < RestPackClientApi
2
+ def index(params)
3
+ #TODO: GJ: require channel_id
4
+ response = get('/api/v1/groups.json', params)
5
+
6
+ hydrate response
7
+ end
8
+
9
+ private
10
+
11
+ def hydrate(response)
12
+ memberships = []
13
+ invitations = []
14
+ groups = []
15
+
16
+ memberships = response[:memberships].map { |m| Membership.new(m) } if response[:memberships]
17
+ invitations = response[:invitations].map { |i| Invitation.new(i) } if response[:invitations]
18
+ groups = response[:groups].map {|g| Group.new(g, memberships, invitations) } if response[:groups]
19
+
20
+ {
21
+ groups: groups,
22
+ memberships: memberships,
23
+ invitations: invitations
24
+ }
25
+ end
26
+ end
@@ -1,7 +1,7 @@
1
1
  module RestPack
2
2
  module Group
3
3
  module Client
4
- VERSION = "0.0.2"
4
+ VERSION = "0.0.3"
5
5
  end
6
6
  end
7
7
  end
@@ -1,4 +1,9 @@
1
1
  require 'restpack-group-client/version'
2
+
3
+ require 'restpack-group-client/models/group'
4
+ require 'restpack-group-client/models/membership'
5
+ require 'restpack-group-client/models/invitation'
6
+
2
7
  require 'restpack-group-client/client'
3
8
  require 'rest_client'
4
9
  require 'yajl/json_gem'
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: restpack-group-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.2
4
+ version: 0.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -88,7 +88,8 @@ files:
88
88
  - README.md
89
89
  - Rakefile
90
90
  - lib/restpack-group-client.rb
91
- - lib/restpack-group-client/client.rb
91
+ - lib/restpack-group-client/api.rb
92
+ - lib/restpack-group-client/apis/group_api.rb
92
93
  - lib/restpack-group-client/models/group.rb
93
94
  - lib/restpack-group-client/models/invitation.rb
94
95
  - lib/restpack-group-client/models/membership.rb
@@ -1,38 +0,0 @@
1
- require 'uri'
2
- require_relative 'restpack_client'
3
- require_relative 'models/group'
4
- require_relative 'models/membership'
5
- require_relative 'models/invitation'
6
-
7
- module RestPack
8
- module Group
9
- module Client
10
- class Api < RestPackClientApi
11
- def groups
12
- @group_client ||= GroupClient.new(@options)
13
- end
14
- end
15
-
16
- class GroupClient < RestPackClientApi
17
- def index(params)
18
- #TODO: GJ: require channel_id
19
- response = get('/api/v1/groups.json', params)
20
-
21
- memberships = []
22
- invitations = []
23
- groups = []
24
-
25
- memberships = response[:memberships].map { |m| Membership.new(m) } if response[:memberships]
26
- invitations = response[:invitations].map { |i| Invitation.new(i) } if response[:invitations]
27
- groups = response[:groups].map {|g| Group.new(g, memberships, invitations) } if response[:groups]
28
-
29
- {
30
- groups: groups,
31
- memberships: memberships,
32
- invitations: invitations
33
- }
34
- end
35
- end
36
- end
37
- end
38
- end