jiraSOAP 0.5.3 → 0.6.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.
Files changed (46) hide show
  1. data/ChangeLog +22 -0
  2. data/README.markdown +6 -2
  3. data/lib/jiraSOAP.rb +6 -2
  4. data/lib/jiraSOAP/JIRAservice.rb +29 -32
  5. data/lib/jiraSOAP/api.rb +220 -59
  6. data/lib/jiraSOAP/entities.rb +29 -19
  7. data/lib/jiraSOAP/entities/attachment_metadata.rb +27 -0
  8. data/lib/jiraSOAP/entities/avatar.rb +12 -19
  9. data/lib/jiraSOAP/entities/comment.rb +17 -26
  10. data/lib/jiraSOAP/entities/component.rb +5 -0
  11. data/lib/jiraSOAP/entities/custom_field_value.rb +33 -0
  12. data/lib/jiraSOAP/entities/described_entity.rb +7 -0
  13. data/lib/jiraSOAP/entities/dynamic_entity.rb +8 -0
  14. data/lib/jiraSOAP/entities/entity.rb +43 -0
  15. data/lib/jiraSOAP/entities/field.rb +4 -0
  16. data/lib/jiraSOAP/entities/field_value.rb +4 -49
  17. data/lib/jiraSOAP/entities/filter.rb +7 -16
  18. data/lib/jiraSOAP/entities/issue.rb +32 -43
  19. data/lib/jiraSOAP/entities/issue_property.rb +9 -0
  20. data/lib/jiraSOAP/entities/issue_security_scheme.rb +4 -0
  21. data/lib/jiraSOAP/entities/issue_type.rb +8 -0
  22. data/lib/jiraSOAP/entities/named_entity.rb +7 -0
  23. data/lib/jiraSOAP/entities/notification_scheme.rb +4 -0
  24. data/lib/jiraSOAP/entities/permission.rb +12 -0
  25. data/lib/jiraSOAP/entities/permission_mapping.rb +12 -0
  26. data/lib/jiraSOAP/entities/permission_scheme.rb +8 -0
  27. data/lib/jiraSOAP/entities/priority.rb +9 -0
  28. data/lib/jiraSOAP/entities/project.rb +14 -24
  29. data/lib/jiraSOAP/entities/project_role.rb +11 -0
  30. data/lib/jiraSOAP/entities/remote_entity.rb +7 -0
  31. data/lib/jiraSOAP/entities/resolution.rb +4 -0
  32. data/lib/jiraSOAP/entities/scheme.rb +9 -0
  33. data/lib/jiraSOAP/entities/server_configuration.rb +56 -0
  34. data/lib/jiraSOAP/entities/server_info.rb +30 -0
  35. data/lib/jiraSOAP/entities/status.rb +4 -0
  36. data/lib/jiraSOAP/entities/time_info.rb +15 -0
  37. data/lib/jiraSOAP/entities/user.rb +8 -13
  38. data/lib/jiraSOAP/entities/version.rb +8 -16
  39. data/lib/jiraSOAP/handsoap_extensions.rb +29 -42
  40. data/lib/jiraSOAP/url.rb +3 -2
  41. metadata +193 -33
  42. data/lib/jiraSOAP/entities/abstract.rb +0 -93
  43. data/lib/jiraSOAP/entities/attachments.rb +0 -35
  44. data/lib/jiraSOAP/entities/issue_properties.rb +0 -39
  45. data/lib/jiraSOAP/entities/read_only.rb +0 -120
  46. data/lib/jiraSOAP/entities/schemes.rb +0 -25
data/lib/jiraSOAP/url.rb CHANGED
@@ -2,9 +2,10 @@
2
2
  # MRI by using the URI module.
3
3
  #
4
4
  # For any JIRA entity that has a URL object as an instance variable, you can
5
- # stick what ever type of object you want in the instance varible, as long as
5
+ # stick whatever type of object you want in the instance varible, as long as
6
6
  # the object has a #to_s method that returns a properly formatted URI.
7
7
  class URL
8
+
8
9
  # @return [NSURL, URI::HTTP] the type depends on your RUBY_ENGINE
9
10
  attr_accessor :url
10
11
 
@@ -15,7 +16,7 @@ class URL
15
16
  @url = URI.parse url
16
17
  end
17
18
 
18
- # The to_s method technically exists and so method_missing would not
19
+ # The #to_s method technically exists and so method_missing would not
19
20
  # work its magic to redirect it to @url so we manually override.
20
21
  # @return [String]
21
22
  def to_s
metadata CHANGED
@@ -4,9 +4,9 @@ version: !ruby/object:Gem::Version
4
4
  prerelease: false
5
5
  segments:
6
6
  - 0
7
- - 5
8
- - 3
9
- version: 0.5.3
7
+ - 6
8
+ - 0
9
+ version: 0.6.0
10
10
  platform: ruby
11
11
  authors:
12
12
  - Mark Rada
@@ -14,12 +14,11 @@ autorequire:
14
14
  bindir: bin
15
15
  cert_chain: []
16
16
 
17
- date: 2010-12-11 00:00:00 -05:00
17
+ date: 2010-12-31 00:00:00 -05:00
18
18
  default_executable:
19
19
  dependencies:
20
20
  - !ruby/object:Gem::Dependency
21
- name: handsoap
22
- prerelease: false
21
+ name: nokogiri
23
22
  requirement: &id001 !ruby/object:Gem::Requirement
24
23
  none: false
25
24
  requirements:
@@ -27,77 +26,219 @@ dependencies:
27
26
  - !ruby/object:Gem::Version
28
27
  segments:
29
28
  - 1
30
- - 1
31
- version: "1.1"
29
+ - 4
30
+ - 4
31
+ version: 1.4.4
32
32
  type: :runtime
33
+ prerelease: false
33
34
  version_requirements: *id001
34
35
  - !ruby/object:Gem::Dependency
35
- name: nokogiri
36
- prerelease: false
36
+ name: handsoap
37
37
  requirement: &id002 !ruby/object:Gem::Requirement
38
38
  none: false
39
39
  requirements:
40
- - - ">="
40
+ - - ~>
41
41
  - !ruby/object:Gem::Version
42
42
  segments:
43
43
  - 1
44
- - 4
45
- - 4
46
- version: 1.4.4
44
+ - 0
45
+ version: "1.0"
47
46
  type: :runtime
47
+ prerelease: false
48
48
  version_requirements: *id002
49
49
  - !ruby/object:Gem::Dependency
50
50
  name: minitest
51
- prerelease: false
52
51
  requirement: &id003 !ruby/object:Gem::Requirement
53
52
  none: false
54
53
  requirements:
55
- - - ">="
54
+ - - ~>
56
55
  - !ruby/object:Gem::Version
57
56
  segments:
57
+ - 2
58
58
  - 0
59
- version: "0"
59
+ - 0
60
+ version: 2.0.0
60
61
  type: :development
62
+ prerelease: false
61
63
  version_requirements: *id003
62
64
  - !ruby/object:Gem::Dependency
63
65
  name: yard
64
- prerelease: false
65
66
  requirement: &id004 !ruby/object:Gem::Requirement
66
67
  none: false
67
68
  requirements:
68
- - - ">="
69
+ - - ~>
69
70
  - !ruby/object:Gem::Version
70
71
  segments:
71
72
  - 0
72
- version: "0"
73
+ - 6
74
+ - 0
75
+ version: 0.6.0
73
76
  type: :development
77
+ prerelease: false
74
78
  version_requirements: *id004
75
79
  - !ruby/object:Gem::Dependency
76
80
  name: bluecloth
77
- prerelease: false
78
81
  requirement: &id005 !ruby/object:Gem::Requirement
79
82
  none: false
80
83
  requirements:
81
- - - ">="
84
+ - - ~>
82
85
  - !ruby/object:Gem::Version
83
86
  segments:
87
+ - 2
84
88
  - 0
85
- version: "0"
89
+ - 0
90
+ version: 2.0.0
86
91
  type: :development
92
+ prerelease: false
87
93
  version_requirements: *id005
88
94
  - !ruby/object:Gem::Dependency
89
- name: jeweler
90
- prerelease: false
95
+ name: yardstick
91
96
  requirement: &id006 !ruby/object:Gem::Requirement
92
97
  none: false
93
98
  requirements:
94
- - - ">="
99
+ - - ~>
95
100
  - !ruby/object:Gem::Version
96
101
  segments:
97
102
  - 0
98
- version: "0"
103
+ - 2
104
+ - 0
105
+ version: 0.2.0
99
106
  type: :development
107
+ prerelease: false
100
108
  version_requirements: *id006
109
+ - !ruby/object:Gem::Dependency
110
+ name: bundler
111
+ requirement: &id007 !ruby/object:Gem::Requirement
112
+ none: false
113
+ requirements:
114
+ - - ~>
115
+ - !ruby/object:Gem::Version
116
+ segments:
117
+ - 1
118
+ - 0
119
+ - 0
120
+ version: 1.0.0
121
+ type: :development
122
+ prerelease: false
123
+ version_requirements: *id007
124
+ - !ruby/object:Gem::Dependency
125
+ name: jeweler
126
+ requirement: &id008 !ruby/object:Gem::Requirement
127
+ none: false
128
+ requirements:
129
+ - - ~>
130
+ - !ruby/object:Gem::Version
131
+ segments:
132
+ - 1
133
+ - 5
134
+ - 1
135
+ version: 1.5.1
136
+ type: :development
137
+ prerelease: false
138
+ version_requirements: *id008
139
+ - !ruby/object:Gem::Dependency
140
+ name: reek
141
+ requirement: &id009 !ruby/object:Gem::Requirement
142
+ none: false
143
+ requirements:
144
+ - - ~>
145
+ - !ruby/object:Gem::Version
146
+ segments:
147
+ - 1
148
+ - 2
149
+ - 0
150
+ version: 1.2.0
151
+ type: :development
152
+ prerelease: false
153
+ version_requirements: *id009
154
+ - !ruby/object:Gem::Dependency
155
+ name: handsoap
156
+ requirement: &id010 !ruby/object:Gem::Requirement
157
+ none: false
158
+ requirements:
159
+ - - ~>
160
+ - !ruby/object:Gem::Version
161
+ segments:
162
+ - 1
163
+ - 1
164
+ version: "1.1"
165
+ type: :runtime
166
+ prerelease: false
167
+ version_requirements: *id010
168
+ - !ruby/object:Gem::Dependency
169
+ name: nokogiri
170
+ requirement: &id011 !ruby/object:Gem::Requirement
171
+ none: false
172
+ requirements:
173
+ - - ~>
174
+ - !ruby/object:Gem::Version
175
+ segments:
176
+ - 1
177
+ - 4
178
+ - 4
179
+ version: 1.4.4
180
+ type: :runtime
181
+ prerelease: false
182
+ version_requirements: *id011
183
+ - !ruby/object:Gem::Dependency
184
+ name: minitest
185
+ requirement: &id012 !ruby/object:Gem::Requirement
186
+ none: false
187
+ requirements:
188
+ - - ~>
189
+ - !ruby/object:Gem::Version
190
+ segments:
191
+ - 2
192
+ - 0
193
+ version: "2.0"
194
+ type: :development
195
+ prerelease: false
196
+ version_requirements: *id012
197
+ - !ruby/object:Gem::Dependency
198
+ name: yard
199
+ requirement: &id013 !ruby/object:Gem::Requirement
200
+ none: false
201
+ requirements:
202
+ - - ~>
203
+ - !ruby/object:Gem::Version
204
+ segments:
205
+ - 0
206
+ - 6
207
+ - 0
208
+ version: 0.6.0
209
+ type: :development
210
+ prerelease: false
211
+ version_requirements: *id013
212
+ - !ruby/object:Gem::Dependency
213
+ name: bluecloth
214
+ requirement: &id014 !ruby/object:Gem::Requirement
215
+ none: false
216
+ requirements:
217
+ - - ~>
218
+ - !ruby/object:Gem::Version
219
+ segments:
220
+ - 2
221
+ - 0
222
+ - 0
223
+ version: 2.0.0
224
+ type: :development
225
+ prerelease: false
226
+ version_requirements: *id014
227
+ - !ruby/object:Gem::Dependency
228
+ name: jeweler
229
+ requirement: &id015 !ruby/object:Gem::Requirement
230
+ none: false
231
+ requirements:
232
+ - - ~>
233
+ - !ruby/object:Gem::Version
234
+ segments:
235
+ - 1
236
+ - 5
237
+ - 0
238
+ version: 1.5.0
239
+ type: :development
240
+ prerelease: false
241
+ version_requirements: *id015
101
242
  description: Written to run fast and work on Ruby 1.9 as well as MacRuby
102
243
  email: mrada@marketcircle.com
103
244
  executables: []
@@ -113,17 +254,36 @@ files:
113
254
  - lib/jiraSOAP/JIRAservice.rb
114
255
  - lib/jiraSOAP/api.rb
115
256
  - lib/jiraSOAP/entities.rb
116
- - lib/jiraSOAP/entities/abstract.rb
117
- - lib/jiraSOAP/entities/attachments.rb
257
+ - lib/jiraSOAP/entities/attachment_metadata.rb
118
258
  - lib/jiraSOAP/entities/avatar.rb
119
259
  - lib/jiraSOAP/entities/comment.rb
260
+ - lib/jiraSOAP/entities/component.rb
261
+ - lib/jiraSOAP/entities/custom_field_value.rb
262
+ - lib/jiraSOAP/entities/described_entity.rb
263
+ - lib/jiraSOAP/entities/dynamic_entity.rb
264
+ - lib/jiraSOAP/entities/entity.rb
265
+ - lib/jiraSOAP/entities/field.rb
120
266
  - lib/jiraSOAP/entities/field_value.rb
121
267
  - lib/jiraSOAP/entities/filter.rb
122
268
  - lib/jiraSOAP/entities/issue.rb
123
- - lib/jiraSOAP/entities/issue_properties.rb
269
+ - lib/jiraSOAP/entities/issue_property.rb
270
+ - lib/jiraSOAP/entities/issue_security_scheme.rb
271
+ - lib/jiraSOAP/entities/issue_type.rb
272
+ - lib/jiraSOAP/entities/named_entity.rb
273
+ - lib/jiraSOAP/entities/notification_scheme.rb
274
+ - lib/jiraSOAP/entities/permission.rb
275
+ - lib/jiraSOAP/entities/permission_mapping.rb
276
+ - lib/jiraSOAP/entities/permission_scheme.rb
277
+ - lib/jiraSOAP/entities/priority.rb
124
278
  - lib/jiraSOAP/entities/project.rb
125
- - lib/jiraSOAP/entities/read_only.rb
126
- - lib/jiraSOAP/entities/schemes.rb
279
+ - lib/jiraSOAP/entities/project_role.rb
280
+ - lib/jiraSOAP/entities/remote_entity.rb
281
+ - lib/jiraSOAP/entities/resolution.rb
282
+ - lib/jiraSOAP/entities/scheme.rb
283
+ - lib/jiraSOAP/entities/server_configuration.rb
284
+ - lib/jiraSOAP/entities/server_info.rb
285
+ - lib/jiraSOAP/entities/status.rb
286
+ - lib/jiraSOAP/entities/time_info.rb
127
287
  - lib/jiraSOAP/entities/user.rb
128
288
  - lib/jiraSOAP/entities/version.rb
129
289
  - lib/jiraSOAP/handsoap_extensions.rb
@@ -146,7 +306,7 @@ require_paths:
146
306
  required_ruby_version: !ruby/object:Gem::Requirement
147
307
  none: false
148
308
  requirements:
149
- - - ">="
309
+ - - ~>
150
310
  - !ruby/object:Gem::Version
151
311
  segments:
152
312
  - 1
@@ -1,93 +0,0 @@
1
- module JIRA
2
-
3
- # @abstract
4
- # The base class for all JIRA objects that can be created by the server.
5
- class Entity
6
-
7
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
8
- # @return [JIRA::Entity]
9
- def self.new_with_xml_fragment(frag)
10
- entity = allocate
11
- entity.initialize_with_xml_fragment frag
12
- entity
13
- end
14
-
15
- # @raise [NotImplementedError] this method MUST be implemented in a non
16
- # abstract descendant
17
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
18
- def initialize_with_xml_fragment(frag)
19
- raise NotImplementedError.new, 'Subclasses should override and implement'
20
- end
21
- end
22
-
23
- # @abstract
24
- # Most JIRA objects will have an id attribute as a unique identifier in
25
- # their area.
26
- class DynamicEntity < JIRA::Entity
27
-
28
- # @return [String] usually holds a numerical value but for consistency with
29
- # with id's from custom fields this attribute is always a String
30
- attr_accessor :id
31
-
32
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
33
- def initialize_with_xml_fragment(frag)
34
- @id = (frag/'id').to_s
35
- end
36
- end
37
-
38
- # @abstract
39
- # Many JIRA objects include a name.
40
- class NamedEntity < JIRA::DynamicEntity
41
-
42
- # @return [String] a plain language name
43
- attr_accessor :name
44
-
45
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
46
- def initialize_with_xml_fragment(frag)
47
- super frag
48
- @name = (frag/'name').to_s
49
- end
50
- end
51
-
52
- # @abstract
53
- # Several JIRA objects include a short description.
54
- class DescribedEntity < JIRA::NamedEntity
55
-
56
- # @return [String] usually a short blurb
57
- attr_accessor :description
58
-
59
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
60
- def initialize_with_xml_fragment(frag)
61
- super frag
62
- @description = (frag/'description').to_s
63
- end
64
- end
65
-
66
- # @abstract
67
- # Represents a scheme used by the server. Not very useful for the sake of the
68
- # API; a more useful case might be if you wanted to emulate the server's
69
- # behaviour.
70
- class Scheme < JIRA::DescribedEntity
71
- # Schemes that inherit this class will have to be careful when they try
72
- # to encode the scheme type in an xml message.
73
- # @return [Class]
74
- alias_method :type, :class
75
- end
76
-
77
- # @abstract
78
- # A common base for most issue properties. Core issue properties have
79
- # an icon to go with them to help identify properties of issues more
80
- # quickly.
81
- class IssueProperty < JIRA::DescribedEntity
82
-
83
- # @return [URL] A NSURL on MacRuby and a URI::HTTP object in CRuby
84
- attr_accessor :icon
85
-
86
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
87
- def initialize_with_xml_fragment(frag)
88
- super frag
89
- @icon = (frag/'icon').to_url
90
- end
91
- end
92
-
93
- end
@@ -1,35 +0,0 @@
1
- module JIRA
2
-
3
- # Only contains the metadata for an attachment. The URI for an attachment
4
- # appears to be of the form
5
- # "{JIRA::JIRAService.endpoint_url}/secure/attachment/{#id}/{#filename}"
6
- class AttachmentMetadata < JIRA::NamedEntity
7
-
8
- # @return [String]
9
- attr_accessor :author
10
-
11
- # @return [Time]
12
- attr_accessor :create_date
13
-
14
- # @return [String]
15
- attr_accessor :filename
16
-
17
- # @return [Fixnum] measured in bytes
18
- attr_accessor :file_size
19
-
20
- # @return [String]
21
- attr_accessor :mime_type
22
-
23
- # @param [Handsoap::XmlQueryFront::NokogiriDriver] frag
24
- def initialize_with_xml_fragment(frag)
25
- super frag
26
- @author, @filename, @mime_type, @file_size, @create_date =
27
- frag.nodes( ['author', :to_s],
28
- ['filename', :to_s],
29
- ['mimetype', :to_s],
30
- ['filesize', :to_i],
31
- ['created', :to_date] )
32
- end
33
- end
34
-
35
- end