confluence-client 0.0.4 → 0.0.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
data/HISTORY CHANGED
@@ -1,17 +1,22 @@
1
+ 2011-04-08 v0.0.5
2
+ - Added 'Client#add_user_to_group'
3
+ - Added 'Client#member?'
4
+ - Added 'Client#remove_user_from_group'
5
+
1
6
  2011-04-06 v0.0.4
2
- - Added 'Confluence#add_group'
3
- - Added 'Confluence#get_group'
4
- - Added 'Confluence#remove_group'
7
+ - Added 'Client#add_group'
8
+ - Added 'Client#get_group'
9
+ - Added 'Client#remove_group'
5
10
 
6
11
  2011-04-04 v0.0.3
7
- - Added 'Confluence#add_user'
8
- - Added 'Confluence#get_user'
9
- - Added 'Confluence#remove_user'
12
+ - Added 'Client#add_user'
13
+ - Added 'Client#get_user'
14
+ - Added 'Client#remove_user'
10
15
 
11
16
  2011-04-04 v0.0.2
12
- - Added 'Confluence#add_space'
13
- - Added 'Confluence#get_space'
14
- - Added 'Confluence#remove_space'
17
+ - Added 'Client#add_space'
18
+ - Added 'Client#get_space'
19
+ - Added 'Client#remove_space'
15
20
  - Improved formatting of Confluence exception messages
16
21
 
17
22
  2011-04-01 v0.0.1
data/README.rdoc CHANGED
@@ -65,6 +65,26 @@
65
65
  puts "unable to remove group: #{c.error}"
66
66
  end
67
67
 
68
+ ##########
69
+ # Groups #
70
+ ##########
71
+ if confluence.member?('stan', 'some:group')
72
+ if confluence.remove_user_from_group('stan', 'some:group')
73
+ puts 'removed user from group'
74
+ else
75
+ puts "unable to remove user from group: #{c.error}"
76
+ end
77
+ else
78
+ if confluence.add_user_to_group('stan', 'some:group')
79
+ puts 'added user to group'
80
+ else
81
+ puts "unable to add user to group: #{c.error}"
82
+ end
83
+ end
84
+
85
+ ##########
86
+ # Logout #
87
+ ##########
68
88
  confluence.logout
69
89
  end
70
90
 
data/Rakefile CHANGED
@@ -1,8 +1,9 @@
1
1
  require 'bundler'
2
2
  require 'rspec/core/rake_task'
3
+ require 'rdoc-readme/rake_task'
3
4
 
4
5
  Bundler::GemHelper.install_tasks
5
-
6
+ RDoc::Readme::RakeTask.new 'lib/confluence-client.rb', 'README.rdoc'
6
7
  RSpec::Core::RakeTask.new(:spec)
7
8
 
8
9
  task :default => :spec
@@ -68,6 +68,26 @@ module Confluence # :nodoc:
68
68
  # puts "unable to remove group: #{c.error}"
69
69
  # end
70
70
  #
71
+ # ##########
72
+ # # Groups #
73
+ # ##########
74
+ # if confluence.member?('stan', 'some:group')
75
+ # if confluence.remove_user_from_group('stan', 'some:group')
76
+ # puts 'removed user from group'
77
+ # else
78
+ # puts "unable to remove user from group: #{c.error}"
79
+ # end
80
+ # else
81
+ # if confluence.add_user_to_group('stan', 'some:group')
82
+ # puts 'added user to group'
83
+ # else
84
+ # puts "unable to add user to group: #{c.error}"
85
+ # end
86
+ # end
87
+ #
88
+ # ##########
89
+ # # Logout #
90
+ # ##########
71
91
  # confluence.logout
72
92
  # end
73
93
  #
@@ -108,6 +128,19 @@ module Confluence # :nodoc:
108
128
  return nil
109
129
  end
110
130
 
131
+ # Add user to group. Returns boolean.
132
+ #
133
+ # Params:
134
+ # +user+:: User to add.
135
+ # +group:: Add user to this group.
136
+ def add_user_to_group(user, group)
137
+ if member?(user, group)
138
+ @error = 'already a member'
139
+ return false
140
+ end
141
+ addUserToGroup(user, group)
142
+ end
143
+
111
144
  # Create Confluence space. Return space hash or nil.
112
145
  #
113
146
  # Params:
@@ -186,6 +219,15 @@ module Confluence # :nodoc:
186
219
  return ok?
187
220
  end
188
221
 
222
+ # Is user a member of this group? Returns boolean.
223
+ #
224
+ # Params:
225
+ # +user+:: Check membership for this user.
226
+ # +group+:: Check for membership in this group.
227
+ def member?(user, group)
228
+ getUserGroups(user).include?(group)
229
+ end
230
+
189
231
  def method_missing(method_name, *args)
190
232
  unless @token
191
233
  @error = "not authenticated"
@@ -232,6 +274,19 @@ module Confluence # :nodoc:
232
274
  return removeUser(login)
233
275
  end
234
276
 
277
+ # Remove user from group. Returns boolean.
278
+ #
279
+ # Params:
280
+ # +user+:: User to remove.
281
+ # +group+:: Remove user from this group.
282
+ def remove_user_from_group(user, group)
283
+ unless member?(user, group)
284
+ @error = 'not a member'
285
+ return false
286
+ end
287
+ removeUserFromGroup(user, group)
288
+ end
289
+
235
290
  # Make the Confluence exceptions more readable.
236
291
  #
237
292
  # Params:
@@ -1,5 +1,5 @@
1
1
  module Confluence
2
2
  class Client
3
- VERSION = '0.0.4'
3
+ VERSION = '0.0.5'
4
4
  end
5
5
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: confluence-client
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.4
4
+ version: 0.0.5
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,12 +9,12 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-04-06 00:00:00.000000000 -05:00
12
+ date: 2011-04-08 00:00:00.000000000 -05:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rspec
17
- requirement: &2156138740 !ruby/object:Gem::Requirement
17
+ requirement: &2157939440 !ruby/object:Gem::Requirement
18
18
  none: false
19
19
  requirements:
20
20
  - - ! '>='
@@ -22,7 +22,7 @@ dependencies:
22
22
  version: 2.5.0
23
23
  type: :development
24
24
  prerelease: false
25
- version_requirements: *2156138740
25
+ version_requirements: *2157939440
26
26
  description: Ruby client for the Confluence XML::RPC API
27
27
  email:
28
28
  - blair.christensen@gmail.com