jira4r 1.1.0 → 1.2.0

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: b8ada4c41804643ca47f2445520aa7ef728e8ef4
4
- data.tar.gz: 2ab1becb6847e1282413ee2f9709098bb8c51297
3
+ metadata.gz: adf2fa1d295d434995d5534c99dae7a8538c6aa4
4
+ data.tar.gz: ea8edcd4401daab6d4f68d71da02b060d8920057
5
5
  SHA512:
6
- metadata.gz: e3d1dd5c6ff78c010f2f1cce0e4b494d94a723c36fd77346b8d52e772e70bfdb21529798143a2dc88afb8a6e61204c55218238d138cc94d3df53284ecae16acd
7
- data.tar.gz: 8f66fc751257eec1be8c6b1035c8353d11ce41d186c524aa0500179f3051a254c42c6f9042f03368127cbe02cc516211736c15fa14839650702e5b3c782cc657
6
+ metadata.gz: 02913c48f876d2d9d2be1233f9bfa4242538080fb207e125c7489752c452ab57a01b4066e5948f6d0529314f7825ac47eada3b38c850cb7318e8a3465a252464
7
+ data.tar.gz: 289349ffd21f481d9e8f6783220649174c8e2128590e674d85d6fc60a724b9b98e342aa77de6462965f6c5926d7edeacbe6de72d1dbc7f125fa7727ca3c629d4
checksums.yaml.gz.sig CHANGED
Binary file
@@ -1,29 +1,28 @@
1
1
  require 'logger'
2
- require 'rubygems'
3
- gem 'soap4r'
2
+ require 'soap/rpc/standaloneServer'
4
3
 
5
4
  module Jira4R
6
-
5
+
7
6
  class JiraTool
8
7
  attr_accessor :enhanced
9
-
8
+
10
9
  # Create a new JiraTool
11
- #
10
+ #
12
11
  # where:
13
12
  # version ... the version of the SOAP API you wish to use - currently supported versions [ 2 ]
14
13
  # base_url ... the base URL of the JIRA instance - eg. http://confluence.atlassian.com
15
14
  def initialize(version, base_url)
16
15
  @version = version
17
- @base_url = base_url
16
+ @base_url = base_url
18
17
  @logger = Logger.new(STDERR)
19
18
  @endpoint_url = "#{@base_url}/rpc/soap/jirasoapservice-v#{version}"
20
19
  end
21
-
20
+
22
21
  #Assign a new logger to the tool. By default a STDERR logger is used.
23
22
  def logger=(logger)
24
23
  @logger = logger
25
24
  end
26
-
25
+
27
26
  #Retrieve the driver, creating as required.
28
27
  def driver()
29
28
  if not @driver
@@ -32,7 +31,7 @@ module Jira4R
32
31
  require "jira4r/v#{@version}/jiraService.rb"
33
32
  require "jira4r/v#{@version}/JiraSoapServiceDriver.rb"
34
33
  require "jira4r/v#{@version}/jiraServiceMappingRegistry.rb"
35
-
34
+
36
35
  service_classname = "Jira4R::V#{@version}::JiraSoapService"
37
36
  puts "Service: #{service_classname}"
38
37
  service = eval(service_classname)
@@ -40,37 +39,37 @@ module Jira4R
40
39
  end
41
40
  @driver
42
41
  end
43
-
42
+
44
43
  #Assign a wiredump file prefix to the driver.
45
44
  def wiredump_file_base=(base)
46
45
  driver().wiredump_file_base = base
47
46
  end
48
-
49
-
50
- #Login to the JIRA instance, storing the token for later calls.
51
- #
47
+
48
+
49
+ #Login to the JIRA instance, storing the token for later calls.
50
+ #
52
51
  #This is typically the first call that is made on the JiraTool.
53
52
  def login(username, password)
54
53
  @token = driver().login(username, password)
55
54
  end
56
55
 
57
- #Clients should avoid using the authentication token directly.
56
+ #Clients should avoid using the authentication token directly.
58
57
  def token()
59
58
  @token
60
59
  end
61
-
60
+
62
61
  #Call a method on the driver, adding in the authentication token previously determined using login()
63
62
  def call_driver(method_name, *args)
64
63
  @logger.debug("Finding method #{method_name}")
65
- method = driver().method(method_name)
66
-
64
+ method = driver().method(method_name)
65
+
67
66
  if args.length > 0
68
- method.call(@token, *args)
67
+ method.call(@token, *args)
69
68
  else
70
69
  method.call(@token)
71
70
  end
72
71
  end
73
-
72
+
74
73
  #Retrieve a project without the associated PermissionScheme.
75
74
  #This will be significantly faster for larger Jira installations.
76
75
  #See: JRA-10660
@@ -78,17 +77,17 @@ module Jira4R
78
77
  puts "getProjectNoScheme is deprecated. Please call getProjectNoSchemes."
79
78
  getProjectNoSchemes(key)
80
79
  end
81
-
80
+
82
81
  def getProjectNoSchemes(key)
83
82
  self.getProjectsNoSchemes().find { |project| project.key == key }
84
83
  end
85
-
84
+
86
85
  def getProject(key)
87
86
  #Jira > 3.10 has been patched to support this method directly as getProjectByKey
88
87
  puts "Using deprecated JIRA4R API call getProject(key); replace with getProjectByKey(key)"
89
88
  return getProjectByKey(key)
90
89
  end
91
-
90
+
92
91
  def getProjectByKey( projectKey )
93
92
  begin
94
93
  return call_driver( "getProjectByKey", projectKey )
@@ -101,7 +100,7 @@ module Jira4R
101
100
  end
102
101
  end
103
102
  end
104
-
103
+
105
104
  def getGroup( groupName )
106
105
  begin
107
106
  return call_driver( "getGroup", groupName )
@@ -114,62 +113,62 @@ module Jira4R
114
113
  end
115
114
  end
116
115
  end
117
-
116
+
118
117
  def getProjectRoleByName( projectRoleName )
119
118
  getProjectRoles.each{ |projectRole|
120
119
  return projectRole if projectRole.name == projectRoleName
121
120
  }
122
121
  end
123
-
122
+
124
123
  def getPermissionScheme( permissionSchemeName )
125
- self.getPermissionSchemes().each { |permission_scheme|
124
+ self.getPermissionSchemes().each { |permission_scheme|
126
125
  return permission_scheme if permission_scheme.name == permissionSchemeName
127
126
  }
128
127
  return nil
129
128
  end
130
-
129
+
131
130
  def getNotificationScheme( notificationSchemeName )
132
- self.getNotificationSchemes().each { |notification_scheme|
131
+ self.getNotificationSchemes().each { |notification_scheme|
133
132
  return notification_scheme if notification_scheme.name == notificationSchemeName
134
133
  }
135
134
  return nil
136
135
  end
137
-
136
+
138
137
  def getPermission( permissionName )
139
138
  if not @permissions
140
139
  @permissions = self.getAllPermissions()
141
140
  end
142
-
141
+
143
142
  @permissions.each { |permission|
144
143
  return permission if permission.name.downcase == permissionName.downcase
145
144
  }
146
-
145
+
147
146
  @logger.warn("No permission #{permissionName} found")
148
147
  return nil
149
148
  end
150
-
149
+
151
150
  def findPermission(allowedPermissions, permissionName)
152
151
  allowedPermissions.each { |allowedPermission|
153
152
  #puts "Checking #{allowedPermission.name} against #{permissionName} "
154
153
  return allowedPermission if allowedPermission.name == permissionName
155
154
  }
156
- return nil
155
+ return nil
157
156
  end
158
-
157
+
159
158
  def findEntityInPermissionMapping(permissionMapping, entityName)
160
159
  permissionMapping.remoteEntities.each { |entity|
161
160
  return entity if entity.name == entityName
162
161
  }
163
162
  return nil
164
163
  end
165
-
164
+
166
165
  #Removes entity
167
166
  def setPermissions( permissionScheme, allowedPermissions, entity)
168
167
  allowedPermissions = [ allowedPermissions ].flatten.compact
169
168
  #Remove permissions that are no longer allowed
170
169
  permissionScheme.permissionMappings.each { |mapping|
171
170
  next unless findEntityInPermissionMapping(mapping, entity.name)
172
-
171
+
173
172
  allowedPermission = findPermission(allowedPermissions, mapping.permission.name)
174
173
  if allowedPermission
175
174
  puts "Already has #{allowedPermission.name} in #{permissionScheme.name} for #{entity.name}"
@@ -180,12 +179,12 @@ module Jira4R
180
179
  puts "Deleting #{mapping.permission.name} from #{permissionScheme.name} for #{entity.name}"
181
180
  deletePermissionFrom( permissionScheme, mapping.permission, entity)
182
181
  }
183
-
182
+
184
183
  puts allowedPermissions.inspect
185
184
  allowedPermissions.each { |allowedPermission|
186
185
  puts "Granting #{allowedPermission.name} to #{permissionScheme.name} for #{entity.name}"
187
- addPermissionTo(permissionScheme, allowedPermission, entity)
188
- }
186
+ addPermissionTo(permissionScheme, allowedPermission, entity)
187
+ }
189
188
  end
190
189
 
191
190
  private
@@ -198,14 +197,14 @@ private
198
197
  end
199
198
  }
200
199
  end
201
-
200
+
202
201
  def method_missing(method_name, *args)
203
202
  args = fix_args(args)
204
203
  call_driver(method_name, *args)
205
204
  end
206
-
207
-
208
-
209
- end
205
+
206
+
207
+
208
+ end
210
209
 
211
210
  end
data/lib/jira4r.rb CHANGED
@@ -1,25 +1,17 @@
1
- $:.unshift File.dirname(__FILE__)
2
-
3
- require 'rubygems' # i'd like to not need this
4
-
5
- begin
6
- gem 'soap4r'
7
- require 'soap/rpc/driver'
8
- rescue LoadError
9
- raise "jira4r requires soap4r. to install: gem install soap4r"
10
- end
1
+ gem 'soap2r'
2
+ require 'soap/rpc/driver'
11
3
 
12
4
  require 'jira4r/jira_tool'
13
5
 
14
6
  # Due to refactoring, this class should no longer be used.
15
7
  module Jira
16
8
  class JiraTool
17
-
9
+
18
10
  def initialize(version, base_url)
19
11
  puts "Jira::JiraTool is deprecated; use Jira4R::JiraTool"
20
12
  @proxy = ::Jira4R::JiraTool.new(version, base_url)
21
13
  end
22
-
14
+
23
15
  def method_missing(name, *args)
24
16
  @proxy.send(name, *args)
25
17
  end
data.tar.gz.sig CHANGED
@@ -1 +1 @@
1
- R�%&�����]���gV��x�'���JU]���gk�����MIswWu���e��2��z���Ӳ�c���蒍E^ZAaX-�8ND�ުVogRgz��ٳ�\>��4��#]CVM2�Y�?��{-��\�;�f��=F˵@>qP�'O�zq�L�}>!���]�z��#osΔ�t�exFJ�62їd[+D%�z
1
+ }����49 ��^qP;x8]�����q6�ᩐv�?'��Qz@) (l�{���Mo#�-�R ۨa<������h>yOFUݥ8pT�����/�,��5���R���pY���e���W�_��_)9t���<�N&p#�g 7YZS�� Kop�*�ԧ ��m
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jira4r
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.1.0
4
+ version: 1.2.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Michael Grosser
@@ -31,10 +31,10 @@ cert_chain:
31
31
  y0kCSWmK6D+x/SbfS6r7Ke07MRqziJdB9GuE1+0cIRuFh8EQ+LN6HXCKM5pon/GU
32
32
  ycwMXfl0
33
33
  -----END CERTIFICATE-----
34
- date: 2013-10-12 00:00:00.000000000 Z
34
+ date: 2013-11-05 00:00:00.000000000 Z
35
35
  dependencies:
36
36
  - !ruby/object:Gem::Dependency
37
- name: soap4r
37
+ name: soap2r
38
38
  requirement: !ruby/object:Gem::Requirement
39
39
  requirements:
40
40
  - - '>='
metadata.gz.sig CHANGED
Binary file