Class: MetaProject::Tracker::Jira::JiraTracker
- Inherits:
-
Object
- Object
- MetaProject::Tracker::Jira::JiraTracker
- Defined in:
- lib/meta_project/tracker/jira/jira_tracker.rb
Defined Under Namespace
Classes: Session
Constant Summary collapse
- JIRA_API =
"jira1"
Instance Method Summary collapse
- #identifier_examples ⇒ Object
- #identifier_regexp ⇒ Object
-
#initialize(rooturl = nil, identifier = nil, username = nil, password = nil) ⇒ JiraTracker
constructor
A new instance of JiraTracker.
- #issue(issue_identifier) ⇒ Object
- #markup(text) ⇒ Object
- #overview ⇒ Object
Constructor Details
#initialize(rooturl = nil, identifier = nil, username = nil, password = nil) ⇒ JiraTracker
Returns a new instance of JiraTracker.
9 10 11 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 9 def initialize(rooturl=nil, identifier=nil, username=nil, password=nil) @rooturl, @identifier, @username, @password = rooturl, identifier, username, password end |
Instance Method Details
#identifier_examples ⇒ Object
17 18 19 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 17 def identifier_examples ["DC-420", "PICO-12"] end |
#identifier_regexp ⇒ Object
13 14 15 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 13 def identifier_regexp /([A-Z]+-[\d]+)/ end |
#issue(issue_identifier) ⇒ Object
25 26 27 28 29 30 31 32 33 34 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 25 def issue(issue_identifier) session = login begin issue = session.getIssue(issue_identifier) Issue.new("#{@rooturl}/browse/#{issue_identifier}", issue["summary"]) rescue XMLRPC::FaultException # Probably bad issue number nil end end |
#markup(text) ⇒ Object
36 37 38 39 40 41 42 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 36 def markup(text) text.gsub(identifier_regexp) do |match| issue_identifier = $1 issue = issue(issue_identifier) issue ? "<a href=\"#{issue.uri}\">#{issue_identifier}: #{issue.summary}</a>" : issue_identifier end end |
#overview ⇒ Object
21 22 23 |
# File 'lib/meta_project/tracker/jira/jira_tracker.rb', line 21 def overview "#{@rooturl}/browse/#{@identifier}" end |