jiraSOAP 0.7.1 → 0.8.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (66) hide show
  1. data/.yardopts +2 -3
  2. data/ChangeLog +15 -0
  3. data/LICENSE.txt +1 -1
  4. data/README.markdown +51 -41
  5. data/Rakefile +57 -0
  6. data/docs/GettingStarted.markdown +36 -0
  7. data/lib/jiraSOAP.rb +7 -4
  8. data/lib/jiraSOAP/api.rb +59 -53
  9. data/lib/jiraSOAP/api/additions.rb +4 -6
  10. data/lib/jiraSOAP/api/attachments.rb +18 -8
  11. data/lib/jiraSOAP/api/avatars.rb +30 -17
  12. data/lib/jiraSOAP/api/comments.rb +16 -11
  13. data/lib/jiraSOAP/api/filters.rb +13 -10
  14. data/lib/jiraSOAP/api/issue_data_types.rb +29 -21
  15. data/lib/jiraSOAP/api/issues.rb +46 -31
  16. data/lib/jiraSOAP/api/project_roles.rb +22 -15
  17. data/lib/jiraSOAP/api/projects.rb +33 -20
  18. data/lib/jiraSOAP/api/schemes.rb +9 -9
  19. data/lib/jiraSOAP/api/server_info.rb +11 -9
  20. data/lib/jiraSOAP/api/users.rb +58 -10
  21. data/lib/jiraSOAP/api/versions.rb +15 -11
  22. data/lib/jiraSOAP/api/worklog.rb +14 -0
  23. data/lib/jiraSOAP/core_extensions.rb +8 -0
  24. data/lib/jiraSOAP/entities.rb +3 -0
  25. data/lib/jiraSOAP/entities/attachment_metadata.rb +28 -9
  26. data/lib/jiraSOAP/entities/avatar.rb +29 -10
  27. data/lib/jiraSOAP/entities/comment.rb +37 -11
  28. data/lib/jiraSOAP/entities/component.rb +1 -1
  29. data/lib/jiraSOAP/entities/custom_field_value.rb +17 -12
  30. data/lib/jiraSOAP/entities/described_entity.rb +9 -5
  31. data/lib/jiraSOAP/entities/dynamic_entity.rb +12 -5
  32. data/lib/jiraSOAP/entities/entity.rb +33 -27
  33. data/lib/jiraSOAP/entities/field.rb +1 -1
  34. data/lib/jiraSOAP/entities/field_value.rb +16 -6
  35. data/lib/jiraSOAP/entities/filter.rb +18 -5
  36. data/lib/jiraSOAP/entities/issue.rb +74 -29
  37. data/lib/jiraSOAP/entities/issue_property.rb +9 -6
  38. data/lib/jiraSOAP/entities/issue_security_scheme.rb +1 -1
  39. data/lib/jiraSOAP/entities/issue_type.rb +9 -4
  40. data/lib/jiraSOAP/entities/named_entity.rb +8 -4
  41. data/lib/jiraSOAP/entities/notification_scheme.rb +1 -1
  42. data/lib/jiraSOAP/entities/permission.rb +14 -6
  43. data/lib/jiraSOAP/entities/permission_mapping.rb +9 -5
  44. data/lib/jiraSOAP/entities/permission_scheme.rb +7 -4
  45. data/lib/jiraSOAP/entities/priority.rb +7 -4
  46. data/lib/jiraSOAP/entities/project.rb +29 -13
  47. data/lib/jiraSOAP/entities/project_role.rb +3 -2
  48. data/lib/jiraSOAP/entities/resolution.rb +1 -1
  49. data/lib/jiraSOAP/entities/scheme.rb +5 -1
  50. data/lib/jiraSOAP/entities/server_configuration.rb +39 -14
  51. data/lib/jiraSOAP/entities/server_info.rb +20 -8
  52. data/lib/jiraSOAP/entities/status.rb +1 -1
  53. data/lib/jiraSOAP/entities/time_info.rb +12 -5
  54. data/lib/jiraSOAP/entities/user.rb +8 -4
  55. data/lib/jiraSOAP/entities/usergroup.rb +15 -0
  56. data/lib/jiraSOAP/entities/username.rb +7 -1
  57. data/lib/jiraSOAP/entities/version.rb +20 -12
  58. data/lib/jiraSOAP/entities/worklog.rb +28 -0
  59. data/lib/jiraSOAP/handsoap_extensions.rb +31 -80
  60. data/lib/jiraSOAP/{JIRAservice.rb → jira_service.rb} +19 -14
  61. data/lib/jiraSOAP/{macruby_bonuses.rb → macruby_extensions.rb} +5 -14
  62. data/lib/jiraSOAP/nokogiri_extensions.rb +68 -0
  63. data/lib/jiraSOAP/url.rb +10 -2
  64. data/lib/jiraSOAP/version.rb +3 -0
  65. metadata +29 -55
  66. data/yard-jiraSOAP.rb +0 -65
@@ -1,12 +1,13 @@
1
- module JIRA
2
-
1
+ ##
3
2
  # Methods declared here do not directly map to methods defined in JIRA's
4
3
  # SOAP API javadoc. They are generally close to something from the javadoc
5
4
  # but with some extra conveniences.
6
- module RemoteAPIAdditions
5
+ module JIRA::RemoteAPIAdditions
7
6
 
7
+ ##
8
8
  # Returns the first field that exactly matches the given
9
9
  # name, otherwise returns nil.
10
+ #
10
11
  # @param [String] name
11
12
  # @return [JIRA::Field,nil]
12
13
  def get_custom_field_with_name name
@@ -16,7 +17,4 @@ module RemoteAPIAdditions
16
17
  nil
17
18
  end
18
19
 
19
- # @todo a method for getting attachments
20
- end
21
-
22
20
  end
@@ -1,22 +1,34 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with issue Attachments and their metadata
1
+ module JIRA::RemoteAPI
4
2
 
3
+ ##
4
+ # @note The JIRA SOAP API only works with the metadata for attachments,
5
+ # you will have to look at your servers configuration to figure
6
+ # out the proper URL to call to get attachment data.
7
+ #
8
+ # This module has implemented all relevant APIs as of JIRA 4.2.
9
+
10
+ # @group Attachments
11
+
12
+ ##
5
13
  # @todo change method name to reflect that you only get metadata
14
+ #
6
15
  # @param [String] issue_key
7
16
  # @return [Array<JIRA::AttachmentMetadata>]
8
- def get_attachments_for_issue_with_key issue_key
9
- jira_call JIRA::AttachmentMetadata, 'getAttachmentsFromIssue', issue_key
17
+ def attachments_for_issue_with_key issue_key
18
+ array_jira_call JIRA::AttachmentMetadata, 'getAttachmentsFromIssue', issue_key
10
19
  end
20
+ alias_method :get_attachments_for_issue_with_key, :attachments_for_issue_with_key
11
21
 
22
+ ##
12
23
  # Expect this method to be slow.
24
+ #
13
25
  # @param [String] issue_key
14
26
  # @param [Array<String>] filenames names to put on the files
15
27
  # @param [Array<String>] data base64 encoded data
16
28
  # @return [Boolean] true if successful
17
29
  def add_base64_encoded_attachments_to_issue_with_key issue_key, filenames, data
18
30
  invoke('soap:addBase64EncodedAttachmentsToIssue') { |msg|
19
- msg.add 'soap:in0', @auth_token
31
+ msg.add 'soap:in0', self.auth_token
20
32
  msg.add 'soap:in1', issue_key
21
33
  msg.add 'soap:in2' do |submsg|
22
34
  filenames.each { |filename| submsg.add 'filenames', filename }
@@ -28,6 +40,4 @@ module RemoteAPI
28
40
  true
29
41
  end
30
42
 
31
- # @endgroup
32
- end
33
43
  end
@@ -1,45 +1,58 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with Avatars
1
+ module JIRA::RemoteAPI
4
2
 
3
+ # @group Avatars
4
+
5
+ ##
5
6
  # Gets you the default avatar image for a project; if you want all
6
7
  # the avatars for a project, use {#get_project_avatars_for_key}.
8
+ #
7
9
  # @param [String] project_key
8
10
  # @return [JIRA::Avatar]
9
- def get_project_avatar_for_key project_key
10
- JIRA::Avatar.new_with_xml call( 'getProjectAvatar', project_key ).first
11
+ def project_avatar_for_key project_key
12
+ JIRA::Avatar.new_with_xml jira_call( 'getProjectAvatar', project_key )
11
13
  end
14
+ alias_method :get_project_avatar_for_key, :project_avatar_for_key
12
15
 
16
+ ##
13
17
  # Gets ALL avatars for a given project with this method; if you
14
18
  # just want the project avatar, use {#get_project_avatar_for_key}.
19
+ #
15
20
  # @param [String] project_key
16
21
  # @param [Boolean] include_default_avatars
17
22
  # @return [Array<JIRA::Avatar>]
18
- def get_project_avatars_for_key project_key, include_default_avatars = false
19
- jira_call JIRA::Avatar, 'getProjectAvatars', project_key, include_default_avatars
23
+ def project_avatars_for_key project_key, include_default_avatars = false
24
+ array_jira_call JIRA::Avatar, 'getProjectAvatars', project_key, include_default_avatars
20
25
  end
26
+ alias_method :get_project_avatars_for_key, :project_avatars_for_key
21
27
 
22
- # @note You cannot delete system avatars
23
- # @note You need project administration permissions to delete an avatar
28
+ ##
29
+ # @note You cannot delete system avatars, and you need project
30
+ # administration permissions to delete other avatars.
31
+ #
24
32
  # @param [String] avatar_id
25
33
  # @return [Boolean] true if successful
26
34
  def delete_project_avatar_with_id avatar_id
27
- call 'deleteProjectAvatar', avatar_id
35
+ jira_call 'deleteProjectAvatar', avatar_id
28
36
  true
29
37
  end
30
38
 
31
- # @note You need project administration permissions to edit an avatar
32
- # @note JIRA does not care if the avatar_id is valid
39
+ ##
40
+ # @note You need project administration permissions to edit an avatar.
41
+ # @note JIRA does not care if the avatar_id is valid.
42
+ #
33
43
  # Change the project avatar to another existing avatar. If you want to
34
44
  # upload a new avatar and set it to be the new project avatar use
35
45
  # {#set_new_project_avatar_for_project_with_key} instead.
46
+ #
36
47
  # @return [Boolean] true if successful
37
48
  def set_project_avatar_for_project_with_key project_key, avatar_id
38
- call 'setProjectAvatar', project_key, avatar_id
49
+ jira_call 'setProjectAvatar', project_key, avatar_id
39
50
  true
40
51
  end
41
52
 
42
- # @note You need project administration permissions to edit an avatar
53
+ ##
54
+ # @note You need project administration permissions to edit an avatar.
55
+ #
43
56
  # Use this method to create a new custom avatar for a project and set it
44
57
  # to be current avatar for the project.
45
58
  #
@@ -48,17 +61,17 @@ module RemoteAPI
48
61
  # then it will be upscaled to 48 pixels.
49
62
  # The small version of the avatar image (16 pixels) is generated
50
63
  # automatically.
64
+ #
51
65
  # If you want to switch a project avatar to an avatar that already exists on
52
66
  # the system then use {#set_project_avatar_for_project_with_key} instead.
67
+ #
53
68
  # @param [String] project_key
54
69
  # @param [String] mime_type
55
70
  # @param [String] base64_image
56
71
  # @return [Boolean] true if successful
57
72
  def set_new_project_avatar_for_project_with_key project_key, mime_type, base64_image
58
- call 'setNewProjectAvatar', project_key, mime_type, base64_image
73
+ jira_call 'setNewProjectAvatar', project_key, mime_type, base64_image
59
74
  true
60
75
  end
61
76
 
62
- # @endgroup
63
- end
64
77
  end
@@ -1,33 +1,38 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with Comments
1
+ module JIRA::RemoteAPI
2
+
3
+ # @group Comments
4
4
 
5
5
  # @param [String] issue_key
6
6
  # @param [JIRA::Comment] comment
7
7
  # @return [Boolean] true if successful
8
8
  def add_comment_to_issue_with_key issue_key, comment
9
- call 'addComment', issue_key, comment
9
+ jira_call 'addComment', issue_key, comment
10
10
  true
11
11
  end
12
12
 
13
13
  # @param [String] id
14
14
  # @return [JIRA::Comment]
15
- def get_comment_with_id id
16
- JIRA::Comment.new_with_xml call( 'getComment', id ).first
15
+ def comment_with_id id
16
+ JIRA::Comment.new_with_xml jira_call( 'getComment', id )
17
17
  end
18
+ alias_method :get_comment_with_id, :comment_with_id
18
19
 
19
20
  # @param [String] issue_key
20
21
  # @return [Array<JIRA::Comment>]
21
- def get_comments_for_issue_with_key issue_key
22
- jira_call JIRA::Comment, 'getComments', issue_key
22
+ def comments_for_issue_with_key issue_key
23
+ array_jira_call JIRA::Comment, 'getComments', issue_key
23
24
  end
25
+ alias_method :get_comments_for_issue_with_key, :comments_for_issue_with_key
24
26
 
25
27
  # @param [JIRA::Comment] comment
26
28
  # @return [JIRA::Comment]
27
29
  def update_comment comment
28
- JIRA::Comment.new_with_xml call( 'editComment', comment ).first
30
+ JIRA::Comment.new_with_xml jira_call( 'editComment', comment )
31
+ end
32
+
33
+ # @param [JIRA::Comment]
34
+ def permission_to_edit_comment? comment
35
+ jira_call( 'hasPermissionToEditComment', comment ).to_boolean
29
36
  end
30
37
 
31
- # @endgroup
32
- end
33
38
  end
@@ -1,20 +1,23 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with Filters
1
+ module JIRA::RemoteAPI
4
2
 
3
+ # @group Filters
4
+
5
+ ##
5
6
  # Retrieves favourite filters for the currently logged in user.
7
+ #
6
8
  # @return [Array<JIRA::Filter>]
7
- def get_favourite_filters
8
- jira_call JIRA::Filter, 'getFavouriteFilters'
9
+ def favourite_filters
10
+ array_jira_call JIRA::Filter, 'getFavouriteFilters'
9
11
  end
10
- alias_method :get_favorite_filters, :get_favourite_filters
12
+ alias_method :get_favourite_filters, :favourite_filters
13
+ alias_method :get_favorite_filters, :favourite_filters
14
+ alias_method :favorite_filters, :favourite_filters
11
15
 
12
16
  # @param [String] id
13
17
  # @return [Fixnum]
14
- def get_issue_count_for_filter_with_id id
15
- call( 'getIssueCountForFilter', id ).to_i
18
+ def issue_count_for_filter_with_id id
19
+ jira_call( 'getIssueCountForFilter', id ).to_i
16
20
  end
21
+ alias_method :get_issue_count_for_filter_with_id, :issue_count_for_filter_with_id
17
22
 
18
- # @endgroup
19
- end
20
23
  end
@@ -1,51 +1,59 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with issue attributes
1
+ module JIRA::RemoteAPI
2
+
3
+ # @group Issue attributes
4
4
 
5
5
  # @return [Array<JIRA::Priority>]
6
- def get_priorities
7
- jira_call JIRA::Priority, 'getPriorities'
6
+ def priorities
7
+ array_jira_call JIRA::Priority, 'getPriorities'
8
8
  end
9
+ alias_method :get_priorities, :priorities
9
10
 
10
11
  # @return [Array<JIRA::Resolution>]
11
- def get_resolutions
12
- jira_call JIRA::Resolution, 'getResolutions'
12
+ def resolutions
13
+ array_jira_call JIRA::Resolution, 'getResolutions'
13
14
  end
15
+ alias_method :get_resolutions, :resolutions
14
16
 
15
17
  # @return [Array<JIRA::Field>]
16
- def get_custom_fields
17
- jira_call JIRA::Field, 'getCustomFields'
18
+ def custom_fields
19
+ array_jira_call JIRA::Field, 'getCustomFields'
18
20
  end
21
+ alias_method :get_custom_fields, :custom_fields
19
22
 
20
23
  # @return [Array<JIRA::IssueType>]
21
- def get_issue_types
22
- jira_call JIRA::IssueType, 'getIssueTypes'
24
+ def issue_types
25
+ array_jira_call JIRA::IssueType, 'getIssueTypes'
23
26
  end
27
+ alias_method :get_issue_types, :issue_types
24
28
 
25
29
  # @return [Array<JIRA::Status>]
26
- def get_statuses
27
- jira_call JIRA::Status, 'getStatuses'
30
+ def statuses
31
+ array_jira_call JIRA::Status, 'getStatuses'
28
32
  end
33
+ alias_method :get_statuses, :statuses
29
34
 
30
35
  # @return [Array<JIRA::IssueType>]
31
- def get_subtask_issue_types
32
- jira_call JIRA::IssueType, 'getSubTaskIssueTypes'
36
+ def subtask_issue_types
37
+ array_jira_call JIRA::IssueType, 'getSubTaskIssueTypes'
33
38
  end
39
+ alias_method :get_subtask_issue_types, :subtask_issue_types
34
40
 
35
41
  # @param [String] project_id
36
42
  # @return [Array<JIRA::IssueType>]
37
- def get_subtask_issue_types_for_project_with_id project_id
38
- jira_call JIRA::IssueType, 'getSubTaskIssueTypesForProject', project_id
43
+ def subtask_issue_types_for_project_with_id project_id
44
+ array_jira_call JIRA::IssueType, 'getSubTaskIssueTypesForProject', project_id
39
45
  end
46
+ alias_method :get_subtask_issue_types_for_project_with_id, :subtask_issue_types_for_project_with_id
40
47
 
41
- # I have no idea what this method does.
48
+ ##
42
49
  # @todo find out what this method does
50
+ #
51
+ # I have no idea what this method does.
52
+ #
43
53
  # @return [Boolean] true if no exceptions were raised
44
54
  def refresh_custom_fields
45
- call 'refreshCustomFields'
55
+ jira_call 'refreshCustomFields'
46
56
  true
47
57
  end
48
58
 
49
- # @endgroup
50
- end
51
59
  end
@@ -1,57 +1,68 @@
1
- module JIRA
2
- module RemoteAPI
3
- # @group Working with Issues
1
+ module JIRA::RemoteAPI
4
2
 
3
+ # @group Issues
4
+
5
+ ##
5
6
  # This method is the equivalent of making an advanced search from the
6
7
  # web interface.
7
8
  #
8
9
  # During my own testing, I found that HTTP requests could timeout for really
9
- # large requests (~2500 results). So I set a more reasonable upper limit;
10
- # feel free to override it, but be aware of the potential issues.
10
+ # large requests (~2500 results) if you are not on the same network. So I set
11
+ # a more reasonable upper limit; feel free to override it, but be aware of
12
+ # the potential issues.
13
+ #
14
+ # The {JIRA::Issue} structure does not include any comments or attachments.
11
15
  #
12
- # The JIRA::Issue structure does not include any comments or attachments.
13
16
  # @param [String] jql_query JQL query as a string
14
17
  # @param [Fixnum] max_results limit on number of returned results;
15
- # the value may be overridden by the server if max_results is too large
18
+ # the value may be overridden by the server if max_results is too large
16
19
  # @return [Array<JIRA::Issue>]
17
- def get_issues_from_jql_search jql_query, max_results = 2000
18
- jira_call JIRA::Issue, 'getIssuesFromJqlSearch', jql_query, max_results
20
+ def issues_from_jql_search jql_query, max_results = 2000
21
+ array_jira_call JIRA::Issue, 'getIssuesFromJqlSearch', jql_query, max_results
19
22
  end
23
+ alias_method :get_issues_from_jql_search, :issues_from_jql_search
20
24
 
25
+ ##
21
26
  # This method can update most, but not all, issue fields. Some limitations
22
27
  # are because of how the API is designed, and some are because I have not
23
- # yet implemented the ability to update fields made of custom objects (things
24
- # in the JIRA module).
28
+ # yet implemented the ability to update fields made of custom objects
29
+ # (things in the JIRA module).
25
30
  #
26
31
  # Fields known to not update via this method:
32
+ #
27
33
  # - status - use {#progress_workflow_action}
28
34
  # - attachments - use {#add_base64_encoded_attachments_to_issue_with_key}
29
35
  #
30
- # Though JIRA::FieldValue objects have an id field, they do not expect to be
31
- # given id values. You must use the name of the field you wish to update.
36
+ # Though {JIRA::FieldValue} objects have an id field, they do not expect
37
+ # to be given id values. You must use the name of the field you wish to
38
+ # update.
39
+ #
32
40
  # @example Usage With A Normal Field
33
- # summary = JIRA::FieldValue.new 'summary', ['My new summary']
41
+ # summary = JIRA::FieldValue.new 'summary', ['My new summary']
34
42
  # @example Usage With A Custom Field
35
- # custom_field = JIRA::FieldValue.new 'customfield_10060', ['123456']
43
+ # custom_field = JIRA::FieldValue.new 'customfield_10060', ['123456']
36
44
  # @example Setting a field to be blank/nil
37
- # description = JIRA::FieldValue.new 'description'
45
+ # description = JIRA::FieldValue.new 'description'
38
46
  # @example Calling the method to update an issue
39
47
  # jira_service_instance.update_issue 'PROJECT-1', description, custom_field
48
+ #
40
49
  # @param [String] issue_key
41
50
  # @param [JIRA::FieldValue] *field_values
42
51
  # @return [JIRA::Issue]
43
52
  def update_issue issue_key, *field_values
44
53
  response = invoke('soap:updateIssue') { |msg|
45
- msg.add 'soap:in0', @auth_token
54
+ msg.add 'soap:in0', self.auth_token
46
55
  msg.add 'soap:in1', issue_key
47
56
  msg.add 'soap:in2' do |submsg|
48
57
  field_values.each { |fv| fv.soapify_for submsg }
49
58
  end
50
59
  }
51
- JIRA::Issue.new_with_xml response.document.xpath('//updateIssueReturn').first
60
+ JIRA::Issue.new_with_xml response.document.element.xpath('//updateIssueReturn').first
52
61
  end
53
62
 
63
+ ##
54
64
  # Some fields will be ignored when an issue is created.
65
+ #
55
66
  # - reporter - you cannot override this value at creation
56
67
  # - resolution
57
68
  # - attachments
@@ -59,44 +70,48 @@ module RemoteAPI
59
70
  # - status
60
71
  # - due date - I think this is a bug in jiraSOAP or JIRA
61
72
  # - environment - I think this is a bug in jiraSOAP or JIRA
73
+ #
62
74
  # @param [JIRA::Issue] issue
63
75
  # @return [JIRA::Issue]
64
76
  def create_issue_with_issue issue
65
- JIRA::Issue.new_with_xml call( 'createIssue', issue ).first
77
+ JIRA::Issue.new_with_xml jira_call( 'createIssue', issue )
66
78
  end
67
79
 
68
80
  # @param [String] issue_key
69
81
  # @return [JIRA::Issue]
70
- def get_issue_with_key issue_key
71
- JIRA::Issue.new_with_xml call( 'getIssue', issue_key ).first
82
+ def issue_with_key issue_key
83
+ JIRA::Issue.new_with_xml jira_call( 'getIssue', issue_key )
72
84
  end
85
+ alias_method :get_issue_with_key, :issue_with_key
73
86
 
74
87
  # @param [String] issue_id
75
88
  # @return [JIRA::Issue]
76
- def get_issue_with_id issue_id
77
- JIRA::Issue.new_with_xml call( 'getIssueById', issue_id ).first
89
+ def issue_with_id issue_id
90
+ JIRA::Issue.new_with_xml jira_call( 'getIssueById', issue_id )
78
91
  end
92
+ alias_method :get_issue_with_id, :issue_with_id
79
93
 
80
94
  # @param [String] id
81
95
  # @param [Fixnum] max_results
82
96
  # @param [Fixnum] offset
83
97
  # @return [Array<JIRA::Issue>]
84
- def get_issues_from_filter_with_id id, max_results = 500, offset = 0
85
- jira_call JIRA::Issue, 'getIssuesFromFilterWithLimit', id, offset, max_results
98
+ def issues_from_filter_with_id id, max_results = 500, offset = 0
99
+ array_jira_call JIRA::Issue, 'getIssuesFromFilterWithLimit', id, offset, max_results
86
100
  end
101
+ alias_method :get_issues_from_filter_with_id, :issues_from_filter_with_id
87
102
 
88
103
  # @param [String] issue_id
89
104
  # @return [Time]
90
- def get_resolution_date_for_issue_with_id issue_id
91
- call( 'getResolutionDateById', issue_id ).to_date
105
+ def resolution_date_for_issue_with_id issue_id
106
+ jira_call( 'getResolutionDateById', issue_id ).to_iso_date
92
107
  end
108
+ alias_method :get_resolution_date_for_issue_with_id, :resolution_date_for_issue_with_id
93
109
 
94
110
  # @param [String] issue_key
95
111
  # @return [Time]
96
- def get_resolution_date_for_issue_with_key issue_key
97
- call( 'getResolutionDateByKey', issue_key ).to_date
112
+ def resolution_date_for_issue_with_key issue_key
113
+ jira_call( 'getResolutionDateByKey', issue_key ).to_iso_date
98
114
  end
115
+ alias_method :get_resolution_date_for_issue_with_key, :resolution_date_for_issue_with_key
99
116
 
100
- # @endgroup
101
- end
102
117
  end